Messages in this thread | | | Date | Fri, 27 Sep 2019 19:29:15 -0700 | From | Andrew Morton <> | Subject | Re: [PATCH RESEND v4] fs/epoll: Remove unnecessary wakeups of nested epoll that in ET mode |
| |
On Wed, 25 Sep 2019 09:56:03 +0800 hev <r@hev.cc> wrote:
> From: Heiher <r@hev.cc> > > Take the case where we have: > > t0 > | (ew) > e0 > | (et) > e1 > | (lt) > s0 > > t0: thread 0 > e0: epoll fd 0 > e1: epoll fd 1 > s0: socket fd 0 > ew: epoll_wait > et: edge-trigger > lt: level-trigger > > We only need to wakeup nested epoll fds if something has been queued to the > overflow list, since the ep_poll() traverses the rdllist during recursive poll > and thus events on the overflow list may not be visible yet. > > Test code:
Look sane to me. Do you have any performance testing results which show a benefit?
epoll maintainership isn't exactly a hive of activity nowadays :( Roman, would you please have time to review this?
| |