K 10 svn:author V 7 dchagin K 8 svn:date V 27 2014-05-24T12:16:33.461935Z K 7 svn:log V 512 Fix some bugs in eventfd: Do not disable eventfd read and write system call restart after signal being caught. [1] Rewrite eventfd_read(). Check predicate again after mtx_sleep() to prevent spurious wakeups. Avoid using uiomove_nofault() call which will fail if the destination user buffer is not physically mapped. Instead, unlock efd->efd_lock and then call uiomove(). [2] Drop the efd_count overflow check in eventfd_poll() as eventfd_write() can never overflow it. Pointed out by Jilles Tjoelker. [1, 2] END