Commit 05f26f86 authored by Zhen Lei's avatar Zhen Lei Committed by Christian Brauner
Browse files

epoll: simplify ep_alloc()



The get_current_user() does not fail, and moving it after kzalloc() can
simplify the code a bit.

Signed-off-by: default avatarZhen Lei <thunder.leizhen@huawei.com>
Message-Id: <20230726032135.933-1-thunder.leizhen@huaweicloud.com>
Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
parent 0d5a4f8f
Loading
Loading
Loading
Loading
+2 −10
Original line number Diff line number Diff line
@@ -975,15 +975,11 @@ void eventpoll_release_file(struct file *file)

static int ep_alloc(struct eventpoll **pep)
{
	int error;
	struct user_struct *user;
	struct eventpoll *ep;

	user = get_current_user();
	error = -ENOMEM;
	ep = kzalloc(sizeof(*ep), GFP_KERNEL);
	if (unlikely(!ep))
		goto free_uid;
		return -ENOMEM;

	mutex_init(&ep->mtx);
	rwlock_init(&ep->lock);
@@ -992,16 +988,12 @@ static int ep_alloc(struct eventpoll **pep)
	INIT_LIST_HEAD(&ep->rdllist);
	ep->rbr = RB_ROOT_CACHED;
	ep->ovflist = EP_UNACTIVE_PTR;
	ep->user = user;
	ep->user = get_current_user();
	refcount_set(&ep->refcount, 1);

	*pep = ep;

	return 0;

free_uid:
	free_uid(user);
	return error;
}

/*