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:	Sat, 09 Mar 2013 00:33:00 -0800
From:	ebiederm@...ssion.com (Eric W. Biederman)
To:	Rakib Mullick <rakib.mullick@...il.com>
Cc:	Fengguang Wu <fengguang.wu@...el.com>, linux-kernel@...r.kernel.org
Subject: Re: [nsproxy] BUG: unable to handle kernel NULL pointer dereference at 0000000000000024

Rakib Mullick <rakib.mullick@...il.com> writes:

> On Fri, Mar 8, 2013 at 10:01 PM, Eric W. Biederman
> <ebiederm@...ssion.com> wrote:
>>
>> When a new task is created one of two things needs to happen.
>> A) A reference count needs to be added to the current nsproxy.
>> B) B a new nsproxy needs to be created.
>>
>> The way that code works today is far from a shiny example of totally
>> clear code but it is not incorrect.
>>
>> By moving get_nsproxy down below the first return 0, you removed taking
>> the reference count in the one case it is important.
>>
>> Arguably we should apply the patch below for clarity, and I just might
>> queue it up for 3.10.
>>
> This one is much more cleaner. One thing regarding this patch, can we
> check the namespace related flags at copy_namespace() call time at
> copy_process(), also get_nsproxy()? I think this will reduce some
> extra function call overhead and as you've mentioned get_nsproxy() is
> needed at every process creation.

If you can write a benchmark that can tell the difference, and the code
continues to be readable.  It would be worth making the change.

My gut says you are proposing an optimization that won't have
a measurable impact.

Eric
--
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