Bug 212321 - [PATCH][RHEL4U4] Backported udp_poll() function (Fix the problem that select() returns in RHEL4 though select() must not return essentially when kernel receives broken UDP packet(s))
[PATCH][RHEL4U4] Backported udp_poll() function (Fix the problem that select(...
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: kernel (Show other bugs)
4.4
All Linux
high Severity medium
: ---
: ---
Assigned To: Neil Horman
Brian Brock
:
: 212325 212819 (view as bug list)
Depends On:
Blocks: RHEL4u7_relnotes 430698
  Show dependency treegraph
 
Reported: 2006-10-26 05:48 EDT by Masaki MAENO
Modified: 2010-10-22 02:41 EDT (History)
5 users (show)

See Also:
Fixed In Version: RHSA-2008-0665
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2008-07-24 15:12:01 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
kernel-2.6.9-42.EL-udp_poll.patch - backported udp_poll() for fixing select() problem (5.73 KB, patch)
2006-10-26 05:48 EDT, Masaki MAENO
no flags Details | Diff

  None (edit)
Description Masaki MAENO 2006-10-26 05:48:51 EDT
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)
Comment 1 Masaki MAENO 2006-10-26 05:48:51 EDT
Created attachment 139448 [details]
kernel-2.6.9-42.EL-udp_poll.patch - backported udp_poll() for fixing select() problem
Comment 2 Neil Horman 2006-11-07 16:40:59 EST
*** Bug 212325 has been marked as a duplicate of this bug. ***
Comment 3 Masaki MAENO 2006-12-07 07:29:41 EST
Please take it by RHEL4U5. ;-)
Comment 4 Jason Baron 2007-02-09 16:23:48 EST
*** Bug 212819 has been marked as a duplicate of this bug. ***
Comment 5 RHEL Product and Program Management 2007-05-09 05:06:00 EDT
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.
Comment 6 RHEL Product and Program Management 2007-09-07 15:39:11 EDT
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.
Comment 7 Kaj J. Niemi 2007-09-08 04:53:32 EDT
Seriously, the patch is quite trivial. I have it running on about 300 servers with maybe 40% of them 
exhibiting this issue before patching.
Comment 8 Masaki MAENO 2007-09-10 03:21:36 EDT
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.

Comment 17 Vivek Goyal 2008-02-27 16:44:25 EST
Committed in 68.14.EL . RPMS are available at http://people.redhat.com/vgoyal/rhel4/
Comment 20 Don Domingo 2008-05-13 21:55:36 EDT
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!
Comment 21 Don Domingo 2008-06-02 19:15:49 EDT
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
Comment 24 errata-xmlrpc 2008-07-24 15:12:01 EDT
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

Note You need to log in before you can comment on or make changes to this bug.