[PATCH 2/2] fwts-test: Add MSDM table regression test

Colin King colin.king at canonical.com
Wed Jul 1 15:02:03 UTC 2015


From: Colin Ian King <colin.king at canonical.com>

Signed-off-by: Colin Ian King <colin.king at canonical.com>
---
 Makefile.am                                        |  2 ++
 .../arg-show-tests-0001/arg-show-tests-0001.log    |  2 ++
 .../arg-show-tests-full-0001.log                   |  6 +++-
 fwts-test/msdm-0001/acpidump-0001.log              | 33 ++++++++++++++++++++++
 fwts-test/msdm-0001/acpidump-0002.log              | 33 ++++++++++++++++++++++
 fwts-test/msdm-0001/msdm-0002.log                  | 22 +++++++++++++++
 fwts-test/msdm-0001/test-0001.sh                   | 17 +++++++++++
 fwts-test/msdm-0001/test-0002.sh                   | 17 +++++++++++
 8 files changed, 131 insertions(+), 1 deletion(-)
 create mode 100644 fwts-test/msdm-0001/acpidump-0001.log
 create mode 100644 fwts-test/msdm-0001/acpidump-0002.log
 create mode 100644 fwts-test/msdm-0001/msdm-0002.log
 create mode 100755 fwts-test/msdm-0001/test-0001.sh
 create mode 100755 fwts-test/msdm-0001/test-0002.sh

diff --git a/Makefile.am b/Makefile.am
index 3ae4257..9ce4540 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -87,6 +87,8 @@ TESTS = fwts-test/acpidump-0001/test-0001.sh \
 	fwts-test/slit-0001/test-0002.sh \
 	fwts-test/madt-0001/test-0001.sh \
 	fwts-test/madt-0001/test-0002.sh \
+	fwts-test/msdm-0001/test-0001.sh \
+	fwts-test/msdm-0001/test-0002.sh \
 	fwts-test/method-0001/test-0001.sh \
 	fwts-test/oops-0001/test-0001.sh \
 	fwts-test/oops-0001/test-0002.sh \
diff --git a/fwts-test/arg-show-tests-0001/arg-show-tests-0001.log b/fwts-test/arg-show-tests-0001/arg-show-tests-0001.log
index 97b8954..5ed488f 100644
--- a/fwts-test/arg-show-tests-0001/arg-show-tests-0001.log
+++ b/fwts-test/arg-show-tests-0001/arg-show-tests-0001.log
@@ -23,6 +23,7 @@ ACPI tests:
  madt            MADT Multiple APIC Description Table test.
  mcfg            MCFG PCI Express* memory mapped config space test.
  method          ACPI DSDT Method Semantic tests.
+ msdm            MSDM Microsoft Data Management Table test.
  pcc             Processor Clocking Control (PCC) test.
  rsdp            RSDP Root System Description Pointer test.
  rsdt            RSDT Root System Description Table test.
@@ -79,6 +80,7 @@ Batch tests:
  method          ACPI DSDT Method Semantic tests.
  microcode       Test if system is using latest microcode.
  mpcheck         MultiProcessor Tables tests.
+ msdm            MSDM Microsoft Data Management Table test.
  msr             MSR register tests.
  mtrr            MTRR tests.
  nx              Test if CPU NX is disabled by the BIOS.
diff --git a/fwts-test/arg-show-tests-full-0001/arg-show-tests-full-0001.log b/fwts-test/arg-show-tests-full-0001/arg-show-tests-full-0001.log
index ced52e0..d93b217 100644
--- a/fwts-test/arg-show-tests-full-0001/arg-show-tests-full-0001.log
+++ b/fwts-test/arg-show-tests-full-0001/arg-show-tests-full-0001.log
@@ -234,6 +234,8 @@ ACPI tests:
   Test _CBA (Configuration Base Address).
   Test _IFT (IPMI Interface Type).
   Test _SRV (IPMI Interface Revision).
+ msdm            (1 test):
+  MSDM Microsoft Data Management Table test.
  pcc             (1 test):
   Processor Clocking Control (PCC) test.
  rsdp            (1 test):
@@ -549,6 +551,8 @@ Batch tests:
   Test MP System Address entries.
   Test MP Bus Hierarchy entries.
   Test MP Compatible Bus Address Space entries.
+ msdm            (1 test):
+  MSDM Microsoft Data Management Table test.
  msr             (5 tests):
   Test CPU generic MSRs.
   Test CPU specific model MSRs.
