Re: [RFC v2 1/1] fs/namespace: defer RCU sync for MNT_DETACH umount

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 30/4/24 21:25, Lucas Karpinski wrote:
On Fri, Apr 26, 2024 at 09:09:41PM +0100, Al Viro wrote:
+		call_rcu(&drelease->rcu, delayed_mount_release);
... which is a bad idea, since call_rcu() callbacks are run
from interrupt context.  Which makes blocking in them a problem.

Thanks for the quick review.

Documentation/RCU/checklist.rst suggests switching to queue_rcu_work()
function in scenarios where the callback function can block. This seems
like it would fix the issue you found, while still providing similar
performance improvements.

You know I've been looking at this and you can see that mntput() will just call

mntput_no_expire() which queues work to do the bulk of the work and returns.


So I'm wondering what would happen to the timing if you simply didn't call the

rcu wait for the lazy umount case and left everything else as it is.


Ian





[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux