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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090119204839.GA21009@us.ibm.com>
Date:	Mon, 19 Jan 2009 14:48:39 -0600
From:	"Serge E. Hallyn" <serue@...ibm.com>
To:	Oleg Nesterov <oleg@...hat.com>
Cc:	Ian Kent <raven@...maw.net>,
	Andrew Morton <akpm@...ux-foundation.org>, hpa@...or.com,
	Pavel Emelyanov <xemul@...nvz.org>,
	Sukadev Bhattiprolu <sukadev@...ux.vnet.ibm.com>,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH] autofs: fix the wrong usage of the deprecated
	task_pgrp_nr()

Quoting Oleg Nesterov (oleg@...hat.com):
> On 01/19, Serge E. Hallyn wrote:
> >
> > Quoting Oleg Nesterov (oleg@...hat.com):
> > > 
> > > Actually, I am very much surprized this one-liner patch has so
> > > many questions. Isn't it "obiously correct" ?
> > 
> > I'm not sure which one-liner you're talking about.  In fact,
> > the patch I'm looking at right now isn't the one i looked at
> > before my last response.  Dangit.
> > 
> > The patch turning the cached pid_t into a struct pid is
> > certainly mostly right.  It shouldn't store a pid_t.
> 
> This is the next patch. This one does
> 
> 	--- CUR/fs/autofs/inode.c~1_AUTOFS	2009-01-12 23:07:46.000000000 +0100
> 	+++ CUR/fs/autofs/inode.c	2009-01-18 06:18:49.000000000 +0100
> 	@@ -78,7 +78,7 @@ static int parse_options(char *options, 
> 	 
> 		*uid = current_uid();
> 		*gid = current_gid();
> 	-	*pgrp = task_pgrp_nr(current);
> 	+	*pgrp = task_pgrp_vnr(current);

Ok, that was the one I had looked at earlier (though now I can't find
it).  But that just seems wrong to me.  We should certainly not be
caching a pid_vnr in the kernel.  That is imo incomparably worse than
storing a pid_nr.

Can we just jump straight to caching the struct pid?

> 		*minproto = *maxproto = AUTOFS_PROTO_VERSION;
> 
> > But as for passing pid_t's in from userspace
> 
> passing pid_t's in from userspace uses current namespace, with
> or without the patch.

Which makes sense on the one hand, but OTOH could be confusing
if as I requested we print out init_pid_ns values.  (sigh)

> > and especially
> > printing them out in error messages, I believe what Ian was
> > trying to do before, which seemed sensible, was to always
> > use values in the init_pid_ns.  After all, if you do a DPRINTK
> > with pid_vnr(somepid), then by the time a human reads the logs
> > the subjective pidns might no longer exist.  So for logs I'd
> > tend to agree with printing out the pid_t in the init_pid_ns.
> 
> OK, may be this makes sense, this was not discussed yet. This
> can be changed. But otoh, if this code runs within the sub
> namespace, then it is not easy to see why oz_mode == true
> if we print the value in init_pid_ns.
> 
> Oleg.

Yes... would it be overkill to just print both?

Or maybe I'm being silly.  Every pidns goes away eventually
including the init_pid_ns :)

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