--- fs/eventpoll.c 2004-08-26 19:14:51.000000000 -0700 +++ fs/eventpoll.c.new 2004-10-03 00:04:33.000000000 -0700 @@ -531,7 +531,8 @@ sys_epoll_ctl(int epfd, int op, int fd, current, epfd, op, fd, event)); error = -EFAULT; - if (copy_from_user(&epds, event, sizeof(struct epoll_event))) + if (op != EPOLL_CTL_DEL && + copy_from_user(&epds, event, sizeof(struct epoll_event))) goto eexit_1; /* Get the "struct file *" for the eventpoll file */