linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] rseq/selftests: fix parametrized test with -fpie
@ 2018-09-18 13:53 Mathieu Desnoyers
  2018-09-25 17:39 ` Mathieu Desnoyers
  0 siblings, 1 reply; 8+ messages in thread
From: Mathieu Desnoyers @ 2018-09-18 13:53 UTC (permalink / raw)
  To: Thomas Gleixner
  Cc: linux-kernel, linux-api, Peter Zijlstra, Paul E . McKenney,
	Boqun Feng, Andy Lutomirski, Dave Watson, Paul Turner,
	Andrew Morton, Russell King, Ingo Molnar, H . Peter Anvin,
	Andi Kleen, Chris Lameter, Ben Maurer, Steven Rostedt,
	Josh Triplett, Linus Torvalds, Catalin Marinas, Will Deacon,
	Michael Kerrisk, Joel Fernandes, Mathieu Desnoyers, # v4 . 18,
	Shuah Khan, linux-kselftest

On x86-64, the parametrized selftest code for rseq crashes with a
segmentation fault when compiled with -fpie. This happens when the
param_test binary is loaded at an address beyond 32-bit on x86-64.

The issue is caused by use of a 32-bit register to hold the address
of the loop counter variable.

Fix this by using a 64-bit register to calculate the address of the
loop counter variables as an offset from rip.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: <stable@vger.kernel.org> # v4.18
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Joel Fernandes <joelaf@google.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Dave Watson <davejwatson@fb.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Shuah Khan <shuahkh@osg.samsung.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: linux-kselftest@vger.kernel.org
Cc: "H . Peter Anvin" <hpa@zytor.com>
Cc: Chris Lameter <cl@linux.com>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Michael Kerrisk <mtk.manpages@gmail.com>
Cc: "Paul E . McKenney" <paulmck@linux.vnet.ibm.com>
Cc: Paul Turner <pjt@google.com>
Cc: Boqun Feng <boqun.feng@gmail.com>
Cc: Josh Triplett <josh@joshtriplett.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Ben Maurer <bmaurer@fb.com>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
---
 tools/testing/selftests/rseq/param_test.c | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/tools/testing/selftests/rseq/param_test.c b/tools/testing/selftests/rseq/param_test.c
index 615252331813..4bc071525bf7 100644
--- a/tools/testing/selftests/rseq/param_test.c
+++ b/tools/testing/selftests/rseq/param_test.c
@@ -56,15 +56,13 @@ unsigned int yield_mod_cnt, nr_abort;
 			printf(fmt, ## __VA_ARGS__);	\
 	} while (0)
 
-#if defined(__x86_64__) || defined(__i386__)
+#ifdef __i386__
 
 #define INJECT_ASM_REG	"eax"
 
 #define RSEQ_INJECT_CLOBBER \
 	, INJECT_ASM_REG
 
-#ifdef __i386__
-
 #define RSEQ_INJECT_ASM(n) \
 	"mov asm_loop_cnt_" #n ", %%" INJECT_ASM_REG "\n\t" \
 	"test %%" INJECT_ASM_REG ",%%" INJECT_ASM_REG "\n\t" \
@@ -76,9 +74,16 @@ unsigned int yield_mod_cnt, nr_abort;
 
 #elif defined(__x86_64__)
 
+#define INJECT_ASM_REG_P	"rax"
+#define INJECT_ASM_REG		"eax"
+
+#define RSEQ_INJECT_CLOBBER \
+	, INJECT_ASM_REG_P \
+	, INJECT_ASM_REG
+
 #define RSEQ_INJECT_ASM(n) \
-	"lea asm_loop_cnt_" #n "(%%rip), %%" INJECT_ASM_REG "\n\t" \
-	"mov (%%" INJECT_ASM_REG "), %%" INJECT_ASM_REG "\n\t" \
+	"lea asm_loop_cnt_" #n "(%%rip), %%" INJECT_ASM_REG_P "\n\t" \
+	"mov (%%" INJECT_ASM_REG_P "), %%" INJECT_ASM_REG "\n\t" \
 	"test %%" INJECT_ASM_REG ",%%" INJECT_ASM_REG "\n\t" \
 	"jz 333f\n\t" \
 	"222:\n\t" \
@@ -86,10 +91,6 @@ unsigned int yield_mod_cnt, nr_abort;
 	"jnz 222b\n\t" \
 	"333:\n\t"
 
-#else
-#error "Unsupported architecture"
-#endif
-
 #elif defined(__ARMEL__)
 
 #define RSEQ_INJECT_INPUT \
-- 
2.11.0


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH] rseq/selftests: fix parametrized test with -fpie
  2018-09-18 13:53 [PATCH] rseq/selftests: fix parametrized test with -fpie Mathieu Desnoyers
@ 2018-09-25 17:39 ` Mathieu Desnoyers
  2018-09-27 13:22   ` Steven Rostedt
  0 siblings, 1 reply; 8+ messages in thread
From: Mathieu Desnoyers @ 2018-09-25 17:39 UTC (permalink / raw)
  To: Thomas Gleixner, Shuah Khan, linux-kselftest
  Cc: linux-kernel, linux-api, Peter Zijlstra, Paul E. McKenney,
	Boqun Feng, Andy Lutomirski, Dave Watson, Paul Turner,
	Andrew Morton, Russell King, Ingo Molnar, H. Peter Anvin,
	Andi Kleen, Chris Lameter, Ben Maurer, rostedt, Josh Triplett,
	Linus Torvalds, Catalin Marinas, Will Deacon, Michael Kerrisk,
	Joel Fernandes, stable

----- On Sep 18, 2018, at 9:53 AM, Mathieu Desnoyers mathieu.desnoyers@efficios.com wrote:

> On x86-64, the parametrized selftest code for rseq crashes with a
> segmentation fault when compiled with -fpie. This happens when the
> param_test binary is loaded at an address beyond 32-bit on x86-64.
> 
> The issue is caused by use of a 32-bit register to hold the address
> of the loop counter variable.
> 
> Fix this by using a 64-bit register to calculate the address of the
> loop counter variables as an offset from rip.

Should this fix go through tip or the selftests tree ?

Thanks,

Mathieu

> 
> Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
> Cc: <stable@vger.kernel.org> # v4.18
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Joel Fernandes <joelaf@google.com>
> Cc: Peter Zijlstra <peterz@infradead.org>
> Cc: Catalin Marinas <catalin.marinas@arm.com>
> Cc: Dave Watson <davejwatson@fb.com>
> Cc: Will Deacon <will.deacon@arm.com>
> Cc: Shuah Khan <shuahkh@osg.samsung.com>
> Cc: Andi Kleen <andi@firstfloor.org>
> Cc: linux-kselftest@vger.kernel.org
> Cc: "H . Peter Anvin" <hpa@zytor.com>
> Cc: Chris Lameter <cl@linux.com>
> Cc: Russell King <linux@arm.linux.org.uk>
> Cc: Michael Kerrisk <mtk.manpages@gmail.com>
> Cc: "Paul E . McKenney" <paulmck@linux.vnet.ibm.com>
> Cc: Paul Turner <pjt@google.com>
> Cc: Boqun Feng <boqun.feng@gmail.com>
> Cc: Josh Triplett <josh@joshtriplett.org>
> Cc: Steven Rostedt <rostedt@goodmis.org>
> Cc: Ben Maurer <bmaurer@fb.com>
> Cc: Andy Lutomirski <luto@amacapital.net>
> Cc: Andrew Morton <akpm@linux-foundation.org>
> Cc: Linus Torvalds <torvalds@linux-foundation.org>
> ---
> tools/testing/selftests/rseq/param_test.c | 19 ++++++++++---------
> 1 file changed, 10 insertions(+), 9 deletions(-)
> 
> diff --git a/tools/testing/selftests/rseq/param_test.c
> b/tools/testing/selftests/rseq/param_test.c
> index 615252331813..4bc071525bf7 100644
> --- a/tools/testing/selftests/rseq/param_test.c
> +++ b/tools/testing/selftests/rseq/param_test.c
> @@ -56,15 +56,13 @@ unsigned int yield_mod_cnt, nr_abort;
> 			printf(fmt, ## __VA_ARGS__);	\
> 	} while (0)
> 
> -#if defined(__x86_64__) || defined(__i386__)
> +#ifdef __i386__
> 
> #define INJECT_ASM_REG	"eax"
> 
> #define RSEQ_INJECT_CLOBBER \
> 	, INJECT_ASM_REG
> 
> -#ifdef __i386__
> -
> #define RSEQ_INJECT_ASM(n) \
> 	"mov asm_loop_cnt_" #n ", %%" INJECT_ASM_REG "\n\t" \
> 	"test %%" INJECT_ASM_REG ",%%" INJECT_ASM_REG "\n\t" \
> @@ -76,9 +74,16 @@ unsigned int yield_mod_cnt, nr_abort;
> 
> #elif defined(__x86_64__)
> 
> +#define INJECT_ASM_REG_P	"rax"
> +#define INJECT_ASM_REG		"eax"
> +
> +#define RSEQ_INJECT_CLOBBER \
> +	, INJECT_ASM_REG_P \
> +	, INJECT_ASM_REG
> +
> #define RSEQ_INJECT_ASM(n) \
> -	"lea asm_loop_cnt_" #n "(%%rip), %%" INJECT_ASM_REG "\n\t" \
> -	"mov (%%" INJECT_ASM_REG "), %%" INJECT_ASM_REG "\n\t" \
> +	"lea asm_loop_cnt_" #n "(%%rip), %%" INJECT_ASM_REG_P "\n\t" \
> +	"mov (%%" INJECT_ASM_REG_P "), %%" INJECT_ASM_REG "\n\t" \
> 	"test %%" INJECT_ASM_REG ",%%" INJECT_ASM_REG "\n\t" \
> 	"jz 333f\n\t" \
> 	"222:\n\t" \
> @@ -86,10 +91,6 @@ unsigned int yield_mod_cnt, nr_abort;
> 	"jnz 222b\n\t" \
> 	"333:\n\t"
> 
> -#else
> -#error "Unsupported architecture"
> -#endif
> -
> #elif defined(__ARMEL__)
> 
> #define RSEQ_INJECT_INPUT \
> --
> 2.11.0

-- 
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] rseq/selftests: fix parametrized test with -fpie
  2018-09-25 17:39 ` Mathieu Desnoyers
