bcachefs: Fix inode early destruction path
authorKent Overstreet <kent.overstreet@linux.dev>
Sun, 21 Apr 2024 02:26:47 +0000 (22:26 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 21 Apr 2024 03:00:59 +0000 (23:00 -0400)
commit0e42f381193d7f9b47922f1c4308e7729a45ba13
treeb070eef0152f4d1eb60ab184900e5f4f4ebfd634
parent85ab365f7cdf2b2a713823a93e7e5e94f0529627
bcachefs: Fix inode early destruction path

discard_new_inode() is the wrong interface to use when we need to free
an inode that was never inserted into the inode hash table; we can
bypass the whole iput() -> evict() path and replace it with
__destroy_inode(); kmem_cache_free() - this fixes a WARN_ON() about
I_NEW.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/fs.c