FWTS V21.02.00 PMTT Socket has a subtable with zero length - incorrectly reporting failure

Bug #1922945 reported by Craig Salmond
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Firmware Test Suite
Fix Released
Undecided
Alex Hung

Bug Description

The test is failing, saying the subtable has zero length, but in both cases it appears the length is 0x0010.

Results generated by fwts: Version V21.02.00 (2021-02-23 18:49:42).
...
  PMTT Subtable:
    Type: 0x00
    Reserved: 0x00
    Length: 0x0010
    Flags: 0x0003
    Reserved: 0x0000
    Socket Identifier: 0x0001
    Reserved: 0x0000
FAILED [CRITICAL] PMTTBadSubtableLength: Test 1, PMTT Socket has a subtable with
zero length
...
  PMTT Subtable:
    Type: 0x00
    Reserved: 0x00
    Length: 0x0010
    Flags: 0x0000
    Reserved: 0x0000
    Socket Identifier: 0x0000
    Reserved: 0x0000
FAILED [CRITICAL] PMTTBadSubtableLength: Test 1, PMTT Socket has a subtable with
zero length
...

Revision history for this message
Alex Hung (alexhung) wrote :

will you be able to upload your PMTT table (or the whole acpi table) for more analysis?

all acpi table: sudo acpidump > acpi.log

Changed in fwts:
assignee: nobody → Alex Hung (alexhung)
Alex Hung (alexhung)
Changed in fwts:
status: New → Incomplete
Revision history for this message
Alex Hung (alexhung) wrote :

ACPI 6.4 deprecates revision 1 and adds a "Number of Memory Devices" field to PMTT, and thus changes the offsets of following fields. This results incorrect mapping to subtable length.

A patch is in progress and it will 1) add the new field and 2) output error messages when revision is 1.

Changed in fwts:
status: Incomplete → In Progress
Revision history for this message
Alex Hung (alexhung) wrote :

PMTT in ACPI 6.4 has signficant changes in common header, type 1 and type 2 structures. As a result, revision 1 and revision 2 aren't compatible at all.

Revision history for this message
Alex Hung (alexhung) wrote :

A patch was sent for review: http://patchwork<email address hidden>/

Revision history for this message
Craig Salmond (csalmond) wrote :
Revision history for this message
Alex Hung (alexhung) wrote :

hi Craig,

I don't see any PMTT table in your acpidump log.

$ ls
acpi.log einj.dat hest.dsl oem1.dat slit.dsl ssdt3.dat uefi.dsl
apic.dat einj.dsl hmat.dat oem1.dsl spmi.dat ssdt3.dsl wddt.dat
apic.dsl erst.dat hmat.dsl oem2.dat spmi.dsl ssdt4.dat wddt.dsl
bert.dat erst.dsl hpet.dat oem2.dsl srat.dat ssdt4.dsl wsmt.dat
bert.dsl facp.dat hpet.dsl oem3.dat srat.dsl ssdt5.dat wsmt.dsl
bgrt.dat facp.dsl mcfg.dat oem3.dsl ssdt1.dat ssdt5.dsl
bgrt.dsl facs.dat mcfg.dsl oem4.dat ssdt1.dsl ssdt6.dat
dsdt.dat facs.dsl msct.dat oem4.dsl ssdt2.dat ssdt6.dsl
dsdt.dsl hest.dat msct.dsl slit.dat ssdt2.dsl uefi.dat

Revision history for this message
Craig Salmond (csalmond) wrote :

Sorry that it takes so long to respond, but I am reporting this for one of our Hardware developers. They know about this bug, but unless they respond, I can't do anything about it, due to non-disclosure agreements.

Revision history for this message
Alex Hung (alexhung) wrote :

hi Craig,

I was able to reproduce it and have sent a patch for review (#2 to #4). You can verify it in next fwts release.

Revision history for this message
Craig Salmond (csalmond) wrote :

The developer said they tested the patch and fwts hung for over 24 hours.

Revision history for this message
Alex Hung (alexhung) wrote :

In this case, a dummy but similar PMTT table will be helpful for further debugging.

Revision history for this message
Alex Hung (alexhung) wrote :

Hi,

Could you please give fwts 21.05.00 a try? A out-of-structure check (along with a few other modifications) was added and hope that helps.

Revision history for this message
Alex Hung (alexhung) wrote :

A possible solution was added as in #11. Let me mark this as fixed until failures are reported.

Changed in fwts:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.