Bug 167203 - wrong output from detect_multipath with Hitachi USP 100
Summary: wrong output from detect_multipath with Hitachi USP 100
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Enterprise Linux 3
Classification: Red Hat
Component: raidtools
Version: 3.0
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Doug Ledford
QA Contact: David Lawrence
URL:
Whiteboard: RHEL3U7NAK
Depends On:
Blocks: 170417
TreeView+ depends on / blocked
 
Reported: 2005-08-31 15:02 UTC by Thomas von Steiger
Modified: 2007-11-30 22:07 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-10-19 18:55:01 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Thomas von Steiger 2005-08-31 15:02:30 UTC
Hello,

Description of problem:

We use detect_multipath to get the information about Disk Device to build 
multipathing. Now we have a new Disksubsystem "Hitachi USP 100" and the output 
with detect_multipath is not ok. With the old Disksubsystem "Hitachi 9980V", 
the output is ok. Our automatic staging for RHEL3, special building the 
multipathing is depend on output from detect_multipath.


Version-Release number of selected component (if applicable):
raidtools 1.00.3-7 and 1.00.3-8

How reproducible:
always

Steps to Reproduce:
1.With Disksubsystem "Hitachi USP 100"
  
Actual results:
- With "Hitachi USP 100":
-------------------------
[root@server1 rpm]# detect_multipath
/dev/sda, /dev/sdb, /dev/sdc, and /dev/sdd are multiple paths to the same 
device
/dev/md0 = /dev/sda1, /dev/sdb1, /dev/sdc1, /dev/sdd1
/dev/md1 = /dev/sda3, /dev/sdb3, /dev/sdc3, /dev/sdd3
/dev/md2 = /dev/sda4, /dev/sdb4, /dev/sdc4, /dev/sdd4
[root@server1 rpm]# cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: HITACHI  Model: OPEN-V           Rev: 5004
  Type:   Direct-Access                    ANSI SCSI revision: 03
Host: scsi0 Channel: 00 Id: 00 Lun: 01
  Vendor: HITACHI  Model: OPEN-V*2         Rev: 5004
  Type:   Direct-Access                    ANSI SCSI revision: 03
Host: scsi1 Channel: 00 Id: 00 Lun: 00
  Vendor: HITACHI  Model: OPEN-V           Rev: 5004
  Type:   Direct-Access                    ANSI SCSI revision: 03
Host: scsi1 Channel: 00 Id: 00 Lun: 01
  Vendor: HITACHI  Model: OPEN-V*2         Rev: 5004
  Type:   Direct-Access                    ANSI SCSI revision: 03

Expected results:
- With "Hitachi 9980V":
-----------------------
[root@server2 root]# detect_multipath
/dev/sda and /dev/sdc are multiple paths to the same device
/dev/md0 = /dev/sda1, /dev/sdc1
/dev/md1 = /dev/sda3, /dev/sdc3
/dev/md2 = /dev/sda4, /dev/sdc4
/dev/sdb and /dev/sdd are multiple paths to the same device
/dev/md3 = /dev/sdb1, /dev/sdd1
[root@server2 root]# cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: HITACHI  Model: OPEN-V           Rev: 2109
  Type:   Direct-Access                    ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 00 Lun: 01
  Vendor: HITACHI  Model: OPEN-9*7         Rev: 2109
  Type:   Direct-Access                    ANSI SCSI revision: 02
Host: scsi1 Channel: 00 Id: 00 Lun: 00
  Vendor: HITACHI  Model: OPEN-V           Rev: 2109
  Type:   Direct-Access                    ANSI SCSI revision: 02
Host: scsi1 Channel: 00 Id: 00 Lun: 01
  Vendor: HITACHI  Model: OPEN-9*7         Rev: 2109
  Type:   Direct-Access                    ANSI SCSI revision: 02

Additional info:

It's not depend on QLogic Firmware, becose i have the same problem with 
diverent firmware.

Comment 1 Thomas Uebermeier 2005-09-16 12:26:47 UTC
Further debugging of the issue showed, that the problem is indeed in    
detect_multipath.  
  
It checks for same disks in this order:  
1) id_eui64  
2) id_fcph  
3) serial_number  
4) id_vendor  
5) id_nonunique  
  
On the Hitachi 9980V the id_eui64 and id_fcph return 0 and serial_number 
returns a correct value, which is being used. 
On the Hitachi USP 100 it returns the same value for every LUN: 
sda,sdb, sde and sdf on the 9980V and sdc, sdd, sdg and sdh on the USP 100: 
 
/dev/sda ->id_fcph[0]==0   ->id_fcph[1]==0   
/dev/sdb ->id_fcph[0]==0   ->id_fcph[1]==0   
/dev/sdc ->id_fcph[0]==-2146564512   ->id_fcph[1]==3009284   
/dev/sdd ->id_fcph[0]==-2146564512   ->id_fcph[1]==3009284   
/dev/sde ->id_fcph[0]==0   ->id_fcph[1]==0   
/dev/sdf ->id_fcph[0]==0   ->id_fcph[1]==0   
/dev/sdg ->id_fcph[0]==-2146564512   ->id_fcph[1]==3009284   
/dev/sdh ->id_fcph[0]==-2146564512   ->id_fcph[1]==3009284   
 
serial_number works as well on the USP 100, though it is fooled by the FCPH 
value to believe it is the same LUN. 
As a quick fix we could rearrange the order of the tests to check the serial 
before FCPH, though I am not sure if it might break other storages that fail 
on serial (same value) and need the FCPH. 
It would be nice if we could have a similar mechanism as LVM2 DM has, though 
is is probably out of scope in RHEL3 

Comment 5 Issue Tracker 2007-07-06 17:00:08 UTC
RHEL 3 issue, bugzilla closed as wontfix, no customer references, closing.

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

This event sent from IssueTracker by pdemauro 
 issue 80018

Comment 6 RHEL Program Management 2007-10-19 18:55:01 UTC
This bug is filed against RHEL 3, which is in maintenance phase.
During the maintenance phase, only security errata and select mission
critical bug fixes will be released for enterprise products. Since
this bug does not meet that criteria, it is now being closed.
 
For more information of the RHEL errata support policy, please visit:
http://www.redhat.com/security/updates/errata/
 
If you feel this bug is indeed mission critical, please contact your
support representative. You may be asked to provide detailed
information on how this bug is affecting you.


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