Unverified Commit 8190db20 authored by Christian Brauner's avatar Christian Brauner
Browse files

Merge patch series "Fix the return type of several functions from long to int"

Yuichiro Tsuji <yuichtsu@amazon.com> says:

These patches fix the return type of several functions from long to int
to match its actual behavior.

* patches from https://lore.kernel.org/r/20250121070844.4413-1-yuichtsu@amazon.com:
  ioctl: Fix return type of several functions from long to int
  open: Fix return type of several functions from long to int

Link: https://lore.kernel.org/r/20250121070844.4413-1-yuichtsu@amazon.com


Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
parents d6ff4c8f f326565c
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -187,8 +187,8 @@ extern struct open_how build_open_how(int flags, umode_t mode);
extern int build_open_flags(const struct open_how *how, struct open_flags *op);
struct file *file_close_fd_locked(struct files_struct *files, unsigned fd);

long do_ftruncate(struct file *file, loff_t length, int small);
long do_sys_ftruncate(unsigned int fd, loff_t length, int small);
int do_ftruncate(struct file *file, loff_t length, int small);
int do_sys_ftruncate(unsigned int fd, loff_t length, int small);
int chmod_common(const struct path *path, umode_t mode);
int do_fchownat(int dfd, const char __user *filename, uid_t user, gid_t group,
		int flag);
+5 −5
Original line number Diff line number Diff line
@@ -41,7 +41,7 @@
 *
 * Returns 0 on success, -errno on error.
 */
long vfs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
int vfs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
{
	int error = -ENOTTY;

@@ -228,7 +228,7 @@ static int ioctl_fiemap(struct file *filp, struct fiemap __user *ufiemap)
	return error;
}

static long ioctl_file_clone(struct file *dst_file, unsigned long srcfd,
static int ioctl_file_clone(struct file *dst_file, unsigned long srcfd,
			    u64 off, u64 olen, u64 destoff)
{
	CLASS(fd, src_file)(srcfd);
@@ -248,7 +248,7 @@ static long ioctl_file_clone(struct file *dst_file, unsigned long srcfd,
	return ret;
}

static long ioctl_file_clone_range(struct file *file,
static int ioctl_file_clone_range(struct file *file,
				  struct file_clone_range __user *argp)
{
	struct file_clone_range args;
+10 −10
Original line number Diff line number Diff line
@@ -67,11 +67,11 @@ int do_truncate(struct mnt_idmap *idmap, struct dentry *dentry,
	return ret;
}

long vfs_truncate(const struct path *path, loff_t length)
int vfs_truncate(const struct path *path, loff_t length)
{
	struct mnt_idmap *idmap;
	struct inode *inode;
	long error;
	int error;

	inode = path->dentry->d_inode;

@@ -123,7 +123,7 @@ long vfs_truncate(const struct path *path, loff_t length)
}
EXPORT_SYMBOL_GPL(vfs_truncate);

long do_sys_truncate(const char __user *pathname, loff_t length)
int do_sys_truncate(const char __user *pathname, loff_t length)
{
	unsigned int lookup_flags = LOOKUP_FOLLOW;
	struct path path;
@@ -157,7 +157,7 @@ COMPAT_SYSCALL_DEFINE2(truncate, const char __user *, path, compat_off_t, length
}
#endif

long do_ftruncate(struct file *file, loff_t length, int small)
int do_ftruncate(struct file *file, loff_t length, int small)
{
	struct inode *inode;
	struct dentry *dentry;
@@ -196,7 +196,7 @@ long do_ftruncate(struct file *file, loff_t length, int small)
	return error;
}

long do_sys_ftruncate(unsigned int fd, loff_t length, int small)
int do_sys_ftruncate(unsigned int fd, loff_t length, int small)
{
	if (length < 0)
		return -EINVAL;
@@ -251,7 +251,7 @@ COMPAT_SYSCALL_DEFINE3(ftruncate64, unsigned int, fd,
int vfs_fallocate(struct file *file, int mode, loff_t offset, loff_t len)
{
	struct inode *inode = file_inode(file);
	long ret;
	int ret;
	loff_t sum;

	if (offset < 0 || len <= 0)
@@ -460,7 +460,7 @@ static const struct cred *access_override_creds(void)
	return override_creds(override_cred);
}

static long do_faccessat(int dfd, const char __user *filename, int mode, int flags)
static int do_faccessat(int dfd, const char __user *filename, int mode, int flags)
{
	struct path path;
	struct inode *inode;
@@ -1408,7 +1408,7 @@ struct file *file_open_root(const struct path *root,
}
EXPORT_SYMBOL(file_open_root);

static long do_sys_openat2(int dfd, const char __user *filename,
static int do_sys_openat2(int dfd, const char __user *filename,
			  struct open_how *how)
{
	struct open_flags op;
@@ -1436,7 +1436,7 @@ static long do_sys_openat2(int dfd, const char __user *filename,
	return fd;
}

long do_sys_open(int dfd, const char __user *filename, int flags, umode_t mode)
int do_sys_open(int dfd, const char __user *filename, int flags, umode_t mode)
{
	struct open_how how = build_open_how(flags, mode);
	return do_sys_openat2(dfd, filename, &how);
+4 −4
Original line number Diff line number Diff line
@@ -2030,7 +2030,7 @@ int vfs_fchown(struct file *file, uid_t user, gid_t group);
int vfs_fchmod(struct file *file, umode_t mode);
int vfs_utimes(const struct path *path, struct timespec64 *times);

extern long vfs_ioctl(struct file *file, unsigned int cmd, unsigned long arg);
int vfs_ioctl(struct file *file, unsigned int cmd, unsigned long arg);

#ifdef CONFIG_COMPAT
extern long compat_ptr_ioctl(struct file *file, unsigned int cmd,
@@ -2785,12 +2785,12 @@ static inline bool is_idmapped_mnt(const struct vfsmount *mnt)
	return mnt_idmap(mnt) != &nop_mnt_idmap;
}

extern long vfs_truncate(const struct path *, loff_t);
int vfs_truncate(const struct path *, loff_t);
int do_truncate(struct mnt_idmap *, struct dentry *, loff_t start,
		unsigned int time_attrs, struct file *filp);
extern int vfs_fallocate(struct file *file, int mode, loff_t offset,
			loff_t len);
extern long do_sys_open(int dfd, const char __user *filename, int flags,
int do_sys_open(int dfd, const char __user *filename, int flags,
		umode_t mode);
extern struct file *file_open_name(struct filename *, int, umode_t);
extern struct file *filp_open(const char *, int, umode_t);
+2 −2
Original line number Diff line number Diff line
@@ -1266,14 +1266,14 @@ static inline long ksys_lchown(const char __user *filename, uid_t user,
			     AT_SYMLINK_NOFOLLOW);
}

extern long do_sys_ftruncate(unsigned int fd, loff_t length, int small);
int do_sys_ftruncate(unsigned int fd, loff_t length, int small);

static inline long ksys_ftruncate(unsigned int fd, loff_t length)
{
	return do_sys_ftruncate(fd, length, 1);
}

extern long do_sys_truncate(const char __user *pathname, loff_t length);
int do_sys_truncate(const char __user *pathname, loff_t length);

static inline long ksys_truncate(const char __user *pathname, loff_t length)
{