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: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <2607233.VlpZS8z9ty@vostro.rjw.lan>
Date:	Thu, 10 Dec 2015 00:07:27 +0100
From:	"Rafael J. Wysocki" <rjw@...ysocki.net>
To:	Ken Xue <ken.xue@....com>
Cc:	linux-acpi@...r.kernel.org, linux-kernel@...r.kernel.org,
	lenb@...nel.org, SPG_Linux_Kernel@....com,
	mika.westerberg@...ux.intel.com,
	Andy Shevchenko <andy.shevchenko@...il.com>,
	Ivan.Zheng@....com, Alex.Chuang@....com, tj@...nel.org,
	stern@...land.harvard.edu
Subject: Re: [PATCH V2] ACPI: Support D3 COLD device in old BIOS for ZPODD

On Wednesday, December 09, 2015 04:17:30 PM Ken Xue wrote:
> D3cold is only regarded as valid if the "_PR3" object is
> present for the given device after the commit 20dacb71ad28
> ("ACPI/PM: Rework device power management to follow ACPI 6").
> 
> But some old BIOS only defined "_PS3" for the D3COLD device,
> such as ZPODD device. And old kernel also believes the device with
> "_PS3" is a D3COLD device.
> 
> So, add some logics for supporting D3 COLD device with old BIOS
> which is compatible with earlier ACPI spec and kernel behavior.
> 
> Reference:
> http://marc.info/?l=linux-acpi&m=144946938709759&w=2
> 
> Signed-off-by: Ken Xue <Ken.Xue@....com>
> Reported-and-tested-by: Gang Long <Gang.Long@....com>
> ---
>  include/acpi/acpi_bus.h | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/include/acpi/acpi_bus.h b/include/acpi/acpi_bus.h
> index ad0a5ff..9894b75 100644
> --- a/include/acpi/acpi_bus.h
> +++ b/include/acpi/acpi_bus.h
> @@ -631,7 +631,9 @@ static inline bool acpi_device_can_wakeup(struct acpi_device *adev)
>  
>  static inline bool acpi_device_can_poweroff(struct acpi_device *adev)
>  {
> -	return adev->power.states[ACPI_STATE_D3_COLD].flags.valid;
> +	return adev->power.states[ACPI_STATE_D3_COLD].flags.valid ||
> +		((acpi_gbl_FADT.header.revision < 6) &&
> +		adev->power.states[ACPI_STATE_D3_HOT].flags.explicit_set);
>  }
>  
>  #else	/* CONFIG_ACPI */

This is fine by me, but _PS3 is allowed to remove power from the device even by ACPI 6.

Queued up for 4.5, thanks!

Rafael

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