lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 4 Dec 2019 22:27:35 +0100
From:   Pavel Machek <pavel@...x.de>
To:     Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Cc:     linux-kernel@...r.kernel.org, stable@...r.kernel.org,
        Hans de Goede <hdegoede@...hat.com>,
        "Rafael J. Wysocki" <rafael.j.wysocki@...el.com>,
        Sasha Levin <sashal@...nel.org>
Subject: Re: [PATCH 4.19 082/321] ACPI / LPSS: Ignore
 acpi_device_fix_up_power() return value

Hi!

> From: Hans de Goede <hdegoede@...hat.com>
> 
> [ Upstream commit 1a2fa02f7489dc4d746f2a15fb77b3ce1affade8 ]
> 
> Ignore acpi_device_fix_up_power() return value. If we return an error
> we end up with acpi_default_enumeration() still creating a platform-
> device for the device and we end up with the device still being used
> but without the special LPSS related handling which is not useful.
> 
> Specicifically ignoring the error fixes the touchscreen no longer
> working after a suspend/resume on a Prowise PT301 tablet.

I'm pretty sure it does, but:

a) do you believe this is right patch for -stable? Should it get lot
more testing in mainline as it.... may change things in a wrong way
for someone else?

b) if we are ignoring errors now, should we at least printk() to let
the user know that something is wrong with the ACPI tables?

Best regards,
									Pavel

> diff --git a/drivers/acpi/acpi_lpss.c b/drivers/acpi/acpi_lpss.c
> index b21c241aaab9f..30ccd94f87d24 100644
> --- a/drivers/acpi/acpi_lpss.c
> +++ b/drivers/acpi/acpi_lpss.c
> @@ -665,12 +665,7 @@ static int acpi_lpss_create_device(struct acpi_device *adev,
>  	 * have _PS0 and _PS3 without _PSC (and no power resources), so
>  	 * acpi_bus_init_power() will assume that the BIOS has put them into D0.
>  	 */
> -	ret = acpi_device_fix_up_power(adev);
> -	if (ret) {
> -		/* Skip the device, but continue the namespace scan. */
> -		ret = 0;
> -		goto err_out;
> -	}
> +	acpi_device_fix_up_power(adev);



>  	adev->driver_data = pdata;
>  	pdev = acpi_create_platform_device(adev, dev_desc->properties);

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

Download attachment "signature.asc" of type "application/pgp-signature" (182 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