diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2020-11-20 17:14:37 -0600 |
---|---|---|
committer | Eric W. Biederman <ebiederm@xmission.com> | 2020-12-10 12:42:59 -0600 |
commit | aa384d10f3d06d4b85597ff5df41551262220e16 (patch) | |
tree | 40a3e77005d7f223a331fe0225cdcb2be5277d9c | |
parent | e06b53c22f31ebba4c46d02fb3a58336135db45c (diff) | |
download | linux-stable-aa384d10f3d06d4b85597ff5df41551262220e16.tar.gz linux-stable-aa384d10f3d06d4b85597ff5df41551262220e16.tar.bz2 linux-stable-aa384d10f3d06d4b85597ff5df41551262220e16.zip |
file: Merge __alloc_fd into alloc_fd
The function __alloc_fd was added to support binder[1]. With binder
fixed[2] there are no more users.
As alloc_fd just calls __alloc_fd with "files=current->files",
merge them together by transforming the files parameter into a
local variable initialized to current->files.
[1] dcfadfa4ec5a ("new helper: __alloc_fd()")
[2] 44d8047f1d87 ("binder: use standard functions to allocate fds")
Acked-by: Christian Brauner <christian.brauner@ubuntu.com>
v1: https://lkml.kernel.org/r/20200817220425.9389-16-ebiederm@xmission.com
Link: https://lkml.kernel.org/r/20201120231441.29911-20-ebiederm@xmission.com
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
-rw-r--r-- | fs/file.c | 11 | ||||
-rw-r--r-- | include/linux/fdtable.h | 2 |
2 files changed, 3 insertions, 10 deletions
diff --git a/fs/file.c b/fs/file.c index 07e25f1b9dfd..621563701bd9 100644 --- a/fs/file.c +++ b/fs/file.c @@ -480,9 +480,9 @@ static unsigned int find_next_fd(struct fdtable *fdt, unsigned int start) /* * allocate a file descriptor, mark it busy. */ -int __alloc_fd(struct files_struct *files, - unsigned start, unsigned end, unsigned flags) +static int alloc_fd(unsigned start, unsigned end, unsigned flags) { + struct files_struct *files = current->files; unsigned int fd; int error; struct fdtable *fdt; @@ -538,14 +538,9 @@ out: return error; } -static int alloc_fd(unsigned start, unsigned end, unsigned flags) -{ - return __alloc_fd(current->files, start, end, flags); -} - int __get_unused_fd_flags(unsigned flags, unsigned long nofile) { - return __alloc_fd(current->files, 0, nofile, flags); + return alloc_fd(0, nofile, flags); } int get_unused_fd_flags(unsigned flags) diff --git a/include/linux/fdtable.h b/include/linux/fdtable.h index a5ec736d74a5..dc476ae92f56 100644 --- a/include/linux/fdtable.h +++ b/include/linux/fdtable.h @@ -124,8 +124,6 @@ int iterate_fd(struct files_struct *, unsigned, int (*)(const void *, struct file *, unsigned), const void *); -extern int __alloc_fd(struct files_struct *files, - unsigned start, unsigned end, unsigned flags); extern int __close_fd(struct files_struct *files, unsigned int fd); extern int __close_range(unsigned int fd, unsigned int max_fd, unsigned int flags); |