]> git.dujemihanovic.xyz Git - linux.git/commit
bcachefs: Add missing wakeup to bch2_inode_hash_remove()
authorKent Overstreet <kent.overstreet@linux.dev>
Fri, 4 Oct 2024 23:44:32 +0000 (19:44 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Sat, 5 Oct 2024 00:25:31 +0000 (20:25 -0400)
commit6b63a948a73ba3df0fb3ab0c44807df344bc5bbf
tree948bfe2f0429cb65a42f191ceea24e93757c82a7
parentd28786606a51620df7b7a3e7231338d9bc081656
bcachefs: Add missing wakeup to bch2_inode_hash_remove()

This fixes two different bugs:

- Looser locking with the rhashtable means we need to recheck if the
  inode is still hashed after prepare_to_wait(), and add a corresponding
  wakeup after removing from the hash table.

da18ecbf0fb6 ("fs: add i_state helpers") changed the bit waitqueues
  used for inodes, and bcachefs wasn't updated and thus broke; this
  updates bcachefs to the new helper.

Fixes: 112d21fd1a12 ("bcachefs: switch to rhashtable for vfs inodes hash")
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/fs.c