epoll_wait man page error

Bug #480566 reported by Angelo Borsotti
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Linux
Unknown
Unknown
manpages (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

man epoll_wait states:

EINTR The call was interrupted by a signal handler before any of the
              requested events occurred or the timeout expired; see signal(7).

However, epoll_wait does not return EINTR when the timeout expires, it
simply returns 0 as number of file descriptors, and errno = 0.
This is the correct behaviour (otherwise there would be no way to tell
a signal interruption from a timeout one).

Revision history for this message
Brian Murray (brian-murray) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. This bug did not have a package associated with it, which is important for ensuring that it gets looked at by the proper developers. You can learn more about finding the right package at https://wiki.ubuntu.com/Bugs/FindRightPackage. I have classified this bug as a bug in manpages.

When reporting bugs in the future please use apport, either via the appropriate application's "Help -> Report a Problem" menu or using 'ubuntu-bug' and the name of the package affected. You can learn more about this functionality at https://wiki.ubuntu.com/ReportingBugs.

affects: ubuntu → manpages (Ubuntu)
Revision history for this message
Michael Kerrisk (mtk-manpages) wrote :

I belive the problem here is a misreading of the English text.

I changed the text slightly in upstream 3.41 from

EINTR The call was interrupted by a signal handler before any of the
              requested events occurred or the timeout expired; see signal(7).

to

EINTR The call was interrupted by a signal handler before either any of the
              requested events occurred or the timeout expired; see signal(7).

Revision history for this message
Angelo Borsotti (angelo-borsotti) wrote : Re: [Bug 480566] Re: epoll_wait man page error

Hi Michael.

the correct text should be:

EINTR The call was interrupted by a signal handler before any of the
             requested events occurred; see signal(7).

The issue is that EINTR is not returned when the timeout expires, but only
when one of the events occur.

-Angelo

Revision history for this message
Stéphane Aulery (lkppo) wrote :
no longer affects: manpages
Changed in manpages (Ubuntu):
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.