Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751832AbbF3R3n (ORCPT ); Tue, 30 Jun 2015 13:29:43 -0400 Received: from mx1.redhat.com ([209.132.183.28]:44859 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751105AbbF3R3h (ORCPT ); Tue, 30 Jun 2015 13:29:37 -0400 Message-ID: <5592D1FF.7040208@redhat.com> Date: Tue, 30 Jun 2015 11:29:35 -0600 From: Al Stone User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: Sudeep Holla , Al Stone , "linux-acpi@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "rjw@rjwysocki.net" CC: "lenb@kernel.org" , Catalin Marinas , Will Deacon , "tglx@linutronix.de" , "jason@lakedaemon.net" , "linux-kernel@vger.kernel.org" , "linaro-acpi@lists.linaro.org" , "linaro-kernel@lists.linaro.org" , "patches@linaro.org" Subject: Re: [PATCH v2 0/3] Correct for ACPI 5.1->6.0 spec changes in MADT GICC entries References: <1434666968-1543-1-git-send-email-al.stone@linaro.org> <5592CCE6.6040604@arm.com> In-Reply-To: <5592CCE6.6040604@arm.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2530 Lines: 59 On 06/30/2015 11:07 AM, Sudeep Holla wrote: > Hi Al, > > On 18/06/15 23:36, Al Stone wrote: >> In the ACPI 5.1 version of the spec, the struct for the GICC subtable >> (struct acpi_madt_generic_interrupt) of the MADT is 76 bytes long; in >> ACPI 6.0, the struct is 80 bytes long. But, there is only one definition >> in ACPICA for this struct -- and that is the 6.0 version. Hence, when >> BAD_MADT_ENTRY() compares the struct size to the length in the GICC >> subtable, it fails if 5.1 structs are in use, and there are systems in >> the wild that have them. >> >> Note that this was found in linux-next and these patches apply against >> that tree and the arm64 kernel tree; 4.1-rc8 does not appear to have this >> problem since it still has the 5.1 struct definition. >> >> Even though there is precendent in ia64 code for ignoring the changes in >> size, this patch set instead tries to verify correctness. The first patch >> in the set adds macros for easily using the ACPI spec version. The second >> patch adds the BAD_MADT_GICC_ENTRY() macro that uses the version macros to >> check the GICC subtable only, accounting for the difference in specification >> versions that are possible. The final patch replaces BAD_MADT_ENTRY usage >> with the BAD_MADT_GICC_ENTRY macro in arm64 code, which is currently the >> only architecture affected. The BAD_MADT_ENTRY() will continue to work as >> is for all other MADT subtables. >> > > We need to get this series or a patch to remove the check(similar to > ia64) based on what Rafael prefers. Without that, platforms using ACPI > on ARM64 fails to boot with latest mainline. This blocks any testing on > ARM64/ACPI systems. > > Regards, > Sudeep I have not received any other feedback than some Reviewed-bys from Hanjun and an ACK from Will for the arm64 patch. And absolutely agreed: this is a blocker for arm64/ACPI, starting with the ACPICA 20150515 patches which appear to have gone in with 4.2-rc1. Rafael? Ping? Do we need these to go through your tree or the arm64 tree? Without this series (or an ia64-like solution), we have ACPI systems in the field that cannot boot. -- ciao, al ----------------------------------- Al Stone Software Engineer Red Hat, Inc. ahs3@redhat.com ----------------------------------- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/