Bug 104345
| Summary: | clntudp_call has broken timeout semantics | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Retired] Red Hat Linux | Reporter: | Mike Waychison <michael.waychison> | ||||
| Component: | dietlibc | Assignee: | Jeremy Katz <katzj> | ||||
| Status: | CLOSED RAWHIDE | QA Contact: | |||||
| Severity: | medium | Docs Contact: | |||||
| Priority: | medium | ||||||
| Version: | 9 | ||||||
| Target Milestone: | --- | ||||||
| Target Release: | --- | ||||||
| Hardware: | All | ||||||
| OS: | Linux | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2003-09-16 22:03:10 UTC | Type: | --- | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Attachments: |
|
||||||
Created attachment 94467 [details]
patch
Added for -7. |
From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3.1) Gecko/20030618 Debian/1.3.1-3 Description of problem: clntudp_call passes the udp retransmit in to a call to select directly, which causes it to get overwritten with {0, 0}. This breaks the time_waited semantics and causes the main retransmit loop to spin fast, causing a udp packet storm on the network. This is seen in Anaconda when the first MOUNTPROC_MNT rpc call is made to the NFS server as mentioned in bug 103952 's attachment 'detailed description and patch'. I've created a patch against dietlibc 0.19 (should apply cleanly even against today's release of 0.23). I have just sent this upstream, but have not yet received a reply. Version-Release number of selected component (if applicable): 0.21-4 How reproducible: Sometimes Steps to Reproduce: 1. Make a udp rpc call 2. Drop the response Actual Results: The client will storm the network with RPC CALLS as it does'nt what for a response (timeout = near nil to the select call). Expected Results: Retransmits should occur as set in clntudp_create or as set in clntudp_control. Total timeout should work as defined in the call to clntudp_call. Additional info: