--- x/fs/f2fs/file.c +++ y/fs/f2fs/file.c @@ -519,25 +519,17 @@ static loff_t f2fs_llseek(struct file *f static int f2fs_file_mmap(struct file *file, struct vm_area_struct *vma) { struct inode *inode = file_inode(file); - int ret = 0; if (unlikely(f2fs_cp_error(F2FS_I_SB(inode)))) return -EIO; - inode_lock(inode); - - if (!f2fs_is_compress_backend_ready(inode)) { - ret = -EOPNOTSUPP; - goto out_unlock; - } + if (!f2fs_is_compress_backend_ready(inode)) + return -EOPNOTSUPP; file_accessed(file); vma->vm_ops = &f2fs_file_vm_ops; set_inode_flag(inode, FI_MMAP_FILE); - -out_unlock: - inode_unlock(inode); - return ret; + return 0; } static int f2fs_file_open(struct inode *inode, struct file *filp)