lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 08 May 2024 08:16:02 +0200
From: Anna-Maria Behnsen <anna-maria@...utronix.de>
To: Frederic Weisbecker <frederic@...nel.org>, Levi Yun <ppbuk5246@...il.com>
Cc: tglx@...utronix.de, Markus.Elfring@....de, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3] time/timgr: Fix wrong reference when level 0 group
 allocation failed

Frederic Weisbecker <frederic@...nel.org> writes:

> Le Mon, May 06, 2024 at 05:10:59AM +0100, Levi Yun a écrit :
>> When tmigr_setup_groups() failed level 0 group allocation,
>> wrong reference happens on local stack array while intializing timer hierarchy.
>> 
>> To prevent this, Check loop condition first before initializing timer hierarchy.
>> 
>> Fixes: 7ee988770326 ("timers: Implement the hierarchical pull model")
>> Signed-off-by: Levi Yun <ppbuk5246@...il.com>
>> ---
>> v3:
>>     - Fix typo.
>> 
>> v2:
>> 	- Modify commit message.
>> 
>>  kernel/time/timer_migration.c | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>> 
>> diff --git a/kernel/time/timer_migration.c b/kernel/time/timer_migrationc
>> index ccba875d2234..84413114db5c 100644
>> --- a/kernel/time/timer_migration.c
>> +++ b/kernel/time/timer_migration.c
>> @@ -1596,7 +1596,7 @@ static int tmigr_setup_groups(unsigned int cpu, unsigned int node)
>> 
>>  	} while (i < tmigr_hierarchy_levels);
>> 
>> -	do {
>> +	while (i > 0) {
>>  		group = stack[--i];
>> 
>>  		if (err < 0) {
>> @@ -1645,7 +1645,7 @@ static int tmigr_setup_groups(unsigned int cpu, unsigned int node)
>>  				tmigr_connect_child_parent(child, group);
>>  			}
>>  		}
>> -	} while (i > 0);
>> +	}
>
> Looks good to me. But let's wait for Anna-Maria's second look. The group setup
> is not my favourite area...
>

Thanks for the fix!

Reviewed-by: Anna-Maria Behnsen <anna-maria@...utronix.de>


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