|
@@ -599,7 +599,7 @@ sys_epoll_ctl(int epfd, int op, int fd, struct epoll_event __user *event)
|
|
switch (op) {
|
|
switch (op) {
|
|
case EPOLL_CTL_ADD:
|
|
case EPOLL_CTL_ADD:
|
|
if (!epi) {
|
|
if (!epi) {
|
|
- epds.events |= POLLERR | POLLHUP;
|
|
|
|
|
|
+ epds.events |= POLLERR | POLLHUP | POLLRDHUP;
|
|
|
|
|
|
error = ep_insert(ep, &epds, tfile, fd);
|
|
error = ep_insert(ep, &epds, tfile, fd);
|
|
} else
|
|
} else
|
|
@@ -613,7 +613,7 @@ sys_epoll_ctl(int epfd, int op, int fd, struct epoll_event __user *event)
|
|
break;
|
|
break;
|
|
case EPOLL_CTL_MOD:
|
|
case EPOLL_CTL_MOD:
|
|
if (epi) {
|
|
if (epi) {
|
|
- epds.events |= POLLERR | POLLHUP;
|
|
|
|
|
|
+ epds.events |= POLLERR | POLLHUP | POLLRDHUP;
|
|
error = ep_modify(ep, epi, &epds);
|
|
error = ep_modify(ep, epi, &epds);
|
|
} else
|
|
} else
|
|
error = -ENOENT;
|
|
error = -ENOENT;
|