Re: Important for fs devs: rcu-walk merged upstream

From: Nick Piggin
Date: Tue Jan 11 2011 - 07:57:35 EST


On Tuesday, January 11, 2011, J. R. Okajima <hooanon05@xxxxxxxxxxx> wrote:
>
> Nick Piggin:
>> This is a big and complex change by any measure, so
>> please don't be afraid to ask for help or clarification. I'd
>> also really like to be able to update documentation
>> based on questions from fs maintainers (in and out of
>> tree) who are trying to follow it and bring their code up to
>> speed.
>
> Question about what d_lock protects.
> Can we skip d_lock when we access d_inode and d_name during its parent
> i_mutex is held?

That is a good observation. I think we are ok here because parent
mutex should stabilize children names and linkages.

But the documentation for a lot of locking is not complete. It would
be nice to improve.


> Should these BUG_ON be placed after d_lock?
>
> void dentry_update_name_case(struct dentry *dentry, struct qstr *name)
> {
>        BUG_ON(!mutex_is_locked(&dentry->d_inode->i_mutex));
>        BUG_ON(dentry->d_name.len != name->len); /* d_lookup gives this */
>
>        spin_lock(&dentry->d_lock);
>        :::
>
>
> J. R. Okajima
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/