@ 2018-09-27 13:22   ` Steven Rostedt
  2018-09-27 13:58     ` Shuah Khan
  0 siblings, 1 reply; 8+ messages in thread
From: Steven Rostedt @ 2018-09-27 13:22 UTC (permalink / raw)
  To: Mathieu Desnoyers
  Cc: Thomas Gleixner, Shuah Khan, linux-kselftest, linux-kernel,
	linux-api, Peter Zijlstra, Paul E. McKenney, Boqun Feng,
	Andy Lutomirski, Dave Watson, Paul Turner, Andrew Morton,
	Russell King, Ingo Molnar, H. Peter Anvin, Andi Kleen,
	Chris Lameter, Ben Maurer, Josh Triplett, Linus Torvalds,
	Catalin Marinas, Will Deacon, Michael Kerrisk, Joel Fernandes,
	stable

On Tue, 25 Sep 2018 13:39:36 -0400 (EDT)
Mathieu Desnoyers <mathieu.desnoyers@efficios.com> wrote:

> ----- On Sep 18, 2018, at 9:53 AM, Mathieu Desnoyers mathieu.desnoyers@efficios.com wrote:
> 
> > On x86-64, the parametrized selftest code for rseq crashes with a
> > segmentation fault when compiled with -fpie. This happens when the
> > param_test binary is loaded at an address beyond 32-bit on x86-64.
> > 
> > The issue is caused by use of a 32-bit register to hold the address
> > of the loop counter variable.
> > 
> > Fix this by using a 64-bit register to calculate the address of the
> > loop counter variables as an offset from rip.  
> 
> Should this fix go through tip or the selftests tree ?
> 

