diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2017-09-15 04:13:32 +0300 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2017-09-15 04:13:32 +0300 | 
| commit | 581bfce969cbfc7ce43ee92273be9cb7c3fdfa61 (patch) | |
| tree | 0a693778ce39c49b9b7d93d0d6795c576896f5cf /kernel/sysctl_binary.c | |
| parent | cc73fee0bae2d66594d1fa2df92bbd783aa98e04 (diff) | |
| parent | 9725d4cef62229b4ec4c912e0db0761e7d400650 (diff) | |
| download | linux-581bfce969cbfc7ce43ee92273be9cb7c3fdfa61.tar.xz | |
Merge branch 'work.set_fs' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull more set_fs removal from Al Viro:
 "Christoph's 'use kernel_read and friends rather than open-coding
  set_fs()' series"
* 'work.set_fs' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
  fs: unexport vfs_readv and vfs_writev
  fs: unexport vfs_read and vfs_write
  fs: unexport __vfs_read/__vfs_write
  lustre: switch to kernel_write
  gadget/f_mass_storage: stop messing with the address limit
  mconsole: switch to kernel_read
  btrfs: switch write_buf to kernel_write
  net/9p: switch p9_fd_read to kernel_write
  mm/nommu: switch do_mmap_private to kernel_read
  serial2002: switch serial2002_tty_write to kernel_{read/write}
  fs: make the buf argument to __kernel_write a void pointer
  fs: fix kernel_write prototype
  fs: fix kernel_read prototype
  fs: move kernel_read to fs/read_write.c
  fs: move kernel_write to fs/read_write.c
  autofs4: switch autofs4_write to __kernel_write
  ashmem: switch to ->read_iter
Diffstat (limited to 'kernel/sysctl_binary.c')
| -rw-r--r-- | kernel/sysctl_binary.c | 21 | 
1 files changed, 14 insertions, 7 deletions
diff --git a/kernel/sysctl_binary.c b/kernel/sysctl_binary.c index 02e1859f2ca8..58ea8c03662e 100644 --- a/kernel/sysctl_binary.c +++ b/kernel/sysctl_binary.c @@ -986,8 +986,9 @@ static ssize_t bin_intvec(struct file *file,  		size_t length = oldlen / sizeof(*vec);  		char *str, *end;  		int i; +		loff_t pos = 0; -		result = kernel_read(file, 0, buffer, BUFSZ - 1); +		result = kernel_read(file, buffer, BUFSZ - 1, &pos);  		if (result < 0)  			goto out_kfree; @@ -1016,6 +1017,7 @@ static ssize_t bin_intvec(struct file *file,  		size_t length = newlen / sizeof(*vec);  		char *str, *end;  		int i; +		loff_t pos = 0;  		str = buffer;  		end = str + BUFSZ; @@ -1029,7 +1031,7 @@ static ssize_t bin_intvec(struct file *file,  			str += scnprintf(str, end - str, "%lu\t", value);  		} -		result = kernel_write(file, buffer, str - buffer, 0); +		result = kernel_write(file, buffer, str - buffer, &pos);  		if (result < 0)  			goto out_kfree;  	} @@ -1057,8 +1059,9 @@ static ssize_t bin_ulongvec(struct file *file,  		size_t length = oldlen / sizeof(*vec);  		char *str, *end;  		int i; +		loff_t pos = 0; -		result = kernel_read(file, 0, buffer, BUFSZ - 1); +		result = kernel_read(file, buffer, BUFSZ - 1, &pos);  		if (result < 0)  			goto out_kfree; @@ -1087,6 +1090,7 @@ static ssize_t bin_ulongvec(struct file *file,  		size_t length = newlen / sizeof(*vec);  		char *str, *end;  		int i; +		loff_t pos = 0;  		str = buffer;  		end = str + BUFSZ; @@ -1100,7 +1104,7 @@ static ssize_t bin_ulongvec(struct file *file,  			str += scnprintf(str, end - str, "%lu\t", value);  		} -		result = kernel_write(file, buffer, str - buffer, 0); +		result = kernel_write(file, buffer, str - buffer, &pos);  		if (result < 0)  			goto out_kfree;  	} @@ -1120,8 +1124,9 @@ static ssize_t bin_uuid(struct file *file,  	if (oldval && oldlen) {  		char buf[UUID_STRING_LEN + 1];  		uuid_t uuid; +		loff_t pos = 0; -		result = kernel_read(file, 0, buf, sizeof(buf) - 1); +		result = kernel_read(file, buf, sizeof(buf) - 1, &pos);  		if (result < 0)  			goto out; @@ -1154,8 +1159,9 @@ static ssize_t bin_dn_node_address(struct file *file,  		char buf[15], *nodep;  		unsigned long area, node;  		__le16 dnaddr; +		loff_t pos = 0; -		result = kernel_read(file, 0, buf, sizeof(buf) - 1); +		result = kernel_read(file, buf, sizeof(buf) - 1, &pos);  		if (result < 0)  			goto out; @@ -1188,6 +1194,7 @@ static ssize_t bin_dn_node_address(struct file *file,  		__le16 dnaddr;  		char buf[15];  		int len; +		loff_t pos = 0;  		result = -EINVAL;  		if (newlen != sizeof(dnaddr)) @@ -1201,7 +1208,7 @@ static ssize_t bin_dn_node_address(struct file *file,  				le16_to_cpu(dnaddr) >> 10,  				le16_to_cpu(dnaddr) & 0x3ff); -		result = kernel_write(file, buf, len, 0); +		result = kernel_write(file, buf, len, &pos);  		if (result < 0)  			goto out;  	}  | 
