Displaying 20 results from an estimated 68 matches for "thgarnie".
2017 Oct 05
2
[RFC v3 20/27] x86/ftrace: Adapt function tracing for PIE support
On Thu, Oct 5, 2017 at 6:06 AM, Steven Rostedt <rostedt at goodmis.org> wrote:
> On Wed, 4 Oct 2017 14:19:56 -0700
> Thomas Garnier <thgarnie at google.com> wrote:
>
>> When using -fPIE/PIC with function tracing, the compiler generates a
>> call through the GOT (call *__fentry__ at GOTPCREL). This instruction
>> takes 6 bytes instead of 5 on the usual relative call.
>>
>> With this change, function tra...
2017 Oct 05
2
[RFC v3 20/27] x86/ftrace: Adapt function tracing for PIE support
On Thu, Oct 5, 2017 at 6:06 AM, Steven Rostedt <rostedt at goodmis.org> wrote:
> On Wed, 4 Oct 2017 14:19:56 -0700
> Thomas Garnier <thgarnie at google.com> wrote:
>
>> When using -fPIE/PIC with function tracing, the compiler generates a
>> call through the GOT (call *__fentry__ at GOTPCREL). This instruction
>> takes 6 bytes instead of 5 on the usual relative call.
>>
>> With this change, function tra...
2019 May 27
1
[PATCH v7 11/12] x86/paravirt: Adapt assembly for PIE support
On 21/05/2019 01:19, Thomas Garnier wrote:
> From: Thomas Garnier <thgarnie at google.com>
>
> if PIE is enabled, switch the paravirt assembly constraints to be
> compatible. The %c/i constrains generate smaller code so is kept by
> default.
>
> Position Independent Executable (PIE) support will allow to extend the
> KASLR randomization range belo...
2017 Oct 20
3
[PATCH v1 06/27] x86/entry/64: Adapt assembly for PIE support
On Fri, Oct 20, 2017 at 1:26 AM, Ingo Molnar <mingo at kernel.org> wrote:
>
> * Thomas Garnier <thgarnie at google.com> 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...
2017 Oct 20
3
[PATCH v1 06/27] x86/entry/64: Adapt assembly for PIE support
On Fri, Oct 20, 2017 at 1:26 AM, Ingo Molnar <mingo at kernel.org> wrote:
>
> * Thomas Garnier <thgarnie at google.com> 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...
2019 May 20
3
[PATCH v7 00/12] x86: PIE support to extend KASLR randomization
Splitting the previous serie in two. This part contains assembly code
changes required for PIE but without any direct dependencies with the
rest of the patchset.
Changes:
- patch v7 (assembly):
- Split patchset and reorder changes.
- patch v6:
- Rebase on latest changes in jump tables and crypto.
- Fix wording on couple commits.
- Revisit checkpatch warnings.
- Moving to
2018 May 23
2
[PATCH v3 23/27] x86/modules: Adapt module loading for PIE support
...upport will allow to extended the
will allow us to extend the
> KASLR randomization range below the -2G memory limit.
Does that say "below th negative 2G memory limit"?
I don't get it.
>
> Signed-off-by: Thomas Garnier <thgarnie at google.com>
> ---
> arch/x86/Makefile | 4 +
> arch/x86/include/asm/module.h | 11 ++
> arch/x86/include/asm/sections.h | 4 +
> arch/x86/kernel/module.c | 181 +++++++++++++++++++++++++++++++-
> arch/x86/kernel/module.lds | 3 +
> 5 fi...
2018 May 23
2
[PATCH v3 23/27] x86/modules: Adapt module loading for PIE support
...upport will allow to extended the
will allow us to extend the
> KASLR randomization range below the -2G memory limit.
Does that say "below th negative 2G memory limit"?
I don't get it.
>
> Signed-off-by: Thomas Garnier <thgarnie at google.com>
> ---
> arch/x86/Makefile | 4 +
> arch/x86/include/asm/module.h | 11 ++
> arch/x86/include/asm/sections.h | 4 +
> arch/x86/kernel/module.c | 181 +++++++++++++++++++++++++++++++-
> arch/x86/kernel/module.lds | 3 +
> 5 fi...
2018 May 24
2
[PATCH v3 11/27] x86/power/64: Adapt assembly for PIE support
...; 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.
>
> Signed-off-by: Thomas Garnier <thgarnie at google.com>
Again, was this tested?
> diff --git a/arch/x86/power/hibernate_asm_64.S b/arch/x86/power/hibernate_asm_64.S
> index ce8da3a0412c..6fdd7bbc3c33 100644
> --- a/arch/x86/power/hibernate_asm_64.S
> +++ b/arch/x86/power/hibernate_asm_64.S
> @@ -24,7 +24,7 @@
> #in...
2018 May 24
2
[PATCH v3 11/27] x86/power/64: Adapt assembly for PIE support
...; 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.
>
> Signed-off-by: Thomas Garnier <thgarnie at google.com>
Again, was this tested?
> diff --git a/arch/x86/power/hibernate_asm_64.S b/arch/x86/power/hibernate_asm_64.S
> index ce8da3a0412c..6fdd7bbc3c33 100644
> --- a/arch/x86/power/hibernate_asm_64.S
> +++ b/arch/x86/power/hibernate_asm_64.S
> @@ -24,7 +24,7 @@
> #in...
2017 Oct 11
1
[PATCH v1 06/27] x86/entry/64: Adapt assembly for PIE support
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.
Signed-off-by: Thomas Garnier <thgarnie at google.com>
---
arch/x86/entry/entry_64.S | 22 +++++++++++++++-------
1 file changed, 15 insertions(+), 7 deletions(-)
diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S
index 49167258d587..15bd5530d2ae 100644
--- a/arch/x86/entry/entry_64.S
+++ b/arch/x86/entry/entry_64.S...
2019 Jul 31
2
[PATCH v9 10/11] x86/paravirt: Adapt assembly for PIE support
...t assembly constraints to be
> compatible. The %c/i constrains generate smaller code so is kept by
> default.
>
> Position Independent Executable (PIE) support will allow to extend the
> KASLR randomization range below 0xffffffff80000000.
>
> Signed-off-by: Thomas Garnier <thgarnie at chromium.org>
> Acked-by: Juergen Gross <jgross at suse.com>
> ---
> arch/x86/include/asm/paravirt_types.h | 25 +++++++++++++++++++++----
> 1 file changed, 21 insertions(+), 4 deletions(-)
>
> diff --git a/arch/x86/include/asm/paravirt_types.h b/arch/x86/include/asm...
2019 Jul 31
2
[PATCH v9 10/11] x86/paravirt: Adapt assembly for PIE support
...t assembly constraints to be
> compatible. The %c/i constrains generate smaller code so is kept by
> default.
>
> Position Independent Executable (PIE) support will allow to extend the
> KASLR randomization range below 0xffffffff80000000.
>
> Signed-off-by: Thomas Garnier <thgarnie at chromium.org>
> Acked-by: Juergen Gross <jgross at suse.com>
> ---
> arch/x86/include/asm/paravirt_types.h | 25 +++++++++++++++++++++----
> 1 file changed, 21 insertions(+), 4 deletions(-)
>
> diff --git a/arch/x86/include/asm/paravirt_types.h b/arch/x86/include/asm...
2018 May 23
33
[PATCH v3 00/27] x86: PIE support and option to extend KASLR randomization
Changes:
- patch v3:
- Update on message to describe longer term PIE goal.
- Minor change on ftrace if condition.
- Changed code using xchgq.
- patch v2:
- Adapt patch to work post KPTI and compiler changes
- Redo all performance testing with latest configs and compilers
- Simplify mov macro on PIE (MOVABS now)
- Reduce GOT footprint
- patch v1:
- Simplify ftrace
2017 Oct 05
0
[RFC v3 20/27] x86/ftrace: Adapt function tracing for PIE support
On Thu, 5 Oct 2017 09:01:14 -0700
Thomas Garnier <thgarnie at google.com> wrote:
> On Thu, Oct 5, 2017 at 6:06 AM, Steven Rostedt <rostedt at goodmis.org> wrote:
> > On Wed, 4 Oct 2017 14:19:56 -0700
> > Thomas Garnier <thgarnie at google.com> wrote:
> >
> >> When using -fPIE/PIC with function tracing, the c...
2017 Oct 20
0
[PATCH v1 06/27] x86/entry/64: Adapt assembly for PIE support
* Thomas Garnier <thgarnie at google.com> 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.
>
> Sign...
2019 May 20
0
[PATCH v7 11/12] x86/paravirt: Adapt assembly for PIE support
From: Thomas Garnier <thgarnie at google.com>
if PIE is enabled, switch the paravirt assembly constraints to be
compatible. The %c/i constrains generate smaller code so is kept by
default.
Position Independent Executable (PIE) support will allow to extend the
KASLR randomization range below 0xffffffff80000000.
Signed-off-b...
2019 Dec 23
1
[PATCH v10 10/11] x86/paravirt: Adapt assembly for PIE support
...t assembly constraints to be
> compatible. The %c/i constrains generate smaller code so is kept by
> default.
>
> Position Independent Executable (PIE) support will allow to extend the
> KASLR randomization range below 0xffffffff80000000.
>
> Signed-off-by: Thomas Garnier <thgarnie at chromium.org>
> Acked-by: Juergen Gross <jgross at suse.com>
> ---
> arch/x86/include/asm/paravirt_types.h | 32 +++++++++++++++++++++++----
> 1 file changed, 28 insertions(+), 4 deletions(-)
More missed feedback:
https://lkml.kernel.org/r/CAJcbSZG-JhBC9b1JMv1zq2r5uRQipYL...
2018 May 24
1
[PATCH v3 21/27] x86/ftrace: Adapt function tracing for PIE support
...> > so ftrace can handle the previous 5-bytes as before.
> > >
> > > Position Independent Executable (PIE) support will allow to extended
the
> > > KASLR randomization range below the -2G memory limit.
> > >
> > > Signed-off-by: Thomas Garnier <thgarnie at google.com>
> > > ---
> > > arch/x86/include/asm/ftrace.h | 6 +++--
> > > arch/x86/include/asm/sections.h | 4 ++++
> > > arch/x86/kernel/ftrace.c | 42
+++++++++++++++++++++++++++++++--
> > > 3 files changed, 48 insertions(+), 4 delet...
2017 Oct 04
28
x86: PIE support and option to extend KASLR randomization
These patches make the changes necessary to build the kernel as Position
Independent Executable (PIE) on x86_64. A PIE kernel can be relocated below
the top 2G of the virtual address space. It allows to optionally extend the
KASLR randomization range from 1G to 3G.
Thanks a lot to Ard Biesheuvel & Kees Cook on their feedback on compiler
changes, PIE support and KASLR in general. Thanks to