Thread (43 messages) 43 messages, 4 authors, 2024-01-31

Re: [PATCH 6/6] eventfs: clean up dentry ops and add revalidate function

From: Linus Torvalds <torvalds@linux-foundation.org>
Date: 2024-01-31 02:38:08
Also in: lkml

On Tue, 30 Jan 2024 at 17:12, Al Viro [off-list ref] wrote:
quoted
+ *
+ * Note that d_revalidate is called potentially under RCU,
+ * so it can't take the eventfs mutex etc. It's fine - if
+ * we open a file just as it's marked dead, things will
+ * still work just fine, and just see the old stale case.
Looks like use after free, unless freeing ei is RCU-delayed...
We hold the ref to the ei in the very dentry that is doing d_revalidate().

So it should be fine. The race is with eventfs marking the ei
'is_freed' (under the mutex that we don't hold here), but when that
happens and we end up still using the dentry, the ei is still there,
all the operations are just going to fail.

             Linus
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help