Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5e196a9c authored by Al Viro's avatar Al Viro
Browse files

switch epoll_wait(2) to fget_light()



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent ecd18815
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -1809,7 +1809,7 @@ SYSCALL_DEFINE4(epoll_ctl, int, epfd, int, op, int, fd,
SYSCALL_DEFINE4(epoll_wait, int, epfd, struct epoll_event __user *, events,
		int, maxevents, int, timeout)
{
	int error;
	int error, fput_needed;
	struct file *file;
	struct eventpoll *ep;

@@ -1825,7 +1825,7 @@ SYSCALL_DEFINE4(epoll_wait, int, epfd, struct epoll_event __user *, events,

	/* Get the "struct file *" for the eventpoll file */
	error = -EBADF;
	file = fget(epfd);
	file = fget_light(epfd, &fput_needed);
	if (!file)
		goto error_return;

@@ -1847,7 +1847,7 @@ SYSCALL_DEFINE4(epoll_wait, int, epfd, struct epoll_event __user *, events,
	error = ep_poll(ep, events, maxevents, timeout);

error_fput:
	fput(file);
	fput_light(file, fput_needed);
error_return:

	return error;