Hi! > o Moved wakeup_level4_pgt into the wakeup routine so we can > run the kernel above 4G. > > o Now we first go to 64bit mode and continue to run from trampoline and > then then start accessing kernel symbols and restore processor context. > This enables us to resume even in relocatable kernel context when > kernel might not be loaded at physical addr it has been compiled for. > > o Removed the need for modifying any existing kernel page table. > > o Increased the size of the wakeup routine to 8K. This is required as > wake page tables are on trampoline itself and they got to be at 4K > boundary, hence one page is not sufficient. > > Signed-off-by: Eric W. Biederman <[EMAIL PROTECTED]> > Signed-off-by: Vivek Goyal <[EMAIL PROTECTED]>
> + if ((&wakeup_end - &wakeup_start) > (PAGE_SIZE*2)) > printk(KERN_CRIT > - "ACPI: Wakeup code way too big, will crash on attempt to > suspend\n"); > + "ACPI: Wakeup code way too big, will crash on attempt" > + " to suspend\n"); Hmm, if you split it like printk(KERN_CRIT "ACPI: Wakeup code way too big, will crash" "on attempt to suspend\n"); ...you'll still keep 80-column rule while keeping it readable. > @@ -159,11 +159,11 @@ wakeup_32: > */ > > /* Finally jump in 64bit mode */ > - ljmp *(wakeup_long64_vector - __START_KERNEL_map) > + ljmp *(wakeup_long64_vector - wakeup_code)(%esi) spaces vs. tabs problem. Otherwise looks good. ACK if it was tested. Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/