Re: [Fastboot] [RFC] [PATCH 10/16] x86_64: 64bit PIC ACPI wakeup

From: Vivek Goyal
Date: Wed Nov 15 2006 - 19:30:33 EST


On Wed, Nov 15, 2006 at 04:24:11PM -0500, Vivek Goyal wrote:
> On Mon, Nov 13, 2006 at 11:43:14AM -0500, Vivek Goyal wrote:
> >
> >
> > - Killed lots of dead code
> > - Improve the cpu sanity checks to verify long mode
> > is enabled when we wake up.
> > - Removed the need for modifying any existing kernel page table.
> > - Moved wakeup_level4_pgt into the wakeup routine so we can
> > run the kernel above 4G.
> > - Increased the size of the wakeup routine to 8K.
> > - Renamed the variables to use the 64bit register names.
> > - Lots of misc cleanups to match trampoline.S
> >
> > I don't have a configuration I can test this but it compiles cleanly
> > and it should work, the code is very similar to the SMP trampoline,
> > which I have tested. At least now the comments about still running in
> > low memory are actually correct.
> >
> > Vivek has tested this patch for suspend to memory and it works fine.
> >
>
> More update. Got hold of another machine and suspend/resume seems to be
> facing problems.
>
> With 2.6.19-rc5-git2
> --------------------
> - echo 3 > /proc/acpi/sleep (Suspend to memory takes place)
> - Press power button (System tries to come back but fails in MPT adapter
> initialization)
>
> With 2.6.19-rc5-git2 + Reloc patches
> ------------------------------------
> - echo 3 > /proc/acpi/sleep (Suspend to memory takes place)
> - Press power button (Fan powers on but nothing additional is displayed on
> serial console.)
>
> Will do a bisect and try to isolate the problem.
>

Ok. In the new code NX bit protection feature is not being enabled and that
seems to be causing the problem. I checked and enabled the NX bit feature
in EFER in wakeup.S and it starts working.

I think my new machine supports NX bit protection feature and if while
resuming if I don't enable that feature back probably it must have caused
a GPF while loading the page tables which have got NX bit set. (A guess).

I know that previous machine I was testing on does not support NX bit
feature and that could be the reason that previous machine did not run into
the problems.

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