[3.19.y-ckt stable] Patch "drm/i915: apply the PCI_D0/D3 hibernation workaround everywhere on pre GEN6" has been added to staging queue

Jani Nikula jani.nikula at intel.com
Tue Oct 20 06:46:19 UTC 2015


On Tue, 20 Oct 2015, Pavel Machek <pavel at ucw.cz> wrote:
> On Mon 2015-10-19 15:39:48, Kamal Mostafa wrote:
>> This is a note to let you know that I have just added a patch titled
>> 
>>     drm/i915: apply the PCI_D0/D3 hibernation workaround everywhere on pre GEN6
>> 
>> to the linux-3.19.y-queue branch of the 3.19.y-ckt extended stable tree 
>> which can be found at:
>> 
>>     http://kernel.ubuntu.com/git/ubuntu/linux.git/log/?h=linux-3.19.y-queue
>> 
>> This patch is scheduled to be released in version 3.19.8-ckt8.
>> 
>> If you, or anyone else, feels it should not be added to this tree, please 
>> reply to this email.
>
> As this says:
>
>> commit da2bc1b9db3351addd293e5b82757efe1f77ed1d
>> Author: Imre Deak <imre.deak at intel.com>
>> Date:   Thu Oct 23 19:23:26 2014 +0300
>> 
>>     drm/i915: add poweroff_late handler
>> 
>> introduced a regression on old platforms during hibernation. A workaround was
>> added in
>
> commit da2bc introduced a regression, and it should be simply
> reverted, attempts to "fix" it may be suitable for -mainline, but not
> for stable.
>
> Just revert it. It does not provide any real benefit, anyway.

This is not how stable works. If you have problems with current
upstream, please report them upstream.

BR,
Jani.


>
> 								Pavel
>
>
>> index 34d0e58..902bd64 100644
>> --- a/drivers/gpu/drm/i915/i915_drv.c
>> +++ b/drivers/gpu/drm/i915/i915_drv.c
>> @@ -637,15 +637,18 @@ static int i915_drm_suspend_late(struct drm_device *drm_dev, bool hibernation)
>> 
>>  	pci_disable_device(drm_dev->pdev);
>>  	/*
>> -	 * During hibernation on some GEN4 platforms the BIOS may try to access
>> +	 * During hibernation on some platforms the BIOS may try to access
>>  	 * the device even though it's already in D3 and hang the machine. So
>>  	 * leave the device in D0 on those platforms and hope the BIOS will
>> -	 * power down the device properly. Platforms where this was seen:
>> -	 * Lenovo Thinkpad X301, X61s
>> +	 * power down the device properly. The issue was seen on multiple old
>> +	 * GENs with different BIOS vendors, so having an explicit blacklist
>> +	 * is inpractical; apply the workaround on everything pre GEN6. The
>> +	 * platforms where the issue was seen:
>> +	 * Lenovo Thinkpad X301, X61s, X60, T60, X41
>> +	 * Fujitsu FSC S7110
>> +	 * Acer Aspire 1830T
>>  	 */
>> -	if (!(hibernation &&
>> -	      drm_dev->pdev->subsystem_vendor == PCI_VENDOR_ID_LENOVO &&
>> -	      INTEL_INFO(dev_priv)->gen == 4))
>> +	if (!(hibernation && INTEL_INFO(dev_priv)->gen < 6))
>>  		pci_set_power_state(drm_dev->pdev, PCI_D3hot);
>> 
>>  	return 0;
>> --
>> 1.9.1
>
> -- 
> (english) http://www.livejournal.com/~pavelmachek
> (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

-- 
Jani Nikula, Intel Open Source Technology Center




More information about the kernel-team mailing list