Bug 438760 (rhel6dmloadbal)

Summary: kernel dm multipath: Dynamic Load balancing
Product: Red Hat Enterprise Linux 6 Reporter: Kiyoshi Ueda <kueda>
Component: device-mapper-multipathAssignee: LVM and device-mapper development team <lvm-team>
Status: CLOSED CURRENTRELEASE QA Contact: Barry Donahue <bdonahue>
Severity: high Docs Contact:
Priority: medium    
Version: 6.0CC: agk, bmarzins, bzeranski, christophe.varoqui, coughlan, dmo, dwysocha, egoggin, heinzm, i-kitayama, jruemker, junichi.nomura, kueda, lmb, ltroan, mbroz, m-ikeda, mikeda, phinchman, prockai, rlerch, syeghiay, tao, tranlan
Target Milestone: betaKeywords: FutureFeature
Target Release: 6.0   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: device-mapper-multipath-0.4.9-4.el6 Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-11-10 20:07:34 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:
Bug Depends On:    
Bug Blocks: 425967, 554559, 563255    
Attachments:
Description Flags
patch for "Least pending IO" dynamic load balancing policy none

Description Kiyoshi Ueda 2008-03-24 22:02:51 UTC
+++ This bug was initially created as a clone of Bug #170552 +++

Escalated to Bugzilla from IssueTracker

-- Additional comment from rkenna on 2005-10-12 16:06 EST --
This is an improvement on round-robin where loading of the paths is used to
dynamically balance I/O's

-- Additional comment from agk on 2005-10-21 10:07 EST --
A short patch has been submitted by Stefan Bader which does this.

It needs reviewing, checking for adverse interaction with iostats patches,
checking for performance issues when the feature is not being used, might have
kABI impact etc.

Possible for U3 subject to review.


-- Additional comment from agk on 2005-12-09 10:05 EST --
Missed U3 so now U4.

-- Additional comment from agk on 2006-03-03 13:22 EST --
*** Bug 180435 has been marked as a duplicate of this bug. ***

-- Additional comment from agk on 2006-03-06 14:46 EST --
*** Bug 184134 has been marked as a duplicate of this bug. ***

-- Additional comment from dkl on 2006-04-18 16:09 EST --
NEEDINFO_ENG has been deprecated in favor of NEEDINFO or ASSIGNED. Changing
status to ASSIGNED for ENG review.

-- Additional comment from rkenna on 2006-07-20 14:12 EST --
I think this needs to be targeted for 5.1

-- Additional comment from riek on 2006-08-11 14:30 EST --
At least it is not a 4.5 topic. Moving to 4.6 for now. Not sure if we shouldn't
jsut keep that to 5?

-- Additional comment from rkenna on 2007-03-20 11:39 EST --
This consistently arises as a customer request.  Still worth having in 4.6

-- Additional comment from ltroan on 2007-07-15 14:50 EST --
Scoping work effort. Holding off devel ACK until complete.

-- Additional comment from peterm on 2007-07-31 10:35 EST --
Too late for R4.6, moving out to R4.7.

-- Additional comment from rkenna on 2007-07-31 11:22 EST --
Moving to RHEL 5.2

-- Additional comment from ltroan on 2007-08-16 15:13 EST --
ARG! 

Rob, the bugzilla for this function in RHEL5 is bug 199767. If this only being
considered for RHEL5, just close this bug as WONTFIX and take up the discussion
in  the other bug...

-- Additional comment from sharon.lightcap on 2007-08-27 11:35 EST --
Can someone at Red Hat please clarify which releases are being considered for  
addressing this problem? This is important for us to know for this Bugzilla
(170552) and also 199767.

-- Additional comment from andriusb on 2007-08-27 13:50 EST --
Resetting for 4.7 consideration, as it already states in the Version field,
unless Rob you have other comments.

-- Additional comment from tao on 2007-08-29 13:15 EST --
Unisys is giving up on getting changes into RHEL4 in favor of focusing on
RHEL5 

Internal Status set to 'Resolved'
Status set to: Closed by Client
Resolution set to: 'Rejected'

This event sent from IssueTracker by dwa 
 issue 98463

-- Additional comment from rkenna on 2007-09-07 17:03 EST --
Moved to RHEL 5.2 as bug 199767. Closed WONTFIX

Comment 1 Bill Nottingham 2008-09-25 21:09:18 UTC
*** Bug 199767 has been marked as a duplicate of this bug. ***

Comment 2 Bill Nottingham 2008-09-25 21:35:44 UTC
*** Bug 446523 has been marked as a duplicate of this bug. ***

Comment 3 Larry Troan 2008-09-26 13:57:06 UTC
Could you please add the RHEL6 feature template.

