From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753838AbbFDRvm (ORCPT ); Thu, 4 Jun 2015 13:51:42 -0400 Received: from mx1.redhat.com ([209.132.183.28]:43313 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751931AbbFDRvj (ORCPT ); Thu, 4 Jun 2015 13:51:39 -0400 Date: Thu, 4 Jun 2015 19:51:36 +0200 From: Radim =?utf-8?B?S3LEjW3DocWZ?= To: Stephen Rothwell Cc: Darren Hart , linux-next@vger.kernel.org, linux-kernel@vger.kernel.org Subject: linux-next: build failure after merge of the drivers-x86 tree Message-ID: <20150604175135.GA10262@potion.brq.redhat.com> References: <20150604181308.16fbe6cf@canb.auug.org.au> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20150604181308.16fbe6cf@canb.auug.org.au> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 2015-06-04 18:13+1000, Stephen Rothwell: > After merging the drivers-x86 tree, today's linux-next build (x86_64 allmodconfig) > failed like this: > > ERROR: "acpi_bus_get_status_handle" [drivers/platform/x86/pvpanic.ko] undefined! > > Caused by commit b8f8cf6b02b6 ("pvpanic: handle missing _STA correctly"). Classic, I only built with Y, sorry. acpi_bus_get_status_handle is not exported, so a simple solution would be to make it so. Or it's possible to rewrite the patch in a way that uses current infrastructure. Would you prefer a patch to export it, a build fix on top of b8f8cf6b02b6 or a replacement patch? Thanks. A fix on top of b8f8cf6b02b6: ---8<--- pvpanic: use acpi_bus_get_status to fix build The previous version used acpi_bus_get_status_handle, which was not being exported, so module build blew up; switch to acpi_bus_get_status and use the status it populates. Populated status is a bitfield so we can make the code self-documenting. We do not check 'present' because 'enabled' has to be false in that case by specification. Older QEMUs set 0xff to status and newer ones do 0xb. Signed-off-by: Radim Krčmář --- drivers/platform/x86/pvpanic.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/platform/x86/pvpanic.c b/drivers/platform/x86/pvpanic.c index 7b6860333267..fd86daba7ffd 100644 --- a/drivers/platform/x86/pvpanic.c +++ b/drivers/platform/x86/pvpanic.c @@ -92,12 +92,13 @@ pvpanic_walk_resources(struct acpi_resource *res, void *context) static int pvpanic_add(struct acpi_device *device) { - acpi_status status; - u64 ret; + int ret; - status = acpi_bus_get_status_handle(device->handle, &ret); + ret = acpi_bus_get_status(device); + if (ret < 0) + return ret; - if (ACPI_FAILURE(status) || (ret & 0x0B) != 0x0B) + if (!device->status.enabled || !device->status.functional) return -ENODEV; acpi_walk_resources(device->handle, METHOD_NAME__CRS,