Re: suspend to ram problem

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

 



On Thursday, 7 of February 2008, Pavel Machek wrote:
> Hi!

Hi,

> >>>> Hmm, maybe I know where problem could be. Try
> >>>>
> >>>>         movl     $(wakeup_stack - wakeup_code), %esp              # 
> >>>> Private stack is needed for ASUS bo\
> >>>>
> >>>> instead of existing stack setup. That helped on one of my test-boxes
> >>> Thanks, I will try that.
> >>> Because clearing the flags imply pop/push in the stack it could be the 
> >>> problem
> >> That doesn't help : it still crash in pushl $0.
> >>
> > All stack stuff in wakeup_code crash for me.
> > I tried to change the stack position, make sure upper bit of %esp are 
> > clear, ... nothing work.
> > What's are strange is that according to my x86 manual, in real mode the 
> > failure can only happen if the stack wrap which is not the case here.
> > Any x86 guru advice ?
> 
> Could you try the .c wakeup? I changed it a bit, perhaps that's enough.
> 
> > If I remove stack access (remove clearing flag stuff, not call to video 
> > stuff) the resume works.
> 
> Actually, I see a possible problem:
> 
> _start:
>         cli
>         cld
> 
>         /* Set up segments */
>         movw    %cs,%ax
>         movw    %ax,%ds
>         movw    %ax,%es
>         movw    %ax,%ss
> 
>         movl    $wakeup_stack_end, %esp
> 
>         /* Clear the EFLAGS */
>         pushl   $0
>         popfl
> 
> ...if someone calls start as 0x1234:0, we are okay. But if some broken
> bios calls us as 0x1:0x234, we've got a problem.

Well, in that case the signature/end_signature tests below would trigger, no?

Rafael
_______________________________________________
linux-pm mailing list
linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/linux-pm

[Index of Archives]     [Linux ACPI]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [CPU Freq]     [Kernel Newbies]     [Fedora Kernel]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux