Hide Forgot
Created attachment 474968 [details] reproducer source code The poll() could block forever on tcp sockets and Urgent data was received, if the event flag only contains POLLPRI. This bug is introduced by commit 4938d7e0233 (poll: avoid extra wakeups in select/poll). Problem is that TCP sockets use standard sock_def_readable() function for their sk_data_ready() handler, and sock_def_readable() doesnt signal POLLPRI. Only TCP is affected by the problem. Adding POLLPRI to the list of flags might trigger unnecessary schedules, but URGENT handling is such a seldom used feature this seems a good compromise. Upstream commit: http://marc.info/?l=git-commits-head&m=129436629005347&w=2 Red Hat Enterprise Linux Version Number: RHEL6 Release Number: 6.0 Architecture: x86_64 Kernel Version: kernel-2.6.32-71.el6 Step to Reproduce: 1. #gcc -o pollpri pollpri.c 2. #./pollpri Actual Results: After the message of "parent: waiting for child to exit" was printed by pollpri, pollpri hanged up forever. Expected Results: The pollpri program can exit normally. Attaching pollpri.c and line-fixed patch for rhel6 git.
Created attachment 474969 [details] upstream patch fixed to apply cleanly
Triage assignment. If you feel this bug doesn't belong to you, or that it cannot be handled in a timely fashion, please contact me for re-assignment
This request was evaluated by Red Hat Product Management for inclusion in the current release of Red Hat Enterprise Linux. Because the affected component is not scheduled to be updated in the current release, Red Hat is unfortunately unable to address this request at this time. Red Hat invites you to ask your support representative to propose this request, if appropriate and relevant, in the next release of Red Hat Enterprise Linux. If you would like it considered as an exception in the current release, please ask your support representative.
This request was evaluated by Red Hat Product Management for inclusion in a Red Hat Enterprise Linux maintenance release. Product Management has requested further review of this request by Red Hat Engineering, for potential inclusion in a Red Hat Enterprise Linux Update release for currently deployed products. This request is not yet committed for inclusion in an Update release.
Patch(es) available on kernel-2.6.32-128.el6
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHSA-2011-0542.html