lkml.org 
[lkml]   [2010]   [Oct]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch 19/35] fs: icache remove redundant i_sb_list umount locking
On Thu, Oct 21, 2010 at 12:03:45AM +1100, Nick Piggin wrote:

> Where can fsnotify_destroy_mark run concurrently at umount time, can you
> explain? I haven't spotted it yet.

When you destroy the group mark belongs to. Which is not tied to any
specific fs...

Basically, these marks are associated with pairs (inode, group) and
can be kicked out by either side. They pin inodes once set up, without
pinning the superblock down. Main selling point of idiotify, inherited
by fsnotify. That's why we need to go through that list on umount in
the first place - we need to evict that crap, or it'll keep inodes busy.

OTOH, removal of group also needs to kill the subset of marks - ones
belonging to that group... grep for fsnotify_put_group() and look
for the chain through fsnotify_destroy_group() and on to
fsnotify_destroy_mark() and fsnotify_destroy_inode_mark().


\
 
 \ /
  Last update: 2010-10-20 15:29    [W:0.796 / U:0.020 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site