kernel: sulog: Simplify code using vfs_truncate

This commit is contained in:
ShirkNeko
2025-10-23 22:15:44 +08:00
parent 0cf65d71b6
commit 163424673f
4 changed files with 4 additions and 75 deletions

View File

@@ -237,41 +237,4 @@ long ksu_copy_from_user_nofault(void *dst, const void __user *src, size_t size)
return -EFAULT;
return 0;
#endif
}
int ksu_vfs_unlink(struct inode *dir, struct dentry *dentry)
{
#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 6, 0)
struct inode *delegated_inode = NULL;
return vfs_unlink(&nop_mnt_idmap, dir, dentry, &delegated_inode);
#elif LINUX_VERSION_CODE >= KERNEL_VERSION(5, 12, 0)
struct inode *delegated_inode = NULL;
return vfs_unlink(&init_user_ns, dir, dentry, &delegated_inode);
#elif LINUX_VERSION_CODE >= KERNEL_VERSION(5, 10, 0)
struct inode *delegated_inode = NULL;
return vfs_unlink(dir, dentry, &delegated_inode);
#else
return vfs_unlink(dir, dentry);
#endif
}
int ksu_vfs_rename(struct inode *old_dir, struct dentry *old_dentry,
struct inode *new_dir, struct dentry *new_dentry)
{
#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 12, 0)
struct renamedata rd = {
.old_dir = old_dir,
.old_dentry = old_dentry,
.new_dir = new_dir,
.new_dentry = new_dentry,
.delegated_inode = NULL,
.flags = 0,
};
return vfs_rename(&rd);
#elif LINUX_VERSION_CODE >= KERNEL_VERSION(5, 10, 0)
struct inode *delegated_inode = NULL;
return vfs_rename(old_dir, old_dentry, new_dir, new_dentry, &delegated_inode, 0);
#else
return vfs_rename(old_dir, old_dentry, new_dir, new_dentry);
#endif
}