Re: [linus:master] [eventfs] 852e46e239: BUG:unable_to_handle_page_fault_for_address

From: Steven Rostedt
Date: Wed Jan 31 2024 - 11:14:04 EST


On Wed, 31 Jan 2024 10:58:47 -0500
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> @@ -788,6 +717,7 @@ static void init_once(void *foo)
> {
> struct tracefs_inode *ti = (struct tracefs_inode *) foo;
>
> + memset(ti, 0, sizeof(*ti));
> inode_init_once(&ti->vfs_inode);
> }
>

Note, that inode_init_once() also does a memset on the entire inode, so the
initial memset is redundant on the inode portion. But I didn't think it was
really worth the time to complicate the code by optimizing it. I guess if I
changed the structure to:

struct tracefs_inode {
+ struct inode vfs_inode;
unsigned long flags;
void *private;
- struct inode vfs_inode;
};

I could have it do:

memset_after(ti, 0, vfs_inode);

But this can be done as a separate clean up and doesn't need to be done now.

-- Steve