Re: [for-linus][PATCH 0/2] eventfs: Fixes for v6.7-rc2

From: Steven Rostedt
Date: Mon Nov 20 2023 - 18:53:27 EST


On Mon, 20 Nov 2023 18:15:53 -0500
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> A couple of fixes to eventfs:
>
> - With the usage of simple_recursive_remove() recommended by Al Viro,
> the code should not be calling "d_invalidate()" itself. Doing so
> is causing crashes. The code was calling d_invalidate() on the race
> of trying to look up a file while the parent was being deleted.
> This was detected, and the added dentry was having d_invalidate() called
> on it, but the deletion of the directory was also calling d_invalidate()
> on that same dentry.
>
> - A fix to not free the eventfs_inode (ei) until the last dput() was called
> on its ei->dentry made the ei->dentry exist even after it was marked
> for free by setting the ei->is_freed. But code elsewhere still was
> checking if ei->dentry was NULL if ei->is_freed is set and would
> trigger WARN_ON if that was the case. That's no longer true and there
> should not be any warnings when it is true.
>
> Steven Rostedt (Google) (2):
> eventfs: Remove expectation that ei->is_freed means ei->dentry == NULL
> eventfs: Do not invalidate dentry in create_file/dir_dentry()
>
> ----
> fs/tracefs/event_inode.c | 41 ++++++++++++++++++-----------------------
> 1 file changed, 18 insertions(+), 23 deletions(-)

Oops, used the "for-linus" script when this was suppose to be just a normal
"PATCH" script :-p

-- Steve