I usually have changes like this pulled through Shuah's tree with an
ack from the maintainer of the code that it tests.

-- Steve

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] rseq/selftests: fix parametrized test with -fpie
  2018-09-27 13:22   ` Steven Rostedt
@ 2018-09-27 13:58     ` Shuah Khan
  2018-09-27 18:02       ` Mathieu Desnoyers
  0 siblings, 1 reply; 8+ messages in thread
From: Shuah Khan @ 2018-09-27 13:58 UTC (permalink / raw)
  To: Steven Rostedt, Mathieu Desnoyers
  Cc: Thomas Gleixner, Shuah Khan, linux-kselftest, linux-kernel,
	linux-api, Peter Zijlstra, Paul E. McKenney, Boqun Feng,
	Andy Lutomirski, Dave Watson, Paul Turner, Andrew Morton,
	Russell King, Ingo Molnar, H. Peter Anvin, Andi Kleen,
	Chris Lameter, Ben Maurer, Josh Triplett, Linus Torvalds,
	Catalin Marinas, Will Deacon, Michael Kerrisk, Joel Fernandes,
	stable, Shuah Khan

On 09/27/2018 07:22 AM, Steven Rostedt wrote:
> On Tue, 25 Sep 2018 13:39:36 -0400 (EDT)
> Mathieu Desnoyers <mathieu.desnoyers@efficios.com> wrote:
> 
>> ----- On Sep 18, 2018, at 9:53 AM, Mathieu Desnoyers mathieu.desnoyers@efficios.com wrote:
>>
>>> On x86-64, the parametrized selftest code for rseq crashes with a
>>> segmentation fault when compiled with -fpie. This happens when the
>>> param_test binary is loaded at an address beyond 32-bit on x86-64.
>>>
>>> The issue is caused by use of a 32-bit register to hold the address
>>> of the loop counter variable.
>>>
>>> Fix this by using a 64-bit register to calculate the address of the
>>> loop counter variables as an offset from rip.  
>>
>> Should this fix go through tip or the selftests tree ?
>>
> 
> I usually have changes like this pulled through Shuah's tree with an
> ack from the maintainer of the code that it tests.
> 
> -- Steve
> 

Right that is what I prefer. I usually wait for an Ack. I can pull this
in.

thanks,
-- Shuah

-- 
Shuah Khan
Sr. Linux Kernel Developer
Open Source Innovation Group
Samsung Research America(Silicon Valley)
shuah.kh@samsung.com

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] rseq/selftests: fix parametrized test with -fpie
  2018-09-27 13:58     ` Shuah Khan
