projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
| inline |
side by side
epoll: add a reschedule point in ep_free()
[firefly-linux-kernel-4.4.55.git]
/
fs
/
eventpoll.c
diff --git
a/fs/eventpoll.c
b/fs/eventpoll.c
index 293f86741ddb08a0bc625c3a7fdccbbe96ad7486..473e09da7d02d3396273221f3094824c91f3b030 100644
(file)
--- a/
fs/eventpoll.c
+++ b/
fs/eventpoll.c
@@
-740,6
+740,7
@@
static void ep_free(struct eventpoll *ep)
epi = rb_entry(rbp, struct epitem, rbn);
ep_unregister_pollwait(ep, epi);
+ cond_resched();
}
/*
@@
-754,6
+755,7
@@
static void ep_free(struct eventpoll *ep)
while ((rbp = rb_first(&ep->rbr)) != NULL) {
epi = rb_entry(rbp, struct epitem, rbn);
ep_remove(ep, epi);
+ cond_resched();
}
mutex_unlock(&ep->mtx);