RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 433498 - [RFE] device-mapper: improve integration between device-mapper-multipath and SCSI layer
Summary: [RFE] device-mapper: improve integration between device-mapper-multipath and ...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: kernel
Version: 6.0
Hardware: All
OS: Linux
medium
medium
Target Milestone: rc
: ---
Assignee: LVM and device-mapper development team
QA Contact: Barry Donahue
URL:
Whiteboard:
Depends On:
Blocks: 534151
TreeView+ depends on / blocked
 
Reported: 2008-02-19 17:41 UTC by Bryn M. Reeves
Modified: 2018-10-27 12:57 UTC (History)
12 users (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-11-11 16:05:52 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
Headers from the request-based dm patches merged upstream (21.98 KB, text/plain)
2010-02-18 11:58 UTC, Bryn M. Reeves
no flags Details

Description Bryn M. Reeves 2008-02-19 17:41:26 UTC
Description of problem:
Currently, the SCSI sense data returned by the host/target/driver layer on an
I/O error is not made available to device-mapper since the latter operates at
the bio layer rather than at the request level.

Having access to the sense buffer would allow dm-mpio to make more informed
decisions when an error occurs, for example, avoiding failing a path entirely if
the sense data indicates a transient error that the host should retry immediately.

Patches have been proposed to implement this but have not been merged upstream.
Further work is ongoing to find a solution that provides this functionality & is
acceptable upstream.

This bugzilla is to track the possible inclusion of such functionality in RHEL6.

Comment 12 Bryn M. Reeves 2010-02-18 11:57:18 UTC
Hey Piyush,

This is based on the patches from Kiyoshi Ueda and Jun'ichi Nomura from NEC that are already upstream and in Fedora. You can find some discussion of this in the proceedings of the 2007 Ottawa Linux Symposium here:

http://www.linuxinsight.com/ols2007-request-based-device-mapper-multipath-and-dynamic-load-balancing.html

There's also an old LWN article here that contains some of Kiyoshi's posts on the subject:

http://lwn.net/Articles/215058/

There are more recent threads that you can find in the archives, e.g. the posting of the patch series that ended up getting merged.

If you're interested in the upstream commits that introduced these changes the following commits (in Linus' tree, linux-2.6.git) provide the history:

6db4ccd6357f28c9ef7058b3bc48904c4b2ac419
d0bcb8786532b01206f04258eb6b7d4ac858436a
11a68244e16b0c35e122dd55b4e7c595e0fb67a1
9f518b27cf682dd5155a4c1679d52cd4b5be82f2
a77e28c7e1dc1a6a035c7627d4a88ecf3ea09aea
f40c67f0f7e2767f80f7cbcbc1ab86c4113c202e
e6ee8c0b767540f59e20da3ced282601db8aa502
cec47e3d4a861e1d942b3a580d0bbef2700d2bb2

For convenience I'll post the patch headers in a follow-on comment.

Comment 13 Bryn M. Reeves 2010-02-18 11:58:21 UTC
Created attachment 394892 [details]
Headers from the request-based dm patches merged upstream

Comment 14 Mike Snitzer 2010-02-18 14:54:34 UTC
Request-based DM multipath does not change multipath-tools at all.  Though the user can choose to make use of 2 new path selectors that were introduced along with request-based DM multipath.

Here are more details on the new path-selectors; from the RHEL6 (alpha2) release notes:

8.  Storage

8.1 Dynamic Load Balancing Added to device-mapper-multipath.
Two new load balancing algorithms have been added to device-mapper-multipath.
One performs path selection based the observed queue depth at each path. The
other selects the path based on the measured service time for previous I/O on
the paths.

The path-selector that is used is configured in /etc/multipath.conf. This is
done in the 'defaults' section (applies to all mpath devices) by setting
"selector" to "queue-length 0" or "service-time 0" or "round-robin 0". For
example:

defaults
 {
      ...
       selector                "queue-length 0"
 }                                                                                                                                                                     

This can also be done for specific multipath devices in the 'device' section
by setting the "path_selector" value. For example:

devices
 {
       device
       {
               ...
               path_selector   "service-time 0"
       }                                                                                                                                                               
 }                                                                                                                                                                     

If no selector is specified, it defaults to "round-robin 0".

Comment 17 Barry Donahue 2010-10-05 15:00:30 UTC
SanityOnly

Comment 18 releng-rhel@redhat.com 2010-11-11 16:05:52 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.


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