@ 2018-09-27 18:02       ` Mathieu Desnoyers
  2018-09-27 18:10         ` Shuah Khan
  2018-09-27 18:18         ` Paul E. McKenney
  0 siblings, 2 replies; 8+ messages in thread
From: Mathieu Desnoyers @ 2018-09-27 18:02 UTC (permalink / raw)
  To: shuah kh
  Cc: rostedt, Thomas Gleixner, Shuah Khan, linux-kselftest,
	linux-kernel, linux-api, Peter Zijlstra, Paul E. McKenney,
	Boqun Feng, Andy Lutomirski, Dave Watson, Paul Turner,
	Andrew Morton, Russell King, Ingo Molnar, H. Peter Anvin,
	Andi Kleen, Chris Lameter, Ben Maurer, Josh Triplett,
	Linus Torvalds, Catalin Marinas, Will Deacon, Michael Kerrisk,
	Joel Fernandes, stable, shuah

----- On Sep 27, 2018, at 9:58 AM, Shuah Khan shuah.kh@samsung.com wrote:

> On 09/27/2018 07:22 AM, Steven Rostedt wrote:
>> On Tue, 25 Sep 2018 13:39:36 -0400 (EDT)
>> Mathieu Desnoyers <mathieu.desnoyers@efficios.com> wrote:
>> 
>>> ----- On Sep 18, 2018, at 9:53 AM, Mathieu Desnoyers
>>> mathieu.desnoyers@efficios.com wrote:
>>>
>>>> On x86-64, the parametrized selftest code for rseq crashes with a
>>>> segmentation fault when compiled with -fpie. This happens when the
>>>> param_test binary is loaded at an address beyond 32-bit on x86-64.
>>>>
>>>> The issue is caused by use of a 32-bit register to hold the address
>>>> of the loop counter variable.
>>>>
>>>> Fix this by using a 64-bit register to calculate the address of the
>>>> loop counter variables as an offset from rip.
>>>
>>> Should this fix go through tip or the selftests tree ?
>>>
>> 
>> I usually have changes like this pulled through Shuah's tree with an
>> ack from the maintainer of the code that it tests.
>> 
>> -- Steve
>> 
> 
> Right that is what I prefer. I usually wait for an Ack. I can pull this
> in.

I am maintainer of the code that it tests as well, so being both author
of the selftest patch and giving an ack to it seems a bit silly. :) Other
rseq co-maintainers could weight in though: Peter, Paul, and Boqun.

Thanks,

Mathieu

> 
> thanks,
> -- Shuah
> 
> --
> Shuah Khan
> Sr. Linux Kernel Developer
> Open Source Innovation Group
> Samsung Research America(Silicon Valley)
> shuah.kh@samsung.com

-- 
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] rseq/selftests: fix parametrized test with -fpie
  2018-09-27 18:02       ` Mathieu Desnoyers
