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: <1193108052.3082.21.camel@raven.themaw.net>
Date:	Tue, 23 Oct 2007 10:54:11 +0800
From:	Ian Kent <raven@...maw.net>
To:	Rik van Riel <riel@...hat.com>
Cc:	Andrew Morton <akpm@...ux-foundation.org>, miklos@...redi.hu,
	linux-kernel@...r.kernel.org, xemul@...nvz.org
Subject: Re: futex strangeness in 2.6.23-mm1/UML

On Mon, 2007-10-22 at 21:38 -0400, Rik van Riel wrote:
> On Mon, 22 Oct 2007 21:11:43 -0400
> Rik van Riel <riel@...hat.com> wrote:
> 
> > I have my systems set up to automount my home directory over
> > NFS when I log in.  When trying to log in to the system with
> > 2.6.23-mm1, I get the messages from above in my syslog, and
> > the NFS filesystem is not automounted.
> > 
> > I am thinking something in autofs or the pid-namespace* patches
> > does not match up and uses a wrong PID number or process pointer
> > when trying to lock things.
> > 
> > Which code is at fault I have no idea...
> 
> I still do not know for sure, but I have found some code that
> puzzles me.
> 
> At fork() time, task->pid is set to task->pid->numbers[0].nr
> 
> On the other hand, fork() returns to the parent process:
> 
> task->pid[PIDTYPE_PID]->numbers[task->pid->level].nr
> 
> I have not unravelled the code enough yet to be sure whether
> this is always the same number, but having a wrong PID number
> somewhere could certainly explain these autofs4 errors:
> 
> Oct 22 14:39:01 kenny automount[2299]: cache_readlock: mapent cache
> rwlock lock failed
> Oct 22 14:39:01 kenny automount[2299]: unexpected pthreads error: 11 at
> 65 in cache.c
> 
> After all, autofs4 puts various kinds of PID information of the
> daemon into the autofs4 waitqueue:
> 
> fs/autofs4/waitq.c:296:
>                 wq->uid = current->uid;
>                 wq->gid = current->gid;
>                 wq->pid = current->pid;
>                 wq->tgid = current->tgid;
> 
> Could this be related?

Probably not wrt the pthreads lock fail.
The value passed to the daemon are used for information purposes.

The pid is used only to log who is asking for the mount.
The uid and gid are used to find user name and group name and the four
bits of user information are used to set values in the environment for
use as macros within the map.

If the values in the wait request are wrong then we probably wouldn't
even know as few people will be even aware they are available.

Ian


-
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