>From ced9c438dc5120140b3af950618183343ca3d530 Mon Sep 17 00:00:00 2001 From: Bron Gondwana Date: Sun, 25 Jan 2009 23:17:31 +1100 Subject: [PATCH] epoll: allow 0 for "unlimited" on epoll limits --- fs/eventpoll.c | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-) diff --git a/fs/eventpoll.c b/fs/eventpoll.c index 2113795..ce8879b 100644 --- a/fs/eventpoll.c +++ b/fs/eventpoll.c @@ -597,8 +597,9 @@ static int ep_alloc(struct eventpoll **pep) user = get_current_user(); error = -EMFILE; - if (unlikely(atomic_read(&user->epoll_devs) >= - epoll_limits.max_user_instances)) + if (unlikely(epoll_limits.max_user_instances && + (atomic_read(&user->epoll_devs) >= + epoll_limits.max_user_instances))) goto free_uid; error = -ENOMEM; ep = kzalloc(sizeof(*ep), GFP_KERNEL); @@ -776,8 +777,9 @@ static int ep_insert(struct eventpoll *ep, struct epoll_event *event, struct epitem *epi; struct ep_pqueue epq; - if (unlikely(atomic_read(&ep->user->epoll_watches) >= - epoll_limits.max_user_watches)) + if (unlikely(epoll_limits.max_user_watches && + (atomic_read(&ep->user->epoll_watches) >= + epoll_limits.max_user_watches))) return -ENOSPC; if (!(epi = kmem_cache_alloc(epi_cache, GFP_KERNEL))) return -ENOMEM; -- 1.5.6.3