@ 2018-09-27 18:10         ` Shuah Khan
  2018-09-27 18:26           ` Shuah Khan
  2018-09-27 18:18         ` Paul E. McKenney
  1 sibling, 1 reply; 8+ messages in thread
From: Shuah Khan @ 2018-09-27 18:10 UTC (permalink / raw)
  To: Mathieu Desnoyers
  Cc: rostedt, Thomas Gleixner, Shuah Khan, linux-kselftest,
	linux-kernel, linux-api, Peter Zijlstra, Paul E. McKenney,
	Boqun Feng, Andy Lutomirski, Dave Watson, Paul Turner,
	Andrew Morton, Russell King, Ingo Molnar, H. Peter Anvin,
	Andi Kleen, Chris Lameter, Ben Maurer, Josh Triplett,
	Linus Torvalds, Catalin Marinas, Will Deacon, Michael Kerrisk,
	Joel Fernandes, stable, shuah

On 09/27/2018 12:02 PM, Mathieu Desnoyers wrote:
> ----- On Sep 27, 2018, at 9:58 AM, Shuah Khan shuah.kh@samsung.com wrote:
> 
>> On 09/27/2018 07:22 AM, Steven Rostedt wrote:
>>> On Tue, 25 Sep 2018 13:39:36 -0400 (EDT)
>>> Mathieu Desnoyers <mathieu.desnoyers@efficios.com> wrote:
>>>
>>>> ----- On Sep 18, 2018, at 9:53 AM, Mathieu Desnoyers
>>>> mathieu.desnoyers@efficios.com wrote:
>>>>
>>>>> On x86-64, the parametrized selftest code for rseq crashes with a
>>>>> segmentation fault when compiled with -fpie. This happens when the
>>>>> param_test binary is loaded at an address beyond 32-bit on x86-64.
>>>>>
>>>>> The issue is caused by use of a 32-bit register to hold the address
>>>>> of the loop counter variable.
>>>>>
>>>>> Fix this by using a 64-bit register to calculate the address of the
>>>>> loop counter variables as an offset from rip.
>>>>
>>>> Should this fix go through tip or the selftests tree ?
>>>>
>>>
>>> I usually have changes like this pulled through Shuah's tree with an
>>> ack from the maintainer of the code that it tests.
>>>
>>> -- Steve
>>>
>>
>> Right that is what I prefer. I usually wait for an Ack. I can pull this
>> in.
> 
> I am maintainer of the code that it tests as well, so being both author
> of the selftest patch and giving an ack to it seems a bit silly. :) Other
> rseq co-maintainers could weight in though: Peter, Paul, and Boqun.
> 

I was commenting in general, not specific to this patch. No worries. I will
apply this right away.

I have been traveling the last couple of weeks and in the catch up mode still.

thanks,
-- Shuah


>>
>> --
>> Shuah Khan
>> Sr. Linux Kernel Developer
>> Open Source Innovation Group
>> Samsung Research America(Silicon Valley)
>> shuah.kh@samsung.com
> 


-- 
Shuah Khan
Sr. Linux Kernel Developer
Open Source Innovation Group
Samsung Research America(Silicon Valley)
shuah.kh@samsung.com

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] rseq/selftests: fix parametrized test with -fpie
  2018-09-27 18:02       ` Mathieu Desnoyers
  2018-09-27 18:10         ` Shuah Khan
@ 2018-09-27 18:18         ` Paul E. McKenney
  1 sibling, 0 replies; 8+ messages in thread
From: Paul E. McKenney @ 2018-09-27 18:18 UTC (permalink / raw)
  To: Mathieu Desnoyers
  Cc: shuah kh, rostedt, Thomas Gleixner, Shuah Khan, linux-kselftest,
	linux-kernel, linux-api, Peter Zijlstra, Boqun Feng,
	Andy Lutomirski, Dave Watson, Paul Turner, Andrew Morton,
	Russell King, Ingo Molnar, H. Peter Anvin, Andi Kleen,
	Chris Lameter, Ben Maurer, Josh Triplett, Linus Torvalds,
	Catalin Marinas, Will Deacon, Michael Kerrisk, Joel Fernandes,
	stable, shuah

On Thu, Sep 27, 2018 at 02:02:08PM -0400, Mathieu Desnoyers wrote:
> ----- On Sep 27, 2018, at 9:58 AM, Shuah Khan shuah.kh@samsung.com wrote:
> 
> > On 09/27/2018 07:22 AM, Steven Rostedt wrote:
> >> On Tue, 25 Sep 2018 13:39:36 -0400 (EDT)
> >> Mathieu Desnoyers <mathieu.desnoyers@efficios.com> wrote:
> >> 
> >>> ----- On Sep 18, 2018, at 9:53 AM, Mathieu Desnoyers
> >>> mathieu.desnoyers@efficios.com wrote:
> >>>
> >>>> On x86-64, the parametrized selftest code for rseq crashes with a
> >>>> segmentation fault when compiled with -fpie. This happens when the
> >>>> param_test binary is loaded at an address beyond 32-bit on x86-64.
> >>>>
> >>>> The issue is caused by use of a 32-bit register to hold the address
> >>>> of the loop counter variable.
> >>>>
> >>>> Fix this by using a 64-bit register to calculate the address of the
> >>>> loop counter variables as an offset from rip.
> >>>
> >>> Should this fix go through tip or the selftests tree ?
> >>>
> >> 
> >> I usually have changes like this pulled through Shuah's tree with an
> >> ack from the maintainer of the code that it tests.
> >> 
> >> -- Steve
> >> 
> > 
> > Right that is what I prefer. I usually wait for an Ack. I can pull this
> > in.
> 
> I am maintainer of the code that it tests as well, so being both author
> of the selftest patch and giving an ack to it seems a bit silly. :) Other
> rseq co-maintainers could weight in though: Peter, Paul, and Boqun.

Here you go!  ;-)

Acked-by: Paul E. McKenney <paulmck@linux.ibm.com>