@@ -806,4 +810,4 @@ UEFI tests:
   Test UEFI RT service query variable info interface stress test.
   Test UEFI RT service get variable interface, invalid parameters.
 
-Total of 657 tests
+Total of 659 tests
diff --git a/fwts-test/msdm-0001/acpidump-0001.log b/fwts-test/msdm-0001/acpidump-0001.log
new file mode 100644
index 0000000..ce4cd09
--- /dev/null
+++ b/fwts-test/msdm-0001/acpidump-0001.log
@@ -0,0 +1,33 @@
+FACS @ 0x00000000
+  0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00  FACS at ...........
+  0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0020: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+
+FACP @ 0x00000000
+  0000: 46 41 43 50 f4 00 00 00 03 f9 41 4d 44 20 20 20  FACP......AMD   
+  0010: 47 55 41 4d 20 20 20 20 00 00 04 06 41 4d 44 20  GUAM    ....AMD 
+  0020: 40 42 0f 00 c0 2f e9 af 92 47 e8 af 00 02 09 00  @B.../...G......
+  0030: b0 00 00 00 f0 f1 00 00 00 80 00 00 00 00 00 00  ................
+  0040: 04 80 00 00 00 00 00 00 00 82 00 00 08 80 00 00  ................
+  0050: 20 80 00 00 00 00 00 00 04 02 01 04 08 00 00 00   ...............
+  0060: 65 00 e9 03 00 00 00 00 01 00 0d 00 32 00 00 00  e...........2...
+  0070: a5 c1 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0080: 00 00 00 00 c0 2f e9 af 00 00 00 00 92 47 e8 af  ...../.......G..
+  0090: 00 00 00 00 01 20 00 00 00 80 00 00 00 00 00 00  ..... ..........
+  00a0: 00 00 00 00 00 00 00 00 00 00 00 00 01 10 00 00  ................
+  00b0: 04 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  00c0: 00 00 00 00 01 08 00 00 00 82 00 00 00 00 00 00  ................
+  00d0: 01 20 00 00 08 80 00 00 00 00 00 00 01 40 00 00  . ........... at ..
+  00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ...............
+  00f0: 00 00 00 00                                      ....
+
+MSDM @ 0x00000000
+  0000: 4d 53 44 4d 55 00 00 00 03 e8 41 43 52 53 59 53  MSDMU.....ACRSYS
+  0010: 41 43 52 50 52 44 43 54 01 00 00 00 31 30 32 35  ACRPRDCT....1025
+  0020: 00 00 04 00 01 00 00 00 00 00 00 00 01 00 00 00  ................
+  0030: 00 00 00 00 1d 00 00 00 41 48 33 4e 52 2d 42 38  ........AH3NR-B8
+  0040: 46 44 4e 2d 43 31 57 54 47 2d 35 43 52 39 58 2d  FDN-C1WTF-5CR9X-
+  0050: 31 41 4b 4d 48                                   1AKMH
+
diff --git a/fwts-test/msdm-0001/acpidump-0002.log b/fwts-test/msdm-0001/acpidump-0002.log
new file mode 100644
index 0000000..99dc2b0
--- /dev/null
+++ b/fwts-test/msdm-0001/acpidump-0002.log
@@ -0,0 +1,33 @@
+FACS @ 0x00000000
+  0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00  FACS at ...........
+  0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0020: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+
+FACP @ 0x00000000
+  0000: 46 41 43 50 f4 00 00 00 03 f9 41 4d 44 20 20 20  FACP......AMD   
+  0010: 47 55 41 4d 20 20 20 20 00 00 04 06 41 4d 44 20  GUAM    ....AMD 
+  0020: 40 42 0f 00 c0 2f e9 af 92 47 e8 af 00 02 09 00  @B.../...G......
+  0030: b0 00 00 00 f0 f1 00 00 00 80 00 00 00 00 00 00  ................
+  0040: 04 80 00 00 00 00 00 00 00 82 00 00 08 80 00 00  ................
+  0050: 20 80 00 00 00 00 00 00 04 02 01 04 08 00 00 00   ...............
+  0060: 65 00 e9 03 00 00 00 00 01 00 0d 00 32 00 00 00  e...........2...
+  0070: a5 c1 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  0080: 00 00 00 00 c0 2f e9 af 00 00 00 00 92 47 e8 af  ...../.......G..
+  0090: 00 00 00 00 01 20 00 00 00 80 00 00 00 00 00 00  ..... ..........
+  00a0: 00 00 00 00 00 00 00 00 00 00 00 00 01 10 00 00  ................
+  00b0: 04 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
+  00c0: 00 00 00 00 01 08 00 00 00 82 00 00 00 00 00 00  ................
+  00d0: 01 20 00 00 08 80 00 00 00 00 00 00 01 40 00 00  . ........... at ..
+  00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ...............
+  00f0: 00 00 00 00                                      ....
+
+MSDM @ 0x00000000
+  0000: 4d 53 44 4d 55 00 00 00 03 e8 41 43 52 53 59 53  MSDMU.....ACRSYS
+  0010: 41 43 52 50 52 44 43 54 01 00 00 00 31 30 32 35  ACRPRDCT....1025
+  0020: 00 00 04 00 01 00 00 00 ff ff ff ff 01 00 00 00  ................
+  0030: 20 00 00 00 1d 00 00 00 41 48 33 4e 52 2a 42 38  ........AH3NR*B8
+  0040: 46 44 4e 2d 43 31 57 54 47 2d 35 43 52 39 58 2d  FDN-C1WTF-5CR9X-
+  0050: 31 41 4b 4d 48                                   1AKMH
+
diff --git a/fwts-test/msdm-0001/msdm-0002.log b/fwts-test/msdm-0001/msdm-0002.log
new file mode 100644
index 0000000..2f4953e
--- /dev/null
+++ b/fwts-test/msdm-0001/msdm-0002.log
@@ -0,0 +1,22 @@
+msdm            msdm: MSDM Microsoft Data Management Table test.
+msdm            ----------------------------------------------------------
+msdm            Test 1 of 1: MSDM Microsoft Data Management Table test.
+msdm              Reserved:                 0xffffffff
+msdm              Data Type:                0x00000001
+msdm              Data Reserved:            0x00000020
+msdm              Data Length:              0x0000001d
+msdm            FAILED [HIGH] MSDMReservedNonZero: Test 1, MSDM Reserved
+msdm            field should be zero, got 0xffffffff instead
+msdm            FAILED [HIGH] MSDMDataReservedNonZero: Test 1, MSDM Data
+msdm            Reserved field should be zero, got 0x00000020 instead
+msdm              Data:                     'AH3NR*B8FDN-C1WTG-5CR9X-1AKMH'
+msdm            FAILED [HIGH] MSDMDataLengthInvalid: Test 1, MSDM Data
+msdm            field did not contain digits, uppercase letters and -
+msdm            characters in the form XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
+msdm            MSDM has had minimal check due to proprietary nature of
+msdm            the table
+msdm            
+msdm            ==========================================================
+msdm            0 passed, 3 failed, 0 warning, 0 aborted, 0 skipped, 0
+msdm            info only.
+msdm            ==========================================================
diff --git a/fwts-test/msdm-0001/test-0001.sh b/fwts-test/msdm-0001/test-0001.sh
new file mode 100755
index 0000000..3d34f02
--- /dev/null
+++ b/fwts-test/msdm-0001/test-0001.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+#
+TEST="Test table against MSDM"
+NAME=test-0001.sh
+TMPLOG=$TMP/msdm.log.$$
+
+$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/msdm-0001/acpidump-0001.log msdm - | cut -c7- | grep "^msdm" > $TMPLOG
+diff $TMPLOG $FWTSTESTDIR/msdm-0001/msdm-0001.log >> $FAILURE_LOG
+ret=$?
+if [ $ret -eq 0 ]; then
+	echo PASSED: $TEST, $NAME
+else
+	echo FAILED: $TEST, $NAME
+fi
+
+rm $TMPLOG
+exit $ret
diff --git a/fwts-test/msdm-0001/test-0002.sh b/fwts-test/msdm-0001/test-0002.sh
new file mode 100755
index 0000000..042bddb
--- /dev/null
+++ b/fwts-test/msdm-0001/test-0002.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+#
+TEST="Test table against invalid MSDM"
+NAME=test-0001.sh
+TMPLOG=$TMP/msdm.log.$$
+
+$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/msdm-0001/acpidump-0002.log msdm - | cut -c7- | grep "^msdm" > $TMPLOG
+diff $TMPLOG $FWTSTESTDIR/msdm-0001/msdm-0002.log >> $FAILURE_LOG
+ret=$?
+if [ $ret -eq 0 ]; then
+	echo PASSED: $TEST, $NAME
+else
+	echo FAILED: $TEST, $NAME
+fi
+
+rm $TMPLOG
+exit $ret
-- 
2.1.4




More information about the fwts-devel mailing list