Message ID | 1435137503-15968-3-git-send-email-colin.king@canonical.com |
---|---|
State | Accepted |
Headers | show |
On 2015年06月24日 17:18, Colin King wrote: > From: Colin Ian King <colin.king@canonical.com> > > Add ERST test and update arg-show-test* tests to accommodate this > new test too. > > [V2] Add in 2nd ERST test that got overlooked > > Signed-off-by: Colin Ian King <colin.king@canonical.com> > --- > Makefile.am | 2 + > .../arg-show-tests-0001/arg-show-tests-0001.log | 2 + > .../arg-show-tests-full-0001.log | 6 ++- > fwts-test/erst-0001/acpidump-0001.log | 62 ++++++++++++++++++++++ > fwts-test/erst-0001/acpidump-0002.log | 62 ++++++++++++++++++++++ > fwts-test/erst-0001/acpidump-0003.log | 62 ++++++++++++++++++++++ > fwts-test/erst-0001/erst-0001.log | 30 +++++++++++ > fwts-test/erst-0001/erst-0002.log | 38 +++++++++++++ > fwts-test/erst-0001/erst-0003.log | 15 ++++++ > fwts-test/erst-0001/test-0001.sh | 17 ++++++ > fwts-test/erst-0001/test-0002.sh | 17 ++++++ > fwts-test/erst-0001/test-0003.sh | 17 ++++++ > 12 files changed, 329 insertions(+), 1 deletion(-) > create mode 100644 fwts-test/erst-0001/acpidump-0001.log > create mode 100644 fwts-test/erst-0001/acpidump-0002.log > create mode 100644 fwts-test/erst-0001/acpidump-0003.log > create mode 100644 fwts-test/erst-0001/erst-0001.log > create mode 100644 fwts-test/erst-0001/erst-0002.log > create mode 100644 fwts-test/erst-0001/erst-0003.log > create mode 100644 fwts-test/erst-0001/test-0001.sh > create mode 100644 fwts-test/erst-0001/test-0002.sh > create mode 100644 fwts-test/erst-0001/test-0003.sh > > diff --git a/Makefile.am b/Makefile.am > index c69e4de..28a9280 100644 > --- a/Makefile.am > +++ b/Makefile.am > @@ -61,6 +61,8 @@ TESTS = fwts-test/acpidump-0001/test-0001.sh \ > fwts-test/dbgp-0001/test-0001.sh \ > fwts-test/dbgp-0001/test-0002.sh \ > fwts-test/disassemble-0001/test-0001.sh \ > + fwts-test/erst-0001/test-0001.sh \ > + fwts-test/erst-0001/test-0002.sh \ > fwts-test/hest-0001/test-0001.sh \ > fwts-test/hest-0001/test-0002.sh \ > fwts-test/klog-0001/test-0001.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 bf27d3e..2625757 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 > @@ -10,6 +10,7 @@ ACPI tests: > dbgp DBGP (Debug Port) Table test. > dmar DMA Remapping (VT-d) test. > ecdt Embedded Controller Boot Resources Table test. > + erst ERST Error Record Serialization Table test. > fadt FADT Fixed ACPI Description Table tests. > gtdt GTDT Generic Timer Description Table test. > hest HEST Hardware Error Source Table test. > @@ -50,6 +51,7 @@ Batch tests: > dmicheck DMI/SMBIOS table tests. > ebda Test EBDA region is mapped and reserved in memory map table. > ecdt Embedded Controller Boot Resources Table test. > + erst ERST Error Record Serialization Table test. > fadt FADT Fixed ACPI Description Table tests. > fan Simple fan tests. > gtdt GTDT Generic Timer Description Table test. > 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 9c33630..b6d73b0 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 > @@ -23,6 +23,8 @@ ACPI tests: > DMA Remapping test. > ecdt (1 test): > ECDT Embedded Controller Boot Resources Table test. > + erst (1 test): > + ERST Error Record Serialization Table test. > fadt (3 tests): > Test FADT ACPI Description Table tests. > Test FADT SCI_EN bit is enabled. > @@ -297,6 +299,8 @@ Batch tests: > Test EBDA is reserved in E820 table. > ecdt (1 test): > ECDT Embedded Controller Boot Resources Table test. > + erst (1 test): > + ERST Error Record Serialization Table test. > fadt (3 tests): > Test FADT ACPI Description Table tests. > Test FADT SCI_EN bit is enabled. > @@ -770,4 +774,4 @@ UEFI tests: > Test UEFI RT service query variable info interface stress test. > Test UEFI RT service get variable interface, invalid parameters. > > -Total of 639 tests > +Total of 641 tests > diff --git a/fwts-test/erst-0001/acpidump-0001.log b/fwts-test/erst-0001/acpidump-0001.log > new file mode 100644 > index 0000000..87bbfe1 > --- /dev/null > +++ b/fwts-test/erst-0001/acpidump-0001.log > @@ -0,0 +1,62 @@ > +FACS @ 0x00000000 > + 0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00 FACS@........... > + 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 . ...........@.. > + 00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... > + 00f0: 00 00 00 00 .... > + > +ERST @ 0x00000000 > + 0000: 45 52 53 54 30 02 00 00 01 f2 49 4e 54 45 4c 20 ERST0.....INTEL > + 0010: 53 35 35 32 30 55 52 20 01 00 00 00 49 4e 54 4c S5520UR ....INTL > + 0020: 01 00 00 00 30 00 00 00 00 00 00 00 10 00 00 00 ....0........... > + 0030: 00 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0040: 02 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0050: 01 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0060: 01 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0070: 02 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0080: 03 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0090: 03 04 01 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 00a0: 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 00b0: 04 02 00 00 00 40 00 04 30 30 62 bf 00 00 00 00 .....@..00b..... > + 00c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 00d0: 05 03 00 00 01 08 00 01 b2 00 00 00 00 00 00 00 ................ > + 00e0: 9c 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 00f0: 06 01 00 00 00 40 00 04 40 30 62 bf 00 00 00 00 .....@..@0b..... > + 0100: 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ................ > + 0110: 07 00 00 00 00 40 00 04 38 30 62 bf 00 00 00 00 .....@..80b..... > + 0120: 00 00 00 00 00 00 00 00 fe 01 00 00 00 00 00 00 ................ > + 0130: 08 00 00 00 00 40 00 04 70 30 62 bf 00 00 00 00 .....@..p0b..... > + 0140: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0150: 09 02 00 00 00 40 00 04 20 30 62 bf 00 00 00 00 .....@.. 0b..... > + 0160: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0170: 0a 00 00 00 00 40 00 04 48 30 62 bf 00 00 00 00 .....@..H0b..... > + 0180: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 0190: 0b 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 01a0: 0f 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 01b0: 0c 00 00 00 00 40 00 04 28 30 62 bf 00 00 00 00 .....@..(0b..... > + 01c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 01d0: 0d 00 00 00 00 40 00 04 50 30 62 bf 00 00 00 00 .....@..P0b..... > + 01e0: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 01f0: 0e 00 00 00 00 40 00 04 58 30 62 bf 00 00 00 00 .....@..X0b..... > + 0200: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0210: 0f 00 00 00 00 40 00 04 60 30 62 bf 00 00 00 00 .....@..`0b..... > + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff > diff --git a/fwts-test/erst-0001/acpidump-0002.log b/fwts-test/erst-0001/acpidump-0002.log > new file mode 100644 > index 0000000..c6a4059 > --- /dev/null > +++ b/fwts-test/erst-0001/acpidump-0002.log > @@ -0,0 +1,62 @@ > +FACS @ 0x00000000 > + 0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00 FACS@........... > + 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 . ...........@.. > + 00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... > + 00f0: 00 00 00 00 .... > + > +ERST @ 0x00000000 > + 0000: 45 52 53 54 30 02 00 00 01 f2 49 4e 54 45 4c 20 ERST0.....INTEL > + 0010: 53 35 35 32 30 55 52 20 01 00 00 00 49 4e 54 4c S5520UR ....INTL > + 0020: 01 00 00 00 30 00 00 00 f0 00 00 00 10 00 00 00 ....0........... > + 0030: 00 03 ff 00 00 40 00 05 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0040: 02 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0050: 01 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0060: 01 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0070: 02 13 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0080: 03 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0090: 03 04 01 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 00a0: 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 00b0: 04 02 00 00 00 40 00 04 30 30 62 bf 00 00 00 00 .....@..00b..... > + 00c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 00d0: 05 03 00 00 01 08 00 01 b2 00 00 00 00 00 00 00 ................ > + 00e0: 9c 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 00f0: 06 01 00 00 00 40 00 04 40 30 62 bf 00 00 00 00 .....@..@0b..... > + 0100: 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ................ > + 0110: 07 00 00 00 00 40 00 04 38 30 62 bf 00 00 00 00 .....@..80b..... > + 0120: 00 00 00 00 00 00 00 00 fe 01 00 00 00 00 00 00 ................ > + 0130: 08 00 00 00 00 40 00 04 70 30 62 bf 00 00 00 00 .....@..p0b..... > + 0140: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0150: 09 02 00 00 00 40 00 04 20 30 62 bf 00 00 00 00 .....@.. 0b..... > + 0160: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0170: 0a 00 00 00 00 40 00 04 48 30 62 bf 00 00 00 00 .....@..H0b..... > + 0180: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 0190: 0b 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 01a0: 0f 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 01b0: 0c 00 00 00 00 40 00 04 28 30 62 bf 00 00 00 00 .....@..(0b..... > + 01c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 01d0: 0d 00 00 00 00 40 00 04 50 30 62 bf 00 00 00 00 .....@..P0b..... > + 01e0: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 01f0: 0e 00 00 00 00 40 00 04 58 30 62 bf 00 00 00 00 .....@..X0b..... > + 0200: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0210: 0f 00 00 00 00 40 00 04 60 30 62 bf 00 00 00 00 .....@..`0b..... > + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff > diff --git a/fwts-test/erst-0001/acpidump-0003.log b/fwts-test/erst-0001/acpidump-0003.log > new file mode 100644 > index 0000000..25abb64 > --- /dev/null > +++ b/fwts-test/erst-0001/acpidump-0003.log > @@ -0,0 +1,62 @@ > +FACS @ 0x00000000 > + 0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00 FACS@........... > + 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 . ...........@.. > + 00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... > + 00f0: 00 00 00 00 .... > + > +ERST @ 0x00000000 > + 0000: 45 52 53 54 30 02 00 00 01 f2 49 4e 54 45 4c 20 ERST0.....INTEL > + 0010: 53 35 35 32 30 55 52 20 01 00 00 00 49 4e 54 4c S5520UR ....INTL > + 0020: 01 00 00 00 30 00 00 00 00 00 00 00 11 00 00 00 ....0........... > + 0030: 00 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0040: 02 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0050: 01 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0060: 01 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0070: 02 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0080: 03 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0090: 03 04 01 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 00a0: 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 00b0: 04 02 00 00 00 40 00 04 30 30 62 bf 00 00 00 00 .....@..00b..... > + 00c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 00d0: 05 03 00 00 01 08 00 01 b2 00 00 00 00 00 00 00 ................ > + 00e0: 9c 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 00f0: 06 01 00 00 00 40 00 04 40 30 62 bf 00 00 00 00 .....@..@0b..... > + 0100: 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ................ > + 0110: 07 00 00 00 00 40 00 04 38 30 62 bf 00 00 00 00 .....@..80b..... > + 0120: 00 00 00 00 00 00 00 00 fe 01 00 00 00 00 00 00 ................ > + 0130: 08 00 00 00 00 40 00 04 70 30 62 bf 00 00 00 00 .....@..p0b..... > + 0140: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0150: 09 02 00 00 00 40 00 04 20 30 62 bf 00 00 00 00 .....@.. 0b..... > + 0160: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0170: 0a 00 00 00 00 40 00 04 48 30 62 bf 00 00 00 00 .....@..H0b..... > + 0180: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 0190: 0b 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 01a0: 0f 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 01b0: 0c 00 00 00 00 40 00 04 28 30 62 bf 00 00 00 00 .....@..(0b..... > + 01c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 01d0: 0d 00 00 00 00 40 00 04 50 30 62 bf 00 00 00 00 .....@..P0b..... > + 01e0: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 01f0: 0e 00 00 00 00 40 00 04 58 30 62 bf 00 00 00 00 .....@..X0b..... > + 0200: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0210: 0f 00 00 00 00 40 00 04 60 30 62 bf 00 00 00 00 .....@..`0b..... > + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff > diff --git a/fwts-test/erst-0001/erst-0001.log b/fwts-test/erst-0001/erst-0001.log > new file mode 100644 > index 0000000..326146c > --- /dev/null > +++ b/fwts-test/erst-0001/erst-0001.log > @@ -0,0 +1,30 @@ > +erst erst: ERST Error Record Serialization Table test. > +erst ---------------------------------------------------------- > +erst Test 1 of 1: ERST Error Record Serialization Table test. > +erst ERST Error Record Serialization Table : > +erst Serialization Hdr. Size: 0x00000030 > +erst Reserved: 0x00000000 > +erst Instruction Entry Count: 0x00000010 > +erst ERST header looks sane. > +erst ERST Serialization Entry 0x0 looks sane. > +erst ERST Serialization Entry 0x1 looks sane. > +erst ERST Serialization Entry 0x2 looks sane. > +erst ERST Serialization Entry 0x3 looks sane. > +erst ERST Serialization Entry 0x4 looks sane. > +erst ERST Serialization Entry 0x5 looks sane. > +erst ERST Serialization Entry 0x6 looks sane. > +erst ERST Serialization Entry 0x7 looks sane. > +erst ERST Serialization Entry 0x8 looks sane. > +erst ERST Serialization Entry 0x9 looks sane. > +erst ERST Serialization Entry 0xa looks sane. > +erst ERST Serialization Entry 0xb looks sane. > +erst ERST Serialization Entry 0xc looks sane. > +erst ERST Serialization Entry 0xd looks sane. > +erst ERST Serialization Entry 0xe looks sane. > +erst ERST Serialization Entry 0xf looks sane. > +erst PASSED: Test 1, No issues found in ERST table. > +erst > +erst ========================================================== > +erst 1 passed, 0 failed, 0 warning, 0 aborted, 0 skipped, 0 > +erst info only. > +erst ========================================================== > diff --git a/fwts-test/erst-0001/erst-0002.log b/fwts-test/erst-0001/erst-0002.log > new file mode 100644 > index 0000000..d764042 > --- /dev/null > +++ b/fwts-test/erst-0001/erst-0002.log > @@ -0,0 +1,38 @@ > +erst erst: ERST Error Record Serialization Table test. > +erst ---------------------------------------------------------- > +erst Test 1 of 1: ERST Error Record Serialization Table test. > +erst ERST Error Record Serialization Table : > +erst Serialization Hdr. Size: 0x00000030 > +erst Reserved: 0x000000f0 > +erst Instruction Entry Count: 0x00000010 > +erst FAILED [LOW] ERSTReservedNonZero: Test 1, ERST Reserved > +erst field must be non-zero, got 0xf0 instead > +erst FAILED [HIGH] ERSTIInvalidFlag: Test 1, ERST Serialization > +erst Flag 0xff is an invalid value, values allowed are > +erst 0x00..0x01 for the WRITE_REGISTER and WRITE_REGISTER_VALUE > +erst instructions > +erst FAILED [HIGH] ERSTIInvalidGasAccessSize: Test 1, ERST > +erst Serialization Generic Address Access Size 0x5 is invalid, > +erst should be 0x00 .. 0x04 > +erst ERST Serialization Entry 0x1 looks sane. > +erst FAILED [HIGH] ERSTIInvalidInstruction: Test 1, ERST > +erst Serialization Instruction 0x13 is an invalid value, values > +erst allowed are 0x00..0x12 > +erst ERST Serialization Entry 0x3 looks sane. > +erst ERST Serialization Entry 0x4 looks sane. > +erst ERST Serialization Entry 0x5 looks sane. > +erst ERST Serialization Entry 0x6 looks sane. > +erst ERST Serialization Entry 0x7 looks sane. > +erst ERST Serialization Entry 0x8 looks sane. > +erst ERST Serialization Entry 0x9 looks sane. > +erst ERST Serialization Entry 0xa looks sane. > +erst ERST Serialization Entry 0xb looks sane. > +erst ERST Serialization Entry 0xc looks sane. > +erst ERST Serialization Entry 0xd looks sane. > +erst ERST Serialization Entry 0xe looks sane. > +erst ERST Serialization Entry 0xf looks sane. > +erst > +erst ========================================================== > +erst 0 passed, 4 failed, 0 warning, 0 aborted, 0 skipped, 0 > +erst info only. > +erst ========================================================== > diff --git a/fwts-test/erst-0001/erst-0003.log b/fwts-test/erst-0001/erst-0003.log > new file mode 100644 > index 0000000..5e57b64 > --- /dev/null > +++ b/fwts-test/erst-0001/erst-0003.log > @@ -0,0 +1,15 @@ > +erst erst: ERST Error Record Serialization Table test. > +erst ---------------------------------------------------------- > +erst Test 1 of 1: ERST Error Record Serialization Table test. > +erst ERST Error Record Serialization Table : > +erst Serialization Hdr. Size: 0x00000030 > +erst Reserved: 0x00000000 > +erst Instruction Entry Count: 0x00000011 > +erst FAILED [HIGH] ERSTTooManyEntries: Test 1, ERST size of 592 > +erst based on 17 Serialization Instruction Entries of 32 bytes > +erst is longer the entire table length of 576 > +erst > +erst ========================================================== > +erst 0 passed, 1 failed, 0 warning, 0 aborted, 0 skipped, 0 > +erst info only. > +erst ========================================================== > diff --git a/fwts-test/erst-0001/test-0001.sh b/fwts-test/erst-0001/test-0001.sh > new file mode 100644 > index 0000000..5bbce6d > --- /dev/null > +++ b/fwts-test/erst-0001/test-0001.sh > @@ -0,0 +1,17 @@ > +#!/bin/bash > +# > +TEST="Test table against ERST" > +NAME=test-0001.sh > +TMPLOG=$TMP/erst.log.$$ > + > +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/erst-0001/acpidump-0001.log erst - | cut -c7- | grep "^erst" > $TMPLOG > +diff $TMPLOG $FWTSTESTDIR/erst-0001/erst-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/erst-0001/test-0002.sh b/fwts-test/erst-0001/test-0002.sh > new file mode 100644 > index 0000000..71d5db1 > --- /dev/null > +++ b/fwts-test/erst-0001/test-0002.sh > @@ -0,0 +1,17 @@ > +#!/bin/bash > +# > +TEST="Test table against invalid ERST" > +NAME=test-0002.sh > +TMPLOG=$TMP/erst.log.$$ > + > +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/erst-0001/acpidump-0002.log erst - | cut -c7- | grep "^erst" > $TMPLOG > +diff $TMPLOG $FWTSTESTDIR/erst-0001/erst-0002.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/erst-0001/test-0003.sh b/fwts-test/erst-0001/test-0003.sh > new file mode 100644 > index 0000000..5cb1982 > --- /dev/null > +++ b/fwts-test/erst-0001/test-0003.sh > @@ -0,0 +1,17 @@ > +#!/bin/bash > +# > +TEST="Test table against invalid ERST" > +NAME=test-0003.sh > +TMPLOG=$TMP/erst.log.$$ > + > +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/erst-0001/acpidump-0003.log erst - | cut -c7- | grep "^erst" > $TMPLOG > +diff $TMPLOG $FWTSTESTDIR/erst-0001/erst-0003.log >> $FAILURE_LOG > +ret=$? > +if [ $ret -eq 0 ]; then > + echo PASSED: $TEST, $NAME > +else > + echo FAILED: $TEST, $NAME > +fi > + > +rm $TMPLOG > +exit $ret Acked-by: Ivan Hu<ivan.hu@canonical.com>
On 06/24/2015 05:18 PM, Colin King wrote: > From: Colin Ian King <colin.king@canonical.com> > > Add ERST test and update arg-show-test* tests to accommodate this > new test too. > > [V2] Add in 2nd ERST test that got overlooked > > Signed-off-by: Colin Ian King <colin.king@canonical.com> > --- > Makefile.am | 2 + > .../arg-show-tests-0001/arg-show-tests-0001.log | 2 + > .../arg-show-tests-full-0001.log | 6 ++- > fwts-test/erst-0001/acpidump-0001.log | 62 ++++++++++++++++++++++ > fwts-test/erst-0001/acpidump-0002.log | 62 ++++++++++++++++++++++ > fwts-test/erst-0001/acpidump-0003.log | 62 ++++++++++++++++++++++ > fwts-test/erst-0001/erst-0001.log | 30 +++++++++++ > fwts-test/erst-0001/erst-0002.log | 38 +++++++++++++ > fwts-test/erst-0001/erst-0003.log | 15 ++++++ > fwts-test/erst-0001/test-0001.sh | 17 ++++++ > fwts-test/erst-0001/test-0002.sh | 17 ++++++ > fwts-test/erst-0001/test-0003.sh | 17 ++++++ > 12 files changed, 329 insertions(+), 1 deletion(-) > create mode 100644 fwts-test/erst-0001/acpidump-0001.log > create mode 100644 fwts-test/erst-0001/acpidump-0002.log > create mode 100644 fwts-test/erst-0001/acpidump-0003.log > create mode 100644 fwts-test/erst-0001/erst-0001.log > create mode 100644 fwts-test/erst-0001/erst-0002.log > create mode 100644 fwts-test/erst-0001/erst-0003.log > create mode 100644 fwts-test/erst-0001/test-0001.sh > create mode 100644 fwts-test/erst-0001/test-0002.sh > create mode 100644 fwts-test/erst-0001/test-0003.sh > > diff --git a/Makefile.am b/Makefile.am > index c69e4de..28a9280 100644 > --- a/Makefile.am > +++ b/Makefile.am > @@ -61,6 +61,8 @@ TESTS = fwts-test/acpidump-0001/test-0001.sh \ > fwts-test/dbgp-0001/test-0001.sh \ > fwts-test/dbgp-0001/test-0002.sh \ > fwts-test/disassemble-0001/test-0001.sh \ > + fwts-test/erst-0001/test-0001.sh \ > + fwts-test/erst-0001/test-0002.sh \ > fwts-test/hest-0001/test-0001.sh \ > fwts-test/hest-0001/test-0002.sh \ > fwts-test/klog-0001/test-0001.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 bf27d3e..2625757 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 > @@ -10,6 +10,7 @@ ACPI tests: > dbgp DBGP (Debug Port) Table test. > dmar DMA Remapping (VT-d) test. > ecdt Embedded Controller Boot Resources Table test. > + erst ERST Error Record Serialization Table test. > fadt FADT Fixed ACPI Description Table tests. > gtdt GTDT Generic Timer Description Table test. > hest HEST Hardware Error Source Table test. > @@ -50,6 +51,7 @@ Batch tests: > dmicheck DMI/SMBIOS table tests. > ebda Test EBDA region is mapped and reserved in memory map table. > ecdt Embedded Controller Boot Resources Table test. > + erst ERST Error Record Serialization Table test. > fadt FADT Fixed ACPI Description Table tests. > fan Simple fan tests. > gtdt GTDT Generic Timer Description Table test. > 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 9c33630..b6d73b0 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 > @@ -23,6 +23,8 @@ ACPI tests: > DMA Remapping test. > ecdt (1 test): > ECDT Embedded Controller Boot Resources Table test. > + erst (1 test): > + ERST Error Record Serialization Table test. > fadt (3 tests): > Test FADT ACPI Description Table tests. > Test FADT SCI_EN bit is enabled. > @@ -297,6 +299,8 @@ Batch tests: > Test EBDA is reserved in E820 table. > ecdt (1 test): > ECDT Embedded Controller Boot Resources Table test. > + erst (1 test): > + ERST Error Record Serialization Table test. > fadt (3 tests): > Test FADT ACPI Description Table tests. > Test FADT SCI_EN bit is enabled. > @@ -770,4 +774,4 @@ UEFI tests: > Test UEFI RT service query variable info interface stress test. > Test UEFI RT service get variable interface, invalid parameters. > > -Total of 639 tests > +Total of 641 tests > diff --git a/fwts-test/erst-0001/acpidump-0001.log b/fwts-test/erst-0001/acpidump-0001.log > new file mode 100644 > index 0000000..87bbfe1 > --- /dev/null > +++ b/fwts-test/erst-0001/acpidump-0001.log > @@ -0,0 +1,62 @@ > +FACS @ 0x00000000 > + 0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00 FACS@........... > + 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 . ...........@.. > + 00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... > + 00f0: 00 00 00 00 .... > + > +ERST @ 0x00000000 > + 0000: 45 52 53 54 30 02 00 00 01 f2 49 4e 54 45 4c 20 ERST0.....INTEL > + 0010: 53 35 35 32 30 55 52 20 01 00 00 00 49 4e 54 4c S5520UR ....INTL > + 0020: 01 00 00 00 30 00 00 00 00 00 00 00 10 00 00 00 ....0........... > + 0030: 00 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0040: 02 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0050: 01 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0060: 01 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0070: 02 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0080: 03 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0090: 03 04 01 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 00a0: 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 00b0: 04 02 00 00 00 40 00 04 30 30 62 bf 00 00 00 00 .....@..00b..... > + 00c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 00d0: 05 03 00 00 01 08 00 01 b2 00 00 00 00 00 00 00 ................ > + 00e0: 9c 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 00f0: 06 01 00 00 00 40 00 04 40 30 62 bf 00 00 00 00 .....@..@0b..... > + 0100: 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ................ > + 0110: 07 00 00 00 00 40 00 04 38 30 62 bf 00 00 00 00 .....@..80b..... > + 0120: 00 00 00 00 00 00 00 00 fe 01 00 00 00 00 00 00 ................ > + 0130: 08 00 00 00 00 40 00 04 70 30 62 bf 00 00 00 00 .....@..p0b..... > + 0140: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0150: 09 02 00 00 00 40 00 04 20 30 62 bf 00 00 00 00 .....@.. 0b..... > + 0160: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0170: 0a 00 00 00 00 40 00 04 48 30 62 bf 00 00 00 00 .....@..H0b..... > + 0180: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 0190: 0b 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 01a0: 0f 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 01b0: 0c 00 00 00 00 40 00 04 28 30 62 bf 00 00 00 00 .....@..(0b..... > + 01c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 01d0: 0d 00 00 00 00 40 00 04 50 30 62 bf 00 00 00 00 .....@..P0b..... > + 01e0: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 01f0: 0e 00 00 00 00 40 00 04 58 30 62 bf 00 00 00 00 .....@..X0b..... > + 0200: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0210: 0f 00 00 00 00 40 00 04 60 30 62 bf 00 00 00 00 .....@..`0b..... > + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff > diff --git a/fwts-test/erst-0001/acpidump-0002.log b/fwts-test/erst-0001/acpidump-0002.log > new file mode 100644 > index 0000000..c6a4059 > --- /dev/null > +++ b/fwts-test/erst-0001/acpidump-0002.log > @@ -0,0 +1,62 @@ > +FACS @ 0x00000000 > + 0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00 FACS@........... > + 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 . ...........@.. > + 00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... > + 00f0: 00 00 00 00 .... > + > +ERST @ 0x00000000 > + 0000: 45 52 53 54 30 02 00 00 01 f2 49 4e 54 45 4c 20 ERST0.....INTEL > + 0010: 53 35 35 32 30 55 52 20 01 00 00 00 49 4e 54 4c S5520UR ....INTL > + 0020: 01 00 00 00 30 00 00 00 f0 00 00 00 10 00 00 00 ....0........... > + 0030: 00 03 ff 00 00 40 00 05 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0040: 02 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0050: 01 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0060: 01 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0070: 02 13 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0080: 03 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0090: 03 04 01 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 00a0: 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 00b0: 04 02 00 00 00 40 00 04 30 30 62 bf 00 00 00 00 .....@..00b..... > + 00c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 00d0: 05 03 00 00 01 08 00 01 b2 00 00 00 00 00 00 00 ................ > + 00e0: 9c 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 00f0: 06 01 00 00 00 40 00 04 40 30 62 bf 00 00 00 00 .....@..@0b..... > + 0100: 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ................ > + 0110: 07 00 00 00 00 40 00 04 38 30 62 bf 00 00 00 00 .....@..80b..... > + 0120: 00 00 00 00 00 00 00 00 fe 01 00 00 00 00 00 00 ................ > + 0130: 08 00 00 00 00 40 00 04 70 30 62 bf 00 00 00 00 .....@..p0b..... > + 0140: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0150: 09 02 00 00 00 40 00 04 20 30 62 bf 00 00 00 00 .....@.. 0b..... > + 0160: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0170: 0a 00 00 00 00 40 00 04 48 30 62 bf 00 00 00 00 .....@..H0b..... > + 0180: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 0190: 0b 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 01a0: 0f 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 01b0: 0c 00 00 00 00 40 00 04 28 30 62 bf 00 00 00 00 .....@..(0b..... > + 01c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 01d0: 0d 00 00 00 00 40 00 04 50 30 62 bf 00 00 00 00 .....@..P0b..... > + 01e0: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 01f0: 0e 00 00 00 00 40 00 04 58 30 62 bf 00 00 00 00 .....@..X0b..... > + 0200: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0210: 0f 00 00 00 00 40 00 04 60 30 62 bf 00 00 00 00 .....@..`0b..... > + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff > diff --git a/fwts-test/erst-0001/acpidump-0003.log b/fwts-test/erst-0001/acpidump-0003.log > new file mode 100644 > index 0000000..25abb64 > --- /dev/null > +++ b/fwts-test/erst-0001/acpidump-0003.log > @@ -0,0 +1,62 @@ > +FACS @ 0x00000000 > + 0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00 FACS@........... > + 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 . ...........@.. > + 00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... > + 00f0: 00 00 00 00 .... > + > +ERST @ 0x00000000 > + 0000: 45 52 53 54 30 02 00 00 01 f2 49 4e 54 45 4c 20 ERST0.....INTEL > + 0010: 53 35 35 32 30 55 52 20 01 00 00 00 49 4e 54 4c S5520UR ....INTL > + 0020: 01 00 00 00 30 00 00 00 00 00 00 00 11 00 00 00 ....0........... > + 0030: 00 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0040: 02 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0050: 01 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0060: 01 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0070: 02 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 0080: 03 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 0090: 03 04 01 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 00a0: 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 00b0: 04 02 00 00 00 40 00 04 30 30 62 bf 00 00 00 00 .....@..00b..... > + 00c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 00d0: 05 03 00 00 01 08 00 01 b2 00 00 00 00 00 00 00 ................ > + 00e0: 9c 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 00f0: 06 01 00 00 00 40 00 04 40 30 62 bf 00 00 00 00 .....@..@0b..... > + 0100: 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ................ > + 0110: 07 00 00 00 00 40 00 04 38 30 62 bf 00 00 00 00 .....@..80b..... > + 0120: 00 00 00 00 00 00 00 00 fe 01 00 00 00 00 00 00 ................ > + 0130: 08 00 00 00 00 40 00 04 70 30 62 bf 00 00 00 00 .....@..p0b..... > + 0140: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0150: 09 02 00 00 00 40 00 04 20 30 62 bf 00 00 00 00 .....@.. 0b..... > + 0160: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0170: 0a 00 00 00 00 40 00 04 48 30 62 bf 00 00 00 00 .....@..H0b..... > + 0180: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 0190: 0b 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... > + 01a0: 0f 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ > + 01b0: 0c 00 00 00 00 40 00 04 28 30 62 bf 00 00 00 00 .....@..(0b..... > + 01c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ > + 01d0: 0d 00 00 00 00 40 00 04 50 30 62 bf 00 00 00 00 .....@..P0b..... > + 01e0: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 01f0: 0e 00 00 00 00 40 00 04 58 30 62 bf 00 00 00 00 .....@..X0b..... > + 0200: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0210: 0f 00 00 00 00 40 00 04 60 30 62 bf 00 00 00 00 .....@..`0b..... > + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ > + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff > diff --git a/fwts-test/erst-0001/erst-0001.log b/fwts-test/erst-0001/erst-0001.log > new file mode 100644 > index 0000000..326146c > --- /dev/null > +++ b/fwts-test/erst-0001/erst-0001.log > @@ -0,0 +1,30 @@ > +erst erst: ERST Error Record Serialization Table test. > +erst ---------------------------------------------------------- > +erst Test 1 of 1: ERST Error Record Serialization Table test. > +erst ERST Error Record Serialization Table : > +erst Serialization Hdr. Size: 0x00000030 > +erst Reserved: 0x00000000 > +erst Instruction Entry Count: 0x00000010 > +erst ERST header looks sane. > +erst ERST Serialization Entry 0x0 looks sane. > +erst ERST Serialization Entry 0x1 looks sane. > +erst ERST Serialization Entry 0x2 looks sane. > +erst ERST Serialization Entry 0x3 looks sane. > +erst ERST Serialization Entry 0x4 looks sane. > +erst ERST Serialization Entry 0x5 looks sane. > +erst ERST Serialization Entry 0x6 looks sane. > +erst ERST Serialization Entry 0x7 looks sane. > +erst ERST Serialization Entry 0x8 looks sane. > +erst ERST Serialization Entry 0x9 looks sane. > +erst ERST Serialization Entry 0xa looks sane. > +erst ERST Serialization Entry 0xb looks sane. > +erst ERST Serialization Entry 0xc looks sane. > +erst ERST Serialization Entry 0xd looks sane. > +erst ERST Serialization Entry 0xe looks sane. > +erst ERST Serialization Entry 0xf looks sane. > +erst PASSED: Test 1, No issues found in ERST table. > +erst > +erst ========================================================== > +erst 1 passed, 0 failed, 0 warning, 0 aborted, 0 skipped, 0 > +erst info only. > +erst ========================================================== > diff --git a/fwts-test/erst-0001/erst-0002.log b/fwts-test/erst-0001/erst-0002.log > new file mode 100644 > index 0000000..d764042 > --- /dev/null > +++ b/fwts-test/erst-0001/erst-0002.log > @@ -0,0 +1,38 @@ > +erst erst: ERST Error Record Serialization Table test. > +erst ---------------------------------------------------------- > +erst Test 1 of 1: ERST Error Record Serialization Table test. > +erst ERST Error Record Serialization Table : > +erst Serialization Hdr. Size: 0x00000030 > +erst Reserved: 0x000000f0 > +erst Instruction Entry Count: 0x00000010 > +erst FAILED [LOW] ERSTReservedNonZero: Test 1, ERST Reserved > +erst field must be non-zero, got 0xf0 instead > +erst FAILED [HIGH] ERSTIInvalidFlag: Test 1, ERST Serialization > +erst Flag 0xff is an invalid value, values allowed are > +erst 0x00..0x01 for the WRITE_REGISTER and WRITE_REGISTER_VALUE > +erst instructions > +erst FAILED [HIGH] ERSTIInvalidGasAccessSize: Test 1, ERST > +erst Serialization Generic Address Access Size 0x5 is invalid, > +erst should be 0x00 .. 0x04 > +erst ERST Serialization Entry 0x1 looks sane. > +erst FAILED [HIGH] ERSTIInvalidInstruction: Test 1, ERST > +erst Serialization Instruction 0x13 is an invalid value, values > +erst allowed are 0x00..0x12 > +erst ERST Serialization Entry 0x3 looks sane. > +erst ERST Serialization Entry 0x4 looks sane. > +erst ERST Serialization Entry 0x5 looks sane. > +erst ERST Serialization Entry 0x6 looks sane. > +erst ERST Serialization Entry 0x7 looks sane. > +erst ERST Serialization Entry 0x8 looks sane. > +erst ERST Serialization Entry 0x9 looks sane. > +erst ERST Serialization Entry 0xa looks sane. > +erst ERST Serialization Entry 0xb looks sane. > +erst ERST Serialization Entry 0xc looks sane. > +erst ERST Serialization Entry 0xd looks sane. > +erst ERST Serialization Entry 0xe looks sane. > +erst ERST Serialization Entry 0xf looks sane. > +erst > +erst ========================================================== > +erst 0 passed, 4 failed, 0 warning, 0 aborted, 0 skipped, 0 > +erst info only. > +erst ========================================================== > diff --git a/fwts-test/erst-0001/erst-0003.log b/fwts-test/erst-0001/erst-0003.log > new file mode 100644 > index 0000000..5e57b64 > --- /dev/null > +++ b/fwts-test/erst-0001/erst-0003.log > @@ -0,0 +1,15 @@ > +erst erst: ERST Error Record Serialization Table test. > +erst ---------------------------------------------------------- > +erst Test 1 of 1: ERST Error Record Serialization Table test. > +erst ERST Error Record Serialization Table : > +erst Serialization Hdr. Size: 0x00000030 > +erst Reserved: 0x00000000 > +erst Instruction Entry Count: 0x00000011 > +erst FAILED [HIGH] ERSTTooManyEntries: Test 1, ERST size of 592 > +erst based on 17 Serialization Instruction Entries of 32 bytes > +erst is longer the entire table length of 576 > +erst > +erst ========================================================== > +erst 0 passed, 1 failed, 0 warning, 0 aborted, 0 skipped, 0 > +erst info only. > +erst ========================================================== > diff --git a/fwts-test/erst-0001/test-0001.sh b/fwts-test/erst-0001/test-0001.sh > new file mode 100644 > index 0000000..5bbce6d > --- /dev/null > +++ b/fwts-test/erst-0001/test-0001.sh > @@ -0,0 +1,17 @@ > +#!/bin/bash > +# > +TEST="Test table against ERST" > +NAME=test-0001.sh > +TMPLOG=$TMP/erst.log.$$ > + > +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/erst-0001/acpidump-0001.log erst - | cut -c7- | grep "^erst" > $TMPLOG > +diff $TMPLOG $FWTSTESTDIR/erst-0001/erst-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/erst-0001/test-0002.sh b/fwts-test/erst-0001/test-0002.sh > new file mode 100644 > index 0000000..71d5db1 > --- /dev/null > +++ b/fwts-test/erst-0001/test-0002.sh > @@ -0,0 +1,17 @@ > +#!/bin/bash > +# > +TEST="Test table against invalid ERST" > +NAME=test-0002.sh > +TMPLOG=$TMP/erst.log.$$ > + > +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/erst-0001/acpidump-0002.log erst - | cut -c7- | grep "^erst" > $TMPLOG > +diff $TMPLOG $FWTSTESTDIR/erst-0001/erst-0002.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/erst-0001/test-0003.sh b/fwts-test/erst-0001/test-0003.sh > new file mode 100644 > index 0000000..5cb1982 > --- /dev/null > +++ b/fwts-test/erst-0001/test-0003.sh > @@ -0,0 +1,17 @@ > +#!/bin/bash > +# > +TEST="Test table against invalid ERST" > +NAME=test-0003.sh > +TMPLOG=$TMP/erst.log.$$ > + > +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/erst-0001/acpidump-0003.log erst - | cut -c7- | grep "^erst" > $TMPLOG > +diff $TMPLOG $FWTSTESTDIR/erst-0001/erst-0003.log >> $FAILURE_LOG > +ret=$? > +if [ $ret -eq 0 ]; then > + echo PASSED: $TEST, $NAME > +else > + echo FAILED: $TEST, $NAME > +fi > + > +rm $TMPLOG > +exit $ret > The .sh files need to have permission of 10755. However, I can fix them myself. Acked-by: Alex Hung <alex.hung@canonical.com
diff --git a/Makefile.am b/Makefile.am index c69e4de..28a9280 100644 --- a/Makefile.am +++ b/Makefile.am @@ -61,6 +61,8 @@ TESTS = fwts-test/acpidump-0001/test-0001.sh \ fwts-test/dbgp-0001/test-0001.sh \ fwts-test/dbgp-0001/test-0002.sh \ fwts-test/disassemble-0001/test-0001.sh \ + fwts-test/erst-0001/test-0001.sh \ + fwts-test/erst-0001/test-0002.sh \ fwts-test/hest-0001/test-0001.sh \ fwts-test/hest-0001/test-0002.sh \ fwts-test/klog-0001/test-0001.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 bf27d3e..2625757 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 @@ -10,6 +10,7 @@ ACPI tests: dbgp DBGP (Debug Port) Table test. dmar DMA Remapping (VT-d) test. ecdt Embedded Controller Boot Resources Table test. + erst ERST Error Record Serialization Table test. fadt FADT Fixed ACPI Description Table tests. gtdt GTDT Generic Timer Description Table test. hest HEST Hardware Error Source Table test. @@ -50,6 +51,7 @@ Batch tests: dmicheck DMI/SMBIOS table tests. ebda Test EBDA region is mapped and reserved in memory map table. ecdt Embedded Controller Boot Resources Table test. + erst ERST Error Record Serialization Table test. fadt FADT Fixed ACPI Description Table tests. fan Simple fan tests. gtdt GTDT Generic Timer Description Table test. 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 9c33630..b6d73b0 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 @@ -23,6 +23,8 @@ ACPI tests: DMA Remapping test. ecdt (1 test): ECDT Embedded Controller Boot Resources Table test. + erst (1 test): + ERST Error Record Serialization Table test. fadt (3 tests): Test FADT ACPI Description Table tests. Test FADT SCI_EN bit is enabled. @@ -297,6 +299,8 @@ Batch tests: Test EBDA is reserved in E820 table. ecdt (1 test): ECDT Embedded Controller Boot Resources Table test. + erst (1 test): + ERST Error Record Serialization Table test. fadt (3 tests): Test FADT ACPI Description Table tests. Test FADT SCI_EN bit is enabled. @@ -770,4 +774,4 @@ UEFI tests: Test UEFI RT service query variable info interface stress test. Test UEFI RT service get variable interface, invalid parameters. -Total of 639 tests +Total of 641 tests diff --git a/fwts-test/erst-0001/acpidump-0001.log b/fwts-test/erst-0001/acpidump-0001.log new file mode 100644 index 0000000..87bbfe1 --- /dev/null +++ b/fwts-test/erst-0001/acpidump-0001.log @@ -0,0 +1,62 @@ +FACS @ 0x00000000 + 0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00 FACS@........... + 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 . ...........@.. + 00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... + 00f0: 00 00 00 00 .... + +ERST @ 0x00000000 + 0000: 45 52 53 54 30 02 00 00 01 f2 49 4e 54 45 4c 20 ERST0.....INTEL + 0010: 53 35 35 32 30 55 52 20 01 00 00 00 49 4e 54 4c S5520UR ....INTL + 0020: 01 00 00 00 30 00 00 00 00 00 00 00 10 00 00 00 ....0........... + 0030: 00 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... + 0040: 02 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 0050: 01 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... + 0060: 01 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 0070: 02 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... + 0080: 03 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 0090: 03 04 01 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... + 00a0: 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 00b0: 04 02 00 00 00 40 00 04 30 30 62 bf 00 00 00 00 .....@..00b..... + 00c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ + 00d0: 05 03 00 00 01 08 00 01 b2 00 00 00 00 00 00 00 ................ + 00e0: 9c 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 00f0: 06 01 00 00 00 40 00 04 40 30 62 bf 00 00 00 00 .....@..@0b..... + 0100: 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ................ + 0110: 07 00 00 00 00 40 00 04 38 30 62 bf 00 00 00 00 .....@..80b..... + 0120: 00 00 00 00 00 00 00 00 fe 01 00 00 00 00 00 00 ................ + 0130: 08 00 00 00 00 40 00 04 70 30 62 bf 00 00 00 00 .....@..p0b..... + 0140: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 0150: 09 02 00 00 00 40 00 04 20 30 62 bf 00 00 00 00 .....@.. 0b..... + 0160: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 0170: 0a 00 00 00 00 40 00 04 48 30 62 bf 00 00 00 00 .....@..H0b..... + 0180: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ + 0190: 0b 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... + 01a0: 0f 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 01b0: 0c 00 00 00 00 40 00 04 28 30 62 bf 00 00 00 00 .....@..(0b..... + 01c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ + 01d0: 0d 00 00 00 00 40 00 04 50 30 62 bf 00 00 00 00 .....@..P0b..... + 01e0: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 01f0: 0e 00 00 00 00 40 00 04 58 30 62 bf 00 00 00 00 .....@..X0b..... + 0200: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 0210: 0f 00 00 00 00 40 00 04 60 30 62 bf 00 00 00 00 .....@..`0b..... + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff diff --git a/fwts-test/erst-0001/acpidump-0002.log b/fwts-test/erst-0001/acpidump-0002.log new file mode 100644 index 0000000..c6a4059 --- /dev/null +++ b/fwts-test/erst-0001/acpidump-0002.log @@ -0,0 +1,62 @@ +FACS @ 0x00000000 + 0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00 FACS@........... + 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 . ...........@.. + 00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... + 00f0: 00 00 00 00 .... + +ERST @ 0x00000000 + 0000: 45 52 53 54 30 02 00 00 01 f2 49 4e 54 45 4c 20 ERST0.....INTEL + 0010: 53 35 35 32 30 55 52 20 01 00 00 00 49 4e 54 4c S5520UR ....INTL + 0020: 01 00 00 00 30 00 00 00 f0 00 00 00 10 00 00 00 ....0........... + 0030: 00 03 ff 00 00 40 00 05 18 30 62 bf 00 00 00 00 .....@...0b..... + 0040: 02 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 0050: 01 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... + 0060: 01 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 0070: 02 13 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... + 0080: 03 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 0090: 03 04 01 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... + 00a0: 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 00b0: 04 02 00 00 00 40 00 04 30 30 62 bf 00 00 00 00 .....@..00b..... + 00c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ + 00d0: 05 03 00 00 01 08 00 01 b2 00 00 00 00 00 00 00 ................ + 00e0: 9c 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 00f0: 06 01 00 00 00 40 00 04 40 30 62 bf 00 00 00 00 .....@..@0b..... + 0100: 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ................ + 0110: 07 00 00 00 00 40 00 04 38 30 62 bf 00 00 00 00 .....@..80b..... + 0120: 00 00 00 00 00 00 00 00 fe 01 00 00 00 00 00 00 ................ + 0130: 08 00 00 00 00 40 00 04 70 30 62 bf 00 00 00 00 .....@..p0b..... + 0140: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 0150: 09 02 00 00 00 40 00 04 20 30 62 bf 00 00 00 00 .....@.. 0b..... + 0160: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 0170: 0a 00 00 00 00 40 00 04 48 30 62 bf 00 00 00 00 .....@..H0b..... + 0180: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ + 0190: 0b 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... + 01a0: 0f 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 01b0: 0c 00 00 00 00 40 00 04 28 30 62 bf 00 00 00 00 .....@..(0b..... + 01c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ + 01d0: 0d 00 00 00 00 40 00 04 50 30 62 bf 00 00 00 00 .....@..P0b..... + 01e0: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 01f0: 0e 00 00 00 00 40 00 04 58 30 62 bf 00 00 00 00 .....@..X0b..... + 0200: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 0210: 0f 00 00 00 00 40 00 04 60 30 62 bf 00 00 00 00 .....@..`0b..... + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff diff --git a/fwts-test/erst-0001/acpidump-0003.log b/fwts-test/erst-0001/acpidump-0003.log new file mode 100644 index 0000000..25abb64 --- /dev/null +++ b/fwts-test/erst-0001/acpidump-0003.log @@ -0,0 +1,62 @@ +FACS @ 0x00000000 + 0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00 FACS@........... + 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 . ...........@.. + 00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... + 00f0: 00 00 00 00 .... + +ERST @ 0x00000000 + 0000: 45 52 53 54 30 02 00 00 01 f2 49 4e 54 45 4c 20 ERST0.....INTEL + 0010: 53 35 35 32 30 55 52 20 01 00 00 00 49 4e 54 4c S5520UR ....INTL + 0020: 01 00 00 00 30 00 00 00 00 00 00 00 11 00 00 00 ....0........... + 0030: 00 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... + 0040: 02 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 0050: 01 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... + 0060: 01 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 0070: 02 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... + 0080: 03 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 0090: 03 04 01 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... + 00a0: 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 00b0: 04 02 00 00 00 40 00 04 30 30 62 bf 00 00 00 00 .....@..00b..... + 00c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ + 00d0: 05 03 00 00 01 08 00 01 b2 00 00 00 00 00 00 00 ................ + 00e0: 9c 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 00f0: 06 01 00 00 00 40 00 04 40 30 62 bf 00 00 00 00 .....@..@0b..... + 0100: 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ................ + 0110: 07 00 00 00 00 40 00 04 38 30 62 bf 00 00 00 00 .....@..80b..... + 0120: 00 00 00 00 00 00 00 00 fe 01 00 00 00 00 00 00 ................ + 0130: 08 00 00 00 00 40 00 04 70 30 62 bf 00 00 00 00 .....@..p0b..... + 0140: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 0150: 09 02 00 00 00 40 00 04 20 30 62 bf 00 00 00 00 .....@.. 0b..... + 0160: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 0170: 0a 00 00 00 00 40 00 04 48 30 62 bf 00 00 00 00 .....@..H0b..... + 0180: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ + 0190: 0b 03 00 00 00 40 00 04 18 30 62 bf 00 00 00 00 .....@...0b..... + 01a0: 0f 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 ................ + 01b0: 0c 00 00 00 00 40 00 04 28 30 62 bf 00 00 00 00 .....@..(0b..... + 01c0: 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 00 00 ................ + 01d0: 0d 00 00 00 00 40 00 04 50 30 62 bf 00 00 00 00 .....@..P0b..... + 01e0: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 01f0: 0e 00 00 00 00 40 00 04 58 30 62 bf 00 00 00 00 .....@..X0b..... + 0200: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 0210: 0f 00 00 00 00 40 00 04 60 30 62 bf 00 00 00 00 .....@..`0b..... + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ................ + 0220: 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff diff --git a/fwts-test/erst-0001/erst-0001.log b/fwts-test/erst-0001/erst-0001.log new file mode 100644 index 0000000..326146c --- /dev/null +++ b/fwts-test/erst-0001/erst-0001.log @@ -0,0 +1,30 @@ +erst erst: ERST Error Record Serialization Table test. +erst ---------------------------------------------------------- +erst Test 1 of 1: ERST Error Record Serialization Table test. +erst ERST Error Record Serialization Table : +erst Serialization Hdr. Size: 0x00000030 +erst Reserved: 0x00000000 +erst Instruction Entry Count: 0x00000010 +erst ERST header looks sane. +erst ERST Serialization Entry 0x0 looks sane. +erst ERST Serialization Entry 0x1 looks sane. +erst ERST Serialization Entry 0x2 looks sane. +erst ERST Serialization Entry 0x3 looks sane. +erst ERST Serialization Entry 0x4 looks sane. +erst ERST Serialization Entry 0x5 looks sane. +erst ERST Serialization Entry 0x6 looks sane. +erst ERST Serialization Entry 0x7 looks sane. +erst ERST Serialization Entry 0x8 looks sane. +erst ERST Serialization Entry 0x9 looks sane. +erst ERST Serialization Entry 0xa looks sane. +erst ERST Serialization Entry 0xb looks sane. +erst ERST Serialization Entry 0xc looks sane. +erst ERST Serialization Entry 0xd looks sane. +erst ERST Serialization Entry 0xe looks sane. +erst ERST Serialization Entry 0xf looks sane. +erst PASSED: Test 1, No issues found in ERST table. +erst +erst ========================================================== +erst 1 passed, 0 failed, 0 warning, 0 aborted, 0 skipped, 0 +erst info only. +erst ========================================================== diff --git a/fwts-test/erst-0001/erst-0002.log b/fwts-test/erst-0001/erst-0002.log new file mode 100644 index 0000000..d764042 --- /dev/null +++ b/fwts-test/erst-0001/erst-0002.log @@ -0,0 +1,38 @@ +erst erst: ERST Error Record Serialization Table test. +erst ---------------------------------------------------------- +erst Test 1 of 1: ERST Error Record Serialization Table test. +erst ERST Error Record Serialization Table : +erst Serialization Hdr. Size: 0x00000030 +erst Reserved: 0x000000f0 +erst Instruction Entry Count: 0x00000010 +erst FAILED [LOW] ERSTReservedNonZero: Test 1, ERST Reserved +erst field must be non-zero, got 0xf0 instead +erst FAILED [HIGH] ERSTIInvalidFlag: Test 1, ERST Serialization +erst Flag 0xff is an invalid value, values allowed are +erst 0x00..0x01 for the WRITE_REGISTER and WRITE_REGISTER_VALUE +erst instructions +erst FAILED [HIGH] ERSTIInvalidGasAccessSize: Test 1, ERST +erst Serialization Generic Address Access Size 0x5 is invalid, +erst should be 0x00 .. 0x04 +erst ERST Serialization Entry 0x1 looks sane. +erst FAILED [HIGH] ERSTIInvalidInstruction: Test 1, ERST +erst Serialization Instruction 0x13 is an invalid value, values +erst allowed are 0x00..0x12 +erst ERST Serialization Entry 0x3 looks sane. +erst ERST Serialization Entry 0x4 looks sane. +erst ERST Serialization Entry 0x5 looks sane. +erst ERST Serialization Entry 0x6 looks sane. +erst ERST Serialization Entry 0x7 looks sane. +erst ERST Serialization Entry 0x8 looks sane. +erst ERST Serialization Entry 0x9 looks sane. +erst ERST Serialization Entry 0xa looks sane. +erst ERST Serialization Entry 0xb looks sane. +erst ERST Serialization Entry 0xc looks sane. +erst ERST Serialization Entry 0xd looks sane. +erst ERST Serialization Entry 0xe looks sane. +erst ERST Serialization Entry 0xf looks sane. +erst +erst ========================================================== +erst 0 passed, 4 failed, 0 warning, 0 aborted, 0 skipped, 0 +erst info only. +erst ========================================================== diff --git a/fwts-test/erst-0001/erst-0003.log b/fwts-test/erst-0001/erst-0003.log new file mode 100644 index 0000000..5e57b64 --- /dev/null +++ b/fwts-test/erst-0001/erst-0003.log @@ -0,0 +1,15 @@ +erst erst: ERST Error Record Serialization Table test. +erst ---------------------------------------------------------- +erst Test 1 of 1: ERST Error Record Serialization Table test. +erst ERST Error Record Serialization Table : +erst Serialization Hdr. Size: 0x00000030 +erst Reserved: 0x00000000 +erst Instruction Entry Count: 0x00000011 +erst FAILED [HIGH] ERSTTooManyEntries: Test 1, ERST size of 592 +erst based on 17 Serialization Instruction Entries of 32 bytes +erst is longer the entire table length of 576 +erst +erst ========================================================== +erst 0 passed, 1 failed, 0 warning, 0 aborted, 0 skipped, 0 +erst info only. +erst ========================================================== diff --git a/fwts-test/erst-0001/test-0001.sh b/fwts-test/erst-0001/test-0001.sh new file mode 100644 index 0000000..5bbce6d --- /dev/null +++ b/fwts-test/erst-0001/test-0001.sh @@ -0,0 +1,17 @@ +#!/bin/bash +# +TEST="Test table against ERST" +NAME=test-0001.sh +TMPLOG=$TMP/erst.log.$$ + +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/erst-0001/acpidump-0001.log erst - | cut -c7- | grep "^erst" > $TMPLOG +diff $TMPLOG $FWTSTESTDIR/erst-0001/erst-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/erst-0001/test-0002.sh b/fwts-test/erst-0001/test-0002.sh new file mode 100644 index 0000000..71d5db1 --- /dev/null +++ b/fwts-test/erst-0001/test-0002.sh @@ -0,0 +1,17 @@ +#!/bin/bash +# +TEST="Test table against invalid ERST" +NAME=test-0002.sh +TMPLOG=$TMP/erst.log.$$ + +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/erst-0001/acpidump-0002.log erst - | cut -c7- | grep "^erst" > $TMPLOG +diff $TMPLOG $FWTSTESTDIR/erst-0001/erst-0002.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/erst-0001/test-0003.sh b/fwts-test/erst-0001/test-0003.sh new file mode 100644 index 0000000..5cb1982 --- /dev/null +++ b/fwts-test/erst-0001/test-0003.sh @@ -0,0 +1,17 @@ +#!/bin/bash +# +TEST="Test table against invalid ERST" +NAME=test-0003.sh +TMPLOG=$TMP/erst.log.$$ + +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/erst-0001/acpidump-0003.log erst - | cut -c7- | grep "^erst" > $TMPLOG +diff $TMPLOG $FWTSTESTDIR/erst-0001/erst-0003.log >> $FAILURE_LOG +ret=$? +if [ $ret -eq 0 ]; then + echo PASSED: $TEST, $NAME +else + echo FAILED: $TEST, $NAME +fi + +rm $TMPLOG +exit $ret