--- e/fs/ext4/inode.c +++ f/fs/ext4/inode.c @@ -3154,7 +3154,7 @@ static sector_t ext4_bmap(struct address sector_t ret = 0; int err; - inode_lock_shared(inode); + down_read(&EXT4_I(inode)->xattr_sem); /* * We can get here for an inline file via the FIBMAP ioctl */ @@ -3204,7 +3204,7 @@ static sector_t ext4_bmap(struct address ret = iomap_bmap(mapping, block, &ext4_iomap_ops); out: - inode_unlock_shared(inode); + up_read(&EXT4_I(inode)->xattr_sem); return ret; }