PS: ceph ->d_revalidate() uses ->s_fs_info and stuff hanging off it (mdsc) and I'm not familiar enough with the codebase to do anything useful with it; AFAICS, there are UAF on fs shutdown, but I'd rather leave that one to ceph folks. NTFS3 ->d_hash() and ->d_compare() do blocking allocations, and that stuff can be called under rcu_read_lock(); ->d_compare() pretty much always is called so...