Re: [tip: core/urgent] rseq: Reject unknown flags on rseq unregister

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



----- On Dec 26, 2019, at 5:32 PM, Mathieu Desnoyers mathieu.desnoyers@xxxxxxxxxxxx wrote:

> ----- On Dec 25, 2019, at 6:39 AM, Borislav Petkov bp@xxxxxxxxx wrote:
> 
>> On Wed, Dec 25, 2019 at 10:38:53AM -0000, tip-bot2 for Mathieu Desnoyers wrote:
>>> The following commit has been merged into the core/urgent branch of tip:
>>> 
>>> Commit-ID:     66528a4575eee9f5a5270219894ab6178f146e84
>>> Gitweb:
>>> https://git.kernel.org/tip/66528a4575eee9f5a5270219894ab6178f146e84
>>> Author:        Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
>>> AuthorDate:    Wed, 11 Dec 2019 11:17:11 -05:00
>>> Committer:     Ingo Molnar <mingo@xxxxxxxxxx>
>>> CommitterDate: Wed, 25 Dec 2019 10:41:20 +01:00
>>> 
>>> rseq: Reject unknown flags on rseq unregister
>>> 
>>> It is preferrable to reject unknown flags within rseq unregistration
>>> rather than to ignore them. It is an oversight caused by the fact that
>>> the check for unknown flags is after the rseq unregister flag check.
>>> 
>>> Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
>>> Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
>>> Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
>>> Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
>>> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
>>> Link:
>>> https://lkml.kernel.org/r/20191211161713.4490-2-mathieu.desnoyers@xxxxxxxxxxxx
>>> Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>
>>> ---
>>>  kernel/rseq.c | 2 ++
>>>  1 file changed, 2 insertions(+)
>>> 
>>> diff --git a/kernel/rseq.c b/kernel/rseq.c
>>> index 27c48eb..a4f86a9 100644
>>> --- a/kernel/rseq.c
>>> +++ b/kernel/rseq.c
>>> @@ -310,6 +310,8 @@ SYSCALL_DEFINE4(rseq, struct rseq __user *, rseq, u32,
>>> rseq_len,
>>>  	int ret;
>>>  
>>>  	if (flags & RSEQ_FLAG_UNREGISTER) {
>>> +		if (flags & ~RSEQ_FLAG_UNREGISTER)
>>> +			return -EINVAL;
>>>  		/* Unregister rseq for current thread. */
>>>  		if (current->rseq != rseq || !current->rseq)
>>>  			return -EINVAL;
>> 
>> Cc: stable perhaps?
> 
> This could indeed be a candidate for stable, even though it's just a stricter
> checking of unknown flags (returning an error rather than ignoring them).
> 
> Adding stable in CC here.

For the records, I had stable in CC in my original patch submission. The stable CC has
been stripped when it was merged into the tip tree.

Thanks,

Mathieu

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

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



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux