Messages in this thread | | | Date | Sun, 29 Sep 2013 07:06:01 +0100 | From | Al Viro <> | Subject | Re: [rfc][possible solution] RCU vfsmounts |
| |
On Sat, Sep 28, 2013 at 01:43:49PM -0700, Linus Torvalds wrote:
> Sounds reasonable to to me.
Sigh... Looks like there's a lot of fun in shrink_dcache_for_umount() - at the very least, it needs to bump ->d_seq on everything, because with that change we *can* walk into a filesystem in the middle of that. We obviously don't want to slap rcu_barrier() into the final mntput() - it's far too costly; even one in deactivate_locked_super() (in the wrong place and gone since a while back) had been causing problems.
Moreover, any filesystem that has e.g. ->d_hash() use an object hanging off private data of superblock and freed by its ->kill_sb() before generic_shutdown_super() will have an additional set of PITA; there shouldn't be many of those, though.
Oh, well - this is going to be a fun series, by the look of it...
| |