Re: [PATCH] ACPI:remove panic in case hardware has changed after S4

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all experts, 

於 四,2013-07-18 於 00:09 +0200,Rafael J. Wysocki 提到:
> On Wednesday, July 17, 2013 04:58:34 PM Thomas Renninger wrote:
> > On Monday, July 15, 2013 05:35:23 PM Oliver Neukum wrote:
> > > On Monday 15 July 2013 12:06:11 Henrique de Moraes Holschuh wrote:
> > > > On Mon, 15 Jul 2013, Thomas Renninger wrote:
> > > > > I would not make it too complicated.
> > > > > Sticking to the latest Windows version should be enough for this one.
> > > > > What bad should happen if we still try to resume and fail...
> > > > 
> > > > Hmm, why was that check added in the first place?
> > > 
> > > Safety.
> > 
> > I expect it is there, because it is stated rather clear in the specs.
> >  
> > > > If it is useless,
> > > > removing it for good is fine.  If it is _not_ useless, we should still do
> > > > the checking when not operating in windows-8 firmware mode.
> > > 
> > > Firmware will only be tested against Windows 8 pretty soon.
> > > We'd end up with a gigantic list of exceptions.
> > 
> > Joey found an interessting paper about Win8 behavior:
> > http://bizsupport2.austin.hp.com/bc/docs/support/SupportManual/c03654081/c03654081.pdf
> > 
> > It looks like Win8 behaves rather different compared to Linux and is providing
> > "Hybrid Boot" where the user has to end all his apps. They have no big problem 
> > when resume fails as the user will not lose any data or work he had done 
> > before.
> > 
> > Joey also found the rather hidden acpi_sleep=s4_nohwsig boot option
> > which helps as well.
> > So Linux could do:
> >    1) Invalidate suspend image and reboot  (disadvantage: message is gone)
> >    2) Panic (current behavior) -> above boot param helps
> >    3) Still try to resume with a "not so offending message"
> >    4) ?
> > 
> > 1. seem to be what Win8 is doing
> > 3. sounds best to me. It could be ugly if suspend fails and
> > it always worked before and all your work/data is gone. So trying
> > hard to resume sounds like a good idea
> 
> We can also blacklist systems that need acpi_sleep=s4_nohwsig due to idiotic
> hardware/BIOS design choices.
> 
> In any case, if we remove the panic, we should also drop s4_nohwsig and since
> we have that (which I forgot about, by bad), the whole issue isn't so urgent,
> so I'm dropping the patch for the time being.
> 
> Thanks,
> Rafael
> 
> 


About the testing on real machine to capture the Windows behavior of
hardware_signature... We confirm the behavior on fast boot and _REAL_ S4
are different on Windows.

First, on Windows 8, user could not see S4 option on default UI, they
need enable it in setup UI when user really want to use it. Windows 8's
default shutdown is fast boot but not real S5.

We found a notebook that has a buggy BIOS that changed the
hardware_signature in 3 times S4 cycles. With Linux kernel, normally we
can reproduced the FACS hardware signature fail at second time S4.

My friend, Max Lin help to install Windows 7 and Windows 8 on this buggy
machine to run S4 and fast boot testing, the result as following:

 + Linux v3.10 Kernel:
   Can reproduce error of hardware_signature changed in 3 times S4. 

 + Windows 8 _REAL_ S4:
   Run more then 10 S4 cycles, always resume like normally. Didn't see
any problem.

 + Windows 8 fast boot:
   Random happened blue screen as the attached picture (sorry for the
chinese message), the error is: PAGE_FAULT_IN_NONPAGED_AREA. Then
Windows 8 reboot and try to recover error.  We are not sure this error
is caused by hardware_signature changed, but it only reproduced on fast
boot but not S4.

 + Windows 7 _REAL_ S4:
   Run more then 10 S4 cycles, always resume like normally. Didn't see
any problem.


Base on the above testing result, our conclusion is: 

 + The _REAL_ S4 on Windows 7/8 ignored FACS hardware signature change.
It just result like normally, didn't lost any user data.

 + The fast boot resume on Windows 8, happen blue screen, but we are not
sure it reflect to FACS hardware signature change. Even that, Windows 8
didn't lost any user data because user already close all applications
before fast boot shutdown.


Due to Linux kernel is running REAL S4, so I suggest we can just ignore
the FACS hardware signature changed, means accept Oliver's patch. Just
let machine try to restore the S4 snapshot, if lucky, then user can get
their user data back.


Thanks a lot!
Joey Lee

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux