[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <101e123e-9dfa-7c98-b182-e4ef277560f9@embeddedor.com>
Date:   Mon, 20 May 2019 09:26:45 -0500
From:   "Gustavo A. R. Silva" <gustavo@...eddedor.com>
To:     Greg KH <gregkh@...uxfoundation.org>, Pavel Machek <pavel@...x.de>
Cc:     stable@...nel.org, kernel list <linux-kernel@...r.kernel.org>,
        davem@...emloft.net
Subject: Re: net: atm: Spectre v1 fix introduced bug in bcb964012d1b in
 -stable
On 5/20/19 9:00 AM, Greg KH wrote:
> On Mon, May 20, 2019 at 02:40:14PM +0200, Pavel Machek wrote:
>>
>> In lecd_attach, if arg is < 0, it was treated as 0. Spectre v1 fix
>> changed that. Bug does not exist in mainline AFAICT.
>>
>> Signed-off-by: Pavel Machek <pavel@...x.de>
>> # for 4.19.y
>>
>> diff --git a/net/atm/lec.c b/net/atm/lec.c
>> index ad4f829193f0..ed279cd912f4 100644
>> --- a/net/atm/lec.c
>> +++ b/net/atm/lec.c
>> @@ -731,7 +731,7 @@ static int lecd_attach(struct atm_vcc *vcc, int arg)
>>  		i = arg;
>>  	if (arg >= MAX_LEC_ITF)
>>  		return -EINVAL;
>> -	i = array_index_nospec(arg, MAX_LEC_ITF);
>> +	i = array_index_nospec(i, MAX_LEC_ITF);
>>  	if (!dev_lec[i]) {
>>  		int size;
>>  
> 
> Why is this only for 4.19.y?  What is different in Linus's tree that
> makes this not needed there?
> 
The only difference is this clean up:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=fdd1a8103a6df50bdeacd8bb04c3f6976cb9ae41
As Dan says, the code works fine, but the *i* value wasn't being used
anymore, so that piece of code was a bit confusing.
Thanks
--
Gustavo
Powered by blists - more mailing lists
 
