aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/fs/inode.c
diff options
context:
space:
mode:
authorJiri Kosina <jkosina@suse.cz>2021-11-05 12:10:27 +0100
committerJiri Kosina <jkosina@suse.cz>2021-11-05 12:10:27 +0100
commit820e9906cf64142169134f35b996108303cf22ca (patch)
tree89f8831fb39c59aba208395d91e25ab4b26f473f /fs/inode.c
parentMerge branch 'for-5.16/apple' into for-linus (diff)
parentHID: hid-asus.c: Maps key 0x35 (display off) to KEY_SCREENLOCK (diff)
downloadwireguard-linux-820e9906cf64142169134f35b996108303cf22ca.tar.xz
wireguard-linux-820e9906cf64142169134f35b996108303cf22ca.zip
Merge branch 'for-5.16/asus' into for-linus
Diffstat (limited to 'fs/inode.c')
-rw-r--r--fs/inode.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/fs/inode.c b/fs/inode.c
index 84c528cd1955..ed0cab8a32db 100644
--- a/fs/inode.c
+++ b/fs/inode.c
@@ -190,8 +190,10 @@ int inode_init_always(struct super_block *sb, struct inode *inode)
mapping_set_gfp_mask(mapping, GFP_HIGHUSER_MOVABLE);
mapping->private_data = NULL;
mapping->writeback_index = 0;
- __init_rwsem(&mapping->invalidate_lock, "mapping.invalidate_lock",
- &sb->s_type->invalidate_lock_key);
+ init_rwsem(&mapping->invalidate_lock);
+ lockdep_set_class_and_name(&mapping->invalidate_lock,
+ &sb->s_type->invalidate_lock_key,
+ "mapping.invalidate_lock");
inode->i_private = NULL;
inode->i_mapping = mapping;
INIT_HLIST_HEAD(&inode->i_dentry); /* buggered by rcu freeing */
@@ -770,7 +772,7 @@ static enum lru_status inode_lru_isolate(struct list_head *item,
return LRU_ROTATE;
}
- if (inode_has_buffers(inode) || inode->i_data.nrpages) {
+ if (inode_has_buffers(inode) || !mapping_empty(&inode->i_data)) {
__iget(inode);
spin_unlock(&inode->i_lock);
spin_unlock(lru_lock);