Re: [PATCH 01/27] vfs, afs, ext4: Make the inode hash table RCU searchable

2020-05-31 Thread David Howells
Al Viro wrote: > > + * The @test function is not permitted to take a ref on any inode presented > > + * unless the caller is holding the inode hashtable lock. It is also not > > + * permitted to sleep, since it may be called with the RCU read lock held. > > + * > > + * The caller must hold

Re: [PATCH 01/27] vfs, afs, ext4: Make the inode hash table RCU searchable

2020-05-31 Thread Al Viro
On Fri, May 29, 2020 at 11:00:07PM +0100, David Howells wrote: > @@ -1245,15 +1282,9 @@ static int test_inode_iunique(struct super_block *sb, > unsigned long ino) > struct inode *inode; > > spin_lock(_hash_lock); > - hlist_for_each_entry(inode, b, i_hash) { > - if

[PATCH 01/27] vfs, afs, ext4: Make the inode hash table RCU searchable

2020-05-29 Thread David Howells
Make the inode hash table RCU searchable so that searches that want to access or modify an inode without taking a ref on that inode can do so without taking the inode hash table lock. The main thing this requires is some RCU annotation on the list manipulation operations. Inodes are already