fs/9p: fix uninitialized values during inode evict
authorEric Van Hensbergen <ericvh@kernel.org>
Tue, 19 Mar 2024 13:50:32 +0000 (13:50 +0000)
committerEric Van Hensbergen <ericvh@kernel.org>
Mon, 25 Mar 2024 14:16:06 +0000 (14:16 +0000)
commit6630036b7c228f57c7893ee0403e92c2db2cd21d
tree253cc86a28179485f9c37b53723fc7f2b464abc6
parent10211b4a23cf4a3df5c11a10e5b3d371f16a906f
fs/9p: fix uninitialized values during inode evict

If an iget fails due to not being able to retrieve information
from the server then the inode structure is only partially
initialized.  When the inode gets evicted, references to
uninitialized structures (like fscache cookies) were being
made.

This patch checks for a bad_inode before doing anything other
than clearing the inode from the cache.  Since the inode is
bad, it shouldn't have any state associated with it that needs
to be written back (and there really isn't a way to complete
those anyways).

Reported-by: syzbot+eb83fe1cce5833cd66a0@syzkaller.appspotmail.com
Signed-off-by: Eric Van Hensbergen <ericvh@kernel.org>
fs/9p/vfs_inode.c