OpenSolaris

Printable Version Enter a New Search
Bug ID 6817942
Synopsis RPC loadbalancing with clnt_max_conns > 1 does not work
State 10-Fix Delivered (Fix available in build)
Category:Subcategory kernel:rpc
Keywords opensolaris | oss-request
Sponsor
Submitter goroll
Responsible Engineer Dai Ngo
Reported Against s10 , snv_01
Duplicate Of
Introduced In solaris_2.4
Commit to Fix snv_117
Fixed In snv_117
Release Fixed solaris_nevada(snv_117) , solaris_10u8(s10u8_07) (Bug ID:2179399)
Related Bugs 6696163 , 6836457
Submit Date 16-March-2009
Last Update Date 17-June-2009
Description
Category
   network
Sub-Category
   rpc
Description
   This is a pro-forma bug for the second issue reported in 6696163:
RPC loadbalancing over more than one connection does not work for
most cases.
Frequency
   Always
Regression
   No
Steps to Reproduce
   set clnt_max_conns to a value greater one and observe network traffic
Expected Result
   RPC calls should be spread over the configured connections
Actual Result
   RPC calls are using one connection only most of the time
Error Message(s)
   
Test Case
   
Workaround
   
Additional configuration information
clnt_max_conns should be declared volatile:
static volatile int clnt_max_conns = CLNT_MAX_CONNS;
Work Around
N/A
Comments
Thank you for having implemented this in S10. David Lutz reports for Oracle 
from a Mirambar to an OpenStorage 7310 :

"I installed patch 141914-02 to get the fix for 2179399, and
with rpcmod:clnt_max_conns = 8, in addition to my other
tunings, I increased my single NIC 10GbE IOPS from 18800
to 41400 with 20 read + 12 write threads, each doing 4k
I/O to cache/logzilla.  My total gain from out of box went
from 15600 to 41400 for a single 10GbE."

This fix is critical to have good performance from an NFS client over a 10Gbe NIC.