Pavel Machek
2018-May-24 11:03 UTC
[PATCH v3 09/27] x86/acpi: Adapt assembly for PIE support
On Wed 2018-05-23 12:54:03, Thomas Garnier wrote:> Change the assembly code to use only relative references of symbols for the > kernel to be PIE compatible. > > Position Independent Executable (PIE) support will allow to extended the > KASLR randomization range below the -2G memory limit.What testing did this get?> diff --git a/arch/x86/kernel/acpi/wakeup_64.S b/arch/x86/kernel/acpi/wakeup_64.S > index 50b8ed0317a3..472659c0f811 100644 > --- a/arch/x86/kernel/acpi/wakeup_64.S > +++ b/arch/x86/kernel/acpi/wakeup_64.S > @@ -14,7 +14,7 @@ > * Hooray, we are in Long 64-bit mode (but still running in low memory) > */ > ENTRY(wakeup_long64) > - movq saved_magic, %rax > + movq saved_magic(%rip), %rax > movq $0x123456789abcdef0, %rdx > cmpq %rdx, %rax > jne bogus_64_magicBecause, as comment says, this is rather tricky code. Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 181 bytes Desc: Digital signature URL: <http://lists.linuxfoundation.org/pipermail/virtualization/attachments/20180524/a32427da/attachment.sig>
Thomas Garnier
2018-May-24 16:35 UTC
[PATCH v3 09/27] x86/acpi: Adapt assembly for PIE support
On Thu, May 24, 2018 at 4:03 AM Pavel Machek <pavel at ucw.cz> wrote:> On Wed 2018-05-23 12:54:03, Thomas Garnier wrote: > > Change the assembly code to use only relative references of symbols forthe> > kernel to be PIE compatible. > > > > Position Independent Executable (PIE) support will allow to extended the > > KASLR randomization range below the -2G memory limit.> What testing did this get?Tested boot, hibernation and performance on qemu and dedicated machine.> > diff --git a/arch/x86/kernel/acpi/wakeup_64.Sb/arch/x86/kernel/acpi/wakeup_64.S> > index 50b8ed0317a3..472659c0f811 100644 > > --- a/arch/x86/kernel/acpi/wakeup_64.S > > +++ b/arch/x86/kernel/acpi/wakeup_64.S > > @@ -14,7 +14,7 @@ > > * Hooray, we are in Long 64-bit mode (but still running in lowmemory)> > */ > > ENTRY(wakeup_long64) > > - movq saved_magic, %rax > > + movq saved_magic(%rip), %rax > > movq $0x123456789abcdef0, %rdx > > cmpq %rdx, %rax > > jne bogus_64_magic> Because, as comment says, this is rather tricky code.I agree, I think maintainers feedback is very important for this patchset. Pavel> -- > (english) http://www.livejournal.com/~pavelmachek > (cesky, pictures)http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- Thomas
Pavel Machek
2018-May-25 09:14 UTC
[PATCH v3 09/27] x86/acpi: Adapt assembly for PIE support
On Thu 2018-05-24 09:35:42, Thomas Garnier wrote:> On Thu, May 24, 2018 at 4:03 AM Pavel Machek <pavel at ucw.cz> wrote: > > > On Wed 2018-05-23 12:54:03, Thomas Garnier wrote: > > > Change the assembly code to use only relative references of symbols for > the > > > kernel to be PIE compatible. > > > > > > Position Independent Executable (PIE) support will allow to extended the > > > KASLR randomization range below the -2G memory limit. > > > What testing did this get? > > Tested boot, hibernation and performance on qemu and dedicated machine.Well, this is suspend, not hibernation code. So "sudo pm-suspend" or "echo mem > /sys/power/state" would be good way to test this. Thanks, Pavel> > > diff --git a/arch/x86/kernel/acpi/wakeup_64.S > b/arch/x86/kernel/acpi/wakeup_64.S > > > index 50b8ed0317a3..472659c0f811 100644 > > > --- a/arch/x86/kernel/acpi/wakeup_64.S > > > +++ b/arch/x86/kernel/acpi/wakeup_64.S > > > @@ -14,7 +14,7 @@ > > > * Hooray, we are in Long 64-bit mode (but still running in low > memory) > > > */ > > > ENTRY(wakeup_long64) > > > - movq saved_magic, %rax > > > + movq saved_magic(%rip), %rax > > > movq $0x123456789abcdef0, %rdx > > > cmpq %rdx, %rax > > > jne bogus_64_magic > > > Because, as comment says, this is rather tricky code. > > I agree, I think maintainers feedback is very important for this patchset.-- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 181 bytes Desc: Digital signature URL: <http://lists.linuxfoundation.org/pipermail/virtualization/attachments/20180525/959806e5/attachment-0001.sig>
Possibly Parallel Threads
- [PATCH v3 09/27] x86/acpi: Adapt assembly for PIE support
- [PATCH v3 09/27] x86/acpi: Adapt assembly for PIE support
- [PATCH v3 09/27] x86/acpi: Adapt assembly for PIE support
- [PATCH v3 09/27] x86/acpi: Adapt assembly for PIE support
- [PATCH v3 09/27] x86/acpi: Adapt assembly for PIE support