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
| ||
|
Date: Tue, 22 Mar 2011 01:08:21 -0400 From: Ben Blum <bblum@...rew.cmu.edu> To: Ben Blum <bblum@...rew.cmu.edu> Cc: Paul Menage <menage@...gle.com>, linux-kernel@...r.kernel.org, containers@...ts.linux-foundation.org, akpm@...ux-foundation.org, ebiederm@...ssion.com, lizf@...fujitsu.com, matthltc@...ibm.com, oleg@...hat.com, David Rientjes <rientjes@...gle.com>, Miao Xie <miaox@...fujitsu.com> Subject: Re: [PATCH v8 3/3] cgroups: make procs file writable On Thu, Mar 10, 2011 at 01:18:31AM -0500, Ben Blum wrote: > > > + ? ? ? ? ? ? ? ? ? ? ? /* optimization for the single-task-only case */ > > > + ? ? ? ? ? ? ? ? ? ? ? rcu_read_unlock(); > > > + ? ? ? ? ? ? ? ? ? ? ? cgroup_unlock(); > > > ? ? ? ? ? ? ? ? ? ? ? ?return -ESRCH; > > > ? ? ? ? ? ? ? ?} > > > > > > + ? ? ? ? ? ? ? /* > > > + ? ? ? ? ? ? ? ?* even if we're attaching all tasks in the thread group, we > > > + ? ? ? ? ? ? ? ?* only need to check permissions on one of them. > > > + ? ? ? ? ? ? ? ?*/ > > > ? ? ? ? ? ? ? ?tcred = __task_cred(tsk); > > > ? ? ? ? ? ? ? ?if (cred->euid && > > > ? ? ? ? ? ? ? ? ? ?cred->euid != tcred->uid && > > > ? ? ? ? ? ? ? ? ? ?cred->euid != tcred->suid) { > > > ? ? ? ? ? ? ? ? ? ? ? ?rcu_read_unlock(); > > > + ? ? ? ? ? ? ? ? ? ? ? cgroup_unlock(); > > > ? ? ? ? ? ? ? ? ? ? ? ?return -EACCES; > > > > Maybe turn these returns into "goto out;" statements and put the > > unlock after the out: label? > > > > Maybe; I didn't look too hard at that function. If I revise the patch I > can do this, though. Looking back, I think I like it the way it is. Coalescing those unlock paths would make it less clear... rcu_read is unlocked in the middle of the function (on the success path), so having a bailout path moves the failure path far removed from where it's relevant. -- Ben -- 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