namei.c (585a78c1f77be305b1f6adad392f16047fb66ffd) | namei.c (39c1ce8eafc0ff64fb9e28536ccc7df6a8e2999d) |
---|---|
1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * Copyright (C) 2012-2013 Samsung Electronics Co., Ltd. 4 */ 5 6#include <linux/iversion.h> 7#include <linux/namei.h> 8#include <linux/slab.h> --- 382 unchanged lines hidden (view full) --- 391 p_dir->size++; 392 size = EXFAT_CLU_TO_B(p_dir->size, sbi); 393 394 /* directory inode should be updated in here */ 395 i_size_write(inode, size); 396 ei->i_size_ondisk += sbi->cluster_size; 397 ei->i_size_aligned += sbi->cluster_size; 398 ei->flags = p_dir->flags; | 1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * Copyright (C) 2012-2013 Samsung Electronics Co., Ltd. 4 */ 5 6#include <linux/iversion.h> 7#include <linux/namei.h> 8#include <linux/slab.h> --- 382 unchanged lines hidden (view full) --- 391 p_dir->size++; 392 size = EXFAT_CLU_TO_B(p_dir->size, sbi); 393 394 /* directory inode should be updated in here */ 395 i_size_write(inode, size); 396 ei->i_size_ondisk += sbi->cluster_size; 397 ei->i_size_aligned += sbi->cluster_size; 398 ei->flags = p_dir->flags; |
399 inode->i_blocks += 1 << sbi->sect_per_clus_bits; | 399 inode->i_blocks += sbi->cluster_size >> 9; |
400 } 401 402 return dentry; 403} 404 405/* 406 * Name Resolution Functions : 407 * Zero if it was successful; otherwise nonzero. --- 138 unchanged lines hidden (view full) --- 546 } 547 memset(&info->crtime, 0, sizeof(info->crtime)); 548 memset(&info->mtime, 0, sizeof(info->mtime)); 549 memset(&info->atime, 0, sizeof(info->atime)); 550out: 551 return ret; 552} 553 | 400 } 401 402 return dentry; 403} 404 405/* 406 * Name Resolution Functions : 407 * Zero if it was successful; otherwise nonzero. --- 138 unchanged lines hidden (view full) --- 546 } 547 memset(&info->crtime, 0, sizeof(info->crtime)); 548 memset(&info->mtime, 0, sizeof(info->mtime)); 549 memset(&info->atime, 0, sizeof(info->atime)); 550out: 551 return ret; 552} 553 |
554static int exfat_create(struct mnt_idmap *idmap, struct inode *dir, | 554static int exfat_create(struct user_namespace *mnt_userns, struct inode *dir, |
555 struct dentry *dentry, umode_t mode, bool excl) 556{ 557 struct super_block *sb = dir->i_sb; 558 struct inode *inode; 559 struct exfat_chain cdir; 560 struct exfat_dir_entry info; 561 loff_t i_pos; 562 int err; --- 266 unchanged lines hidden (view full) --- 829 exfat_truncate_atime(&inode->i_atime); 830 exfat_unhash_inode(inode); 831 exfat_d_version_set(dentry, inode_query_iversion(dir)); 832unlock: 833 mutex_unlock(&EXFAT_SB(sb)->s_lock); 834 return err; 835} 836 | 555 struct dentry *dentry, umode_t mode, bool excl) 556{ 557 struct super_block *sb = dir->i_sb; 558 struct inode *inode; 559 struct exfat_chain cdir; 560 struct exfat_dir_entry info; 561 loff_t i_pos; 562 int err; --- 266 unchanged lines hidden (view full) --- 829 exfat_truncate_atime(&inode->i_atime); 830 exfat_unhash_inode(inode); 831 exfat_d_version_set(dentry, inode_query_iversion(dir)); 832unlock: 833 mutex_unlock(&EXFAT_SB(sb)->s_lock); 834 return err; 835} 836 |
837static int exfat_mkdir(struct mnt_idmap *idmap, struct inode *dir, | 837static int exfat_mkdir(struct user_namespace *mnt_userns, struct inode *dir, |
838 struct dentry *dentry, umode_t mode) 839{ 840 struct super_block *sb = dir->i_sb; 841 struct inode *inode; 842 struct exfat_dir_entry info; 843 struct exfat_chain cdir; 844 loff_t i_pos; 845 int err; --- 434 unchanged lines hidden (view full) --- 1280 * (new_ei is already initialized above code ("if (new_inode)") 1281 */ 1282 new_ei->dir.dir = DIR_DELETED; 1283 } 1284out: 1285 return ret; 1286} 1287 | 838 struct dentry *dentry, umode_t mode) 839{ 840 struct super_block *sb = dir->i_sb; 841 struct inode *inode; 842 struct exfat_dir_entry info; 843 struct exfat_chain cdir; 844 loff_t i_pos; 845 int err; --- 434 unchanged lines hidden (view full) --- 1280 * (new_ei is already initialized above code ("if (new_inode)") 1281 */ 1282 new_ei->dir.dir = DIR_DELETED; 1283 } 1284out: 1285 return ret; 1286} 1287 |
1288static int exfat_rename(struct mnt_idmap *idmap, | 1288static int exfat_rename(struct user_namespace *mnt_userns, |
1289 struct inode *old_dir, struct dentry *old_dentry, 1290 struct inode *new_dir, struct dentry *new_dentry, 1291 unsigned int flags) 1292{ 1293 struct inode *old_inode, *new_inode; 1294 struct super_block *sb = old_dir->i_sb; 1295 loff_t i_pos; 1296 int err; --- 79 unchanged lines hidden --- | 1289 struct inode *old_dir, struct dentry *old_dentry, 1290 struct inode *new_dir, struct dentry *new_dentry, 1291 unsigned int flags) 1292{ 1293 struct inode *old_inode, *new_inode; 1294 struct super_block *sb = old_dir->i_sb; 1295 loff_t i_pos; 1296 int err; --- 79 unchanged lines hidden --- |