From patchwork Thu Sep 13 15:40:16 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: acpica: Fix segfault when disassembling AML (LP: #1050475) Date: Thu, 13 Sep 2012 05:40:16 -0000 From: Colin King X-Patchwork-Id: 183654 Message-Id: <1347550816-30905-1-git-send-email-colin.king@canonical.com> To: fwts-devel@lists.ubuntu.com From: Colin Ian King Running fwts against a collection of test tables I found a segfault in source/components/disassembler/dmopcode.c:334, due to Tag being null. This patch is a fix from Robert Moore at Intel which will land in the September release of ACPICA/iASL. Signed-off-by: Colin Ian King --- src/acpica/source/common/dmrestag.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/acpica/source/common/dmrestag.c b/src/acpica/source/common/dmrestag.c index 9afaad3..3097f15 100644 --- a/src/acpica/source/common/dmrestag.c +++ b/src/acpica/source/common/dmrestag.c @@ -541,6 +541,11 @@ AcpiDmCheckResourceReference ( /* Get the Index term, must be an integer constant to convert */ IndexOp = BufferNameOp->Common.Next; + + /* Major cheat: The Node field is also used for the Tag ptr. Clear it now */ + + IndexOp->Common.Node = NULL; + OpInfo = AcpiPsGetOpcodeInfo (IndexOp->Common.AmlOpcode); if (OpInfo->ObjectType != ACPI_TYPE_INTEGER) {