Re: kdevtmpfs oops since yesterdays vfs merge

Dave Jones
2011-07-25T04:59:01Z

On Mon, Jul 25, 2011 at 03:44:44AM +0100, Al Viro wrote:

> > when it triggers the bug_on(), it's that second nodename that is garbage.
>
> Interesting... The next experiment would be to stick BUG_ON(!req.dev)
> into devtmpfs_create_node() right after the assigment to that field.

couldn't get that to trigger.

> We couldn't be hit by the lack of barriers here, could we? Store to
> req.dev happens before spin_unlock(&req_lock), so by the time when
> that request is seen by loop in devtmpfsd() and passed to handle() it
> should be seen - we have grabbed req_lock, found a pointer to req, dropped
> req_lock and called handle(). Should've been enough...
>
> Might be interesting to print &req from devtmpfs_create_node(), both on
> entry and on exit, and print req right before the call of handle()...

Here's latest..

https://s3.amazonaws.com/twitpic/photos/full/355219312.jpg?AWSAccessKeyId=AKIAJF3XCCKACR3QDMOA&Expires=1311570683&Signature=xr3tusulMiV2bIsxux9YNrawUDA%3D

apologies for crappy picture, but it's legible at fullsize..

interesting thing here is that the req that causes the oops, I couldn't
find any call to create_handle for that address, so where devtmpfsd got it
is a mystery. The address is curious too, in that it's way off from all the
reqs created around that time.

I'll add some more printk's to see if I can figure where that's being created.

Dave