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]
Message-Id: <20090205024021.04DDDFC381@magilla.sf.frob.com>
Date:	Wed,  4 Feb 2009 18:40:20 -0800 (PST)
From:	Roland McGrath <roland@...hat.com>
To:	Oleg Nesterov <oleg@...hat.com>
Cc:	Andrew Morton <akpm@...ux-foundation.org>,
	"Eric W. Biederman" <ebiederm@...ssion.com>,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH 4/4] forget_original_parent: cleanup ptrace pathes

> - Fold ptrace_exit() into forget_original_parent(), it is trivial
>   now. More importantly, this makes the code more symmetrical with
>   reparent_thread().

Please don't do this.  The ptrace functions are separated not because they
are large, but because they are the ptrace innards.  We have been moving
away from the core task handling innards having intimate ptrace magic
knowledge directly intertwined, and we don't want to move back the other
way.  In later cleanups, we will eventually separate ptrace linkage from
the tasklist_lock'd parent/child linkage more thoroughly.

> - The same for ptrace_exit_finish(), and "ptrace_" is not correct
>   any longer.
> 
> - "ptrace_dead" doesn't match the reality, rename to "dead_list".

For the same reasons, I am not entirely sanguine about overloading
ptrace_entry for any case not related to ptrace.  We want to be able to
clean up the ptrace data structures in the future such that there may well
not be any such list_head allocated in an untraced task_struct.

This case is sufficiently obscure, I can't see that anyone would really
care about the marginal performance hit for just dropping the lock after
reparent_thread returns true, call release_task(), re-lock and restart the
loop on remaining children.  (And I don't see any atomicity problem with
this unlock/relock.)

> - swap the reparent_thread()'s arguments, just to make it more
>   symmetrical with __ptrace_detach().

No problem there.


Thanks,
Roland
--
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