Description of problem: Essentially, when kernel receives broken UDP packet(s), select() function must not return. But, select() returns in any RHEL4 (RHEL4U0 - RHEL4U4). We made udp_poll() backport patch for not returning even if kernel receives broken UDP packet. This patch is for kernel-2.6.9-42.0.3.EL (and kernel-2.6.9-42.EL). It was no problem for us though had verified with our business system. Please take it by the following update! (=> RHEL4U5) Version-Release number of selected component (if applicable): RHEL4U4: kernel-2.6.9-42.0.3.EL (and kernel-2.6.9-42.EL) How reproducible: When select() observes incoming UDP packet by server, clinent sends broken UDP packet. Then, select() returns normally by positive value. Therefore, recvfrom() (= the functions that acquire packet) freezes until kernel receives next normal packet. Actual results: select() returns normally when receives broken UDP packet(s) Expected results: select() doesn't return when receives broken UDP packet(s) Additional info: - It was in the broken IP telephone terminal that sent a broken packet. - man 2 select - http://www.kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6- bkcvs.git;a=summary (but git is down now)
Created attachment 139448 [details] kernel-2.6.9-42.EL-udp_poll.patch - backported udp_poll() for fixing select() problem
*** Bug 212325 has been marked as a duplicate of this bug. ***
Please take it by RHEL4U5. ;-)
*** Bug 212819 has been marked as a duplicate of this bug. ***
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.
This request was previously evaluated by Red Hat Product Management for inclusion in the current Red Hat Enterprise Linux release, but Red Hat was unable to resolve it in time. This request will be reviewed for a future Red Hat Enterprise Linux release.
Seriously, the patch is quite trivial. I have it running on about 300 servers with maybe 40% of them exhibiting this issue before patching.
I also think that the patch is very safe. So, I strongly hope that you will take it to RHEL4U6 because I encountered the problem several times (about 0.01% ERR-count/UDP-packet) for breakdown of NIC board.
Committed in 68.14.EL . RPMS are available at http://people.redhat.com/vgoyal/rhel4/
added to RHEL4.7 release notes under "Kernel-Related Updates": <quote> The udp_poll() function is now implemented. This update reduces the likelihood of false positive returns from the system call select(). </quote> please advise if any revisions are in order. thanks!
Hi, the RHEL4.7 release notes deadline is on June 17, 2008 (Tuesday). they will undergo a final proofread before being dropped to translation, at which point no further additions or revisions will be entertained. a mockup of the RHEL4.7 release notes can be viewed here: http://intranet.corp.redhat.com/ic/intranet/RHEL4u7relnotesmockup.html please use the aforementioned link to verify if your bugzilla is already in the release notes (if it needs to be). each item in the release notes contains a link to its original bug; as such, you can search through the release notes by bug number. Cheers, Don
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-2008-0665.html