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] [day] [month] [year] [list]
Message-ID: <523147DB.9010500@linux.vnet.ibm.com>
Date:	Thu, 12 Sep 2013 10:19:31 +0530
From:	Hemant <hkshaw@...ux.vnet.ibm.com>
To:	Oleg Nesterov <oleg@...hat.com>
CC:	Anton Arapov <anton@...hat.com>, linux-kernel@...r.kernel.org,
	Mikhail.Kulemin@...ibm.com, srikar@...ux.vnet.ibm.com,
	peterz@...radead.org, mingo@...hat.com, systemtap@...rceware.org,
	masami.hiramatsu.pt@...achi.com
Subject: Re: [PATCH] uprobes: Fix limiting un-nested return probes

Hi Oleg,

On 09/09/2013 08:25 PM, Oleg Nesterov wrote:
> On 09/09, Anton Arapov wrote:
>> On Sun, Sep 08, 2013 at 06:32:32PM +0200, Oleg Nesterov wrote:
>>> Not sure, but I can be easily wrong... afaics we need something like below, no?
>>> Anton?
>> Oleg, your guess is correct.
>>
>> My original intention was to limit by depth the chained only probes. But later,
>> after your review, we've decided /based on safety concerns/ to limit it hard.
> Chained or not, we allocate return_instance every time, so we certainly
> need to account to limit the depth unconditionally. Unless we reuse the
> same return_instance if chained, but this is another story.

Hmm, agreed. Thanks for the description.

>
>> The decrement 'utask->depth--;' in my own tree is above the 'if (!chained)'
>> check. I think it got mangled somehow when I rebased the code before I sent it
>> to lkml.
> OK, thanks, I'll write the changelog and re-send the patch below.
>
>> Anton.
>>
>>
>>> Oleg.
>>>
>>> --- x/kernel/events/uprobes.c
>>> +++ x/kernel/events/uprobes.c
>>> @@ -1682,12 +1682,10 @@ static bool handle_trampoline(struct pt_
>>>   		tmp = ri;
>>>   		ri = ri->next;
>>>   		kfree(tmp);
>>> +		utask->depth--;
>>>
>>>   		if (!chained)
>>>   			break;
>>> -
>>> -		utask->depth--;
>>> -
>>>   		BUG_ON(!ri);
>>>   	}


-- 
Thanks
Hemant

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