Bug 471659

Summary: multipath creates redundant device map when reinstating device
Product: Red Hat Enterprise Linux 5 Reporter: Dan Wong <danh8888>
Component: device-mapper-multipathAssignee: LVM and device-mapper development team <lvm-team>
Status: CLOSED INSUFFICIENT_DATA QA Contact: Cluster QE <mspqa-list>
Severity: medium Docs Contact:
Priority: medium    
Version: 5.1CC: agk, bmarzins, bmr, christophe.varoqui, dwysocha, egoggin, heinzm, iannis, junichi.nomura, kueda, lmb, mbroz, prockai, tranlan
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-05-18 16:58: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:

Description Dan Wong 2008-11-14 21:30:57 UTC
Description of problem:

multipath -ll will show redundant device map entry when my iscsi device disconnects/reconnects from session recovery

the following is the output from multipath -ll, 
(mpath45 is the redundant entry, mpath47 is the correct entry)

mpath47 (36090a01850cc5d2ede918484e367c67c) dm-19 EQLOGIC,100E-00
[size=5.0G][features=0][hwhandler=0]
\_ round-robin 0 [prio=1][active]
 \_ 129:0:0:0 sds 65:32  [active][ready]
\_ round-robin 0 [prio=1][enabled]
 \_ 130:0:0:0 sdp 8:240  [active][ready]
mpath45 (36090a01850cc2d66dd91e483e367a698) dm-18 EQLOGIC,100E-00
[size=5.0G][features=0][hwhandler=0]
\_ round-robin 0 [prio=1][active]
 \_ 130:0:0:0 sdp 8:240  [active][ready]



Version-Release number of selected component (if applicable):
device-mapper-multipath-0.4.7-12.el5
kernel: 2.6.18-53.el5

How reproducible:
Once every few hours

Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Ben Marzinski 2008-11-18 18:22:31 UTC
Looking at the output that you posted, the two multipath devices have different
WWIDs (mpath47 has a WWID of 36090a01850cc5d2ede918484e367c67c, and mpath45 has a WWID of 36090a01850cc2d66dd91e483e367a698).

This value should be determined by running 
/sbin/scsi_id -g -u -s /block/<device>
unless you have a different value set for getuid_callout in /etc/multipath.conf

So the real question is, why does the WWID for sdp change? It seem like it must be changing, since devices get slotted into multipath maps based on their WWID. Does the WWID for your device change during session recovery?

Comment 2 Dan Wong 2008-11-21 14:49:34 UTC
the getuid_callout is commented out.
but i believe by default it uses  "/sbin/scsi_id -g -u -s /block/%n"

I haven't hit the problem since I rebooted the system. 

I did some iscsi session recovery tests and they seem to work fine.

/sbin/scsi_id -g -u -s /block/<device> displays the same WWID before and after session recovery.

the root of the problem seems to be in the iscsi layer because it's some how reporting a different scsi id. 

I'll ping the open-iscsi guys about this.

Comment 3 Ben Marzinski 2009-06-19 22:21:00 UTC
Do you have any more information about this issue?