> Thanks,
> 
> Mathieu
> 
> > 
> > thanks,
> > -- Shuah
> > 
> > --
> > Shuah Khan
> > Sr. Linux Kernel Developer
> > Open Source Innovation Group
> > Samsung Research America(Silicon Valley)
> > shuah.kh@samsung.com
> 
> -- 
> Mathieu Desnoyers
> EfficiOS Inc.
> http://www.efficios.com
> 


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] rseq/selftests: fix parametrized test with -fpie
  2018-09-27 18:10         ` Shuah Khan
@ 2018-09-27 18:26           ` Shuah Khan
  0 siblings, 0 replies; 8+ messages in thread
From: Shuah Khan @ 2018-09-27 18:26 UTC (permalink / raw)
  To: Mathieu Desnoyers
  Cc: rostedt, Thomas Gleixner, Shuah Khan, linux-kselftest,
	linux-kernel, linux-api, Peter Zijlstra, Paul E. McKenney,
	Boqun Feng, Andy Lutomirski, Dave Watson, Paul Turner,
	Andrew Morton, Russell King, Ingo Molnar, H. Peter Anvin,
	Andi Kleen, Chris Lameter, Ben Maurer, Josh Triplett,
	Linus Torvalds, Catalin Marinas, Will Deacon, Michael Kerrisk,
	Joel Fernandes, stable, Shuah Khan

On 09/27/2018 12:10 PM, Shuah Khan wrote:
> On 09/27/2018 12:02 PM, Mathieu Desnoyers wrote:
>> ----- On Sep 27, 2018, at 9:58 AM, Shuah Khan shuah.kh@samsung.com wrote:
>>
>>> On 09/27/2018 07:22 AM, Steven Rostedt wrote:
>>>> On Tue, 25 Sep 2018 13:39:36 -0400 (EDT)
>>>> Mathieu Desnoyers <mathieu.desnoyers@efficios.com> wrote:
>>>>
>>>>> ----- On Sep 18, 2018, at 9:53 AM, Mathieu Desnoyers
>>>>> mathieu.desnoyers@efficios.com wrote:
>>>>>
>>>>>> On x86-64, the parametrized selftest code for rseq crashes with a
>>>>>> segmentation fault when compiled with -fpie. This happens when the
>>>>>> param_test binary is loaded at an address beyond 32-bit on x86-64.
>>>>>>
>>>>>> The issue is caused by use of a 32-bit register to hold the address
>>>>>> of the loop counter variable.
>>>>>>
>>>>>> Fix this by using a 64-bit register to calculate the address of the
>>>>>> loop counter variables as an offset from rip.
>>>>>
>>>>> Should this fix go through tip or the selftests tree ?
>>>>>
>>>>
>>>> I usually have changes like this pulled through Shuah's tree with an
>>>> ack from the maintainer of the code that it tests.
>>>>
>>>> -- Steve
>>>>
>>>
>>> Right that is what I prefer. I usually wait for an Ack. I can pull this
>>> in.
>>
>> I am maintainer of the code that it tests as well, so being both author
>> of the selftest patch and giving an ack to it seems a bit silly. :) Other
>> rseq co-maintainers could weight in though: Peter, Paul, and Boqun.
>>
> 
> I was commenting in general, not specific to this patch. No worries. I will
> apply this right away.
> 
> I have been traveling the last couple of weeks and in the catch up mode still.
> 

Hmm. this patch doesn't apply to linux-kselftest fixes branch which is at 4.19-rc4.
Also you don't have my current email from getmaintainers.

Could you please rebase and send it to me.

thanks,
-- Shuah


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2018-09-27 18:27 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-09-18 13:53 [PATCH] rseq/selftests: fix parametrized test with -fpie Mathieu Desnoyers
2018-09-25 17:39 ` Mathieu Desnoyers
2018-09-27 13:22   ` Steven Rostedt
2018-09-27 13:58     ` Shuah Khan
2018-09-27 18:02       ` Mathieu Desnoyers
2018-09-27 18:10         ` Shuah Khan
2018-09-27 18:26           ` Shuah Khan
2018-09-27 18:18         ` Paul E. McKenney

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).