Comment 4 Larry Troan 2008-09-26 14:30:26 UTC
This is currently a public (unrestricted) bugzilla. 
Do you want it to be Confidential?

Comment 5 Kiyoshi Ueda 2008-09-29 15:19:48 UTC
Here is the RHEL6 feature template.
NEC is fine that this bugzilla is public.


1. Feature Overview:
  a. Name of feature:
     device-mapper multipath dynamic load balancing
  b. Feature Description:


2. Feature Details:
  a. Architectures:
     i686, x86_64, ia64
  b. Bugzilla Dependencies:
  c. Drivers or hardware dependency:
  d. Upstream acceptance information:
     Patch submitted to upstream
  e. External links:
     Request-based device-mapper:
     http://lkml.org/lkml/2008/9/12/100
     Dynamic Load Balancer:
     http://marc.info/?l=dm-devel&m=122123098803731&w=2
  f. Priority (S,H,M,L): H
  g. Target Release Date:


3. Business Justification:
  a. Why is this feature needed?
     Current version of dm-multipath only supports static load-balancing
     with round-robin and not optimized for various loads.
  b. What hardware does this enable?
     High-speed FC storage
  c. Forecast, volume or high end platform?
  d. Any configuration info?
  e. Are there other dependencies (drivers).


4. Primary contact at Red Hat, email, phone (chat)
  Larry Troan
  ltroan
  919-754-4196


5. Primary contact at Partner, email, phone (chat)
  Kiyoshi Ueda
  k-ueda.nec.com

  Jun'ichi Nomura
  j-nomura.nec.com

Comment 7 vijay 2009-02-18 08:09:26 UTC
Created attachment 332343 [details]
patch for "Least pending IO" dynamic load balancing policy

Attached is the patch for "Least pending IO" dynamic load balancing policy

Attached patch provides "Least pending IO" dynamic load balancing policy for
device mapper multipath. This load balancing policy considers the
number of unserviced requests pending on a path and selects the path with least
count for pending service request.

We find this policy more useful especially when the SAN environment has
heterogeneous components. Ex, when there is one 8GB HBA and one 2GB HBA
connected to the same server, 8GB HBA could be utilized better with this
algorithm.

Can we have this patch included in RHEL6?

Thanks.

Comment 8 Tom Coughlan 2009-09-30 21:22:53 UTC
*** Bug 437587 has been marked as a duplicate of this bug. ***

Comment 9 Tom Coughlan 2009-09-30 21:25:52 UTC
These have been included in the 2.6.31, so it will be in RHEL 6:

config DM_MULTIPATH_QL
"I/O Path Selector based on the number of in-flight I/Os"
This path selector is a dynamic load balancer which selects
the path with the least number of in-flight I/Os.

config DM_MULTIPATH_ST
"I/O Path Selector based on the service time"
This path selector is a dynamic load balancer which selects
the path expected to complete the incoming I/O in the shortest
time.

We would appreciate hearing test results and feedback on these.

Vijay,

Do these meet your needs?   

If not, please re-submit to dm-devel list and explain
why.

Comment 10 Paul Hinchman 2009-10-09 21:42:34 UTC
Tom,  Vijay is no longer with HP.  I'll have to alert the DM team to update this.

Comment 12 Barry Donahue 2010-09-24 15:15:01 UTC
Paul, does anyone at HP have any feedback on this BZ for 6.0?

Comment 13 Larry Troan 2010-09-24 20:25:10 UTC
Ueda-san,

Red Hat has asked that you quickly comment whether NEC has verified this fix with a comment in this bug and by setting NEC in the "partner" field of this bug.

Dohmo arigato gozai-masu.

Comment 14 Paul Hinchman 2010-09-25 23:46:16 UTC
Barry, HP submission of this FEAT was originally done by a team that is now disbanded.  While we would still like this feature for all customers, we no longer have resources to test it (request is 2.5 years old). We will have to leverage off of what other partners, such as NEC, produce as results.

Thanks,

Paul H.

Comment 15 Kiyoshi Ueda 2010-09-27 06:30:45 UTC
NEC has confirmed that 2 dynamic load balancers, queue-length
and service-time, are included in RHEL6.0 RC1.
This bug has been fixed.

Comment 16 Larry Troan 2010-10-01 21:13:54 UTC
Tom, per comment #10, Vijay is no longer with HP. NEC has verified this fix per comment #15. 

Can we set status to VERIFIED please.

Comment 17 releng-rhel@redhat.com 2010-11-10 20:07:34 UTC
Red Hat Enterprise Linux 6.0 is now available and should resolve
the problem described in this bug report. This report is therefore being closed
with a resolution of CURRENTRELEASE. You may reopen this bug report if the
solution does not work for you.