Bug 153211

Summary: DPT raid controller kernel module broken
Product: Red Hat Enterprise Linux 4 Reporter: Frank Liu <gfrankliu>
Component: kernelAssignee: Tom Coughlan <coughlan>
Status: CLOSED WONTFIX QA Contact: Brian Brock <bbrock>
Severity: medium Docs Contact:
Priority: medium    
Version: 4.0CC: cevich, davej, jbaron, riel
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-06-20 16:07:51 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 Frank Liu 2005-04-03 05:37:46 UTC
From Bugzilla Helper:
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)

Description of problem:
One of my server that uses DPT PM3755F raid controller works fine with Enterprise Linux v3, but fails with v4. It seems the dpt_i2o module in kernel 2.6 is broken. I tried other 2.6 based distro (FC3, FC4 test1) and got the same problem.

Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
1. boot the disc1, and when reaches the partitioning, select manual.
2. you will see partition sizes are wrong (wrong number of cylinders), and wrong numbers of logical disks (raids).
3. if you ignore those problem, and manually create a linux partition, the installation will continue, but hangs somewhere in the middle of installing packages.
  

Actual Results:  installation locks up.

Expected Results:  installation should go well, and the fdisk -l output should match if I use Enterprise server v3.

Additional info:

Comment 1 Frank Liu 2005-04-03 05:44:36 UTC
The system is currently running v3, and here is the output from "fdisk -l"

# fdisk -l

This disk has both DOS and BSD magic.
Give the 'b' command to go to BSD mode.

Disk /dev/sda: 36.2 GB, 36280729600 bytes
255 heads, 63 sectors/track, 4410 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/sda1   *         1        13    104391   83  Linux
/dev/sda2            14      4410  35318902+  83  Linux

Disk /dev/sdb: 36.2 GB, 36280729600 bytes
255 heads, 63 sectors/track, 4410 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/sdb1   *         1       255   2048256   82  Linux swap

Disk /dev/sdc: 36.2 GB, 36280729600 bytes
255 heads, 63 sectors/track, 4410 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/sdc1             1      4410  35423293+  83  Linux

Disk /dev/sdd: 181.4 GB, 181403648000 bytes
255 heads, 63 sectors/track, 22054 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/sdd1             1     22054 177148723+  83  Linux

If I boot the Enterprise linux v4 on this system, and run "fdisk", I will see 
a "bogus" /dev/sde". Also, for those "disks" that have 4410 cylinders, I see a 
different number. (don't have the actual output handy right now since the 
system is NOT running v4). I can reboot the system with v4 disc again on 
Monday and collect the actual output if you want it.


Comment 2 Tom Coughlan 2005-04-04 16:19:43 UTC
In RHEL 4 the drivers/message/i2o driver is used, instead of the dpt_i20 driver
that is used in RHEL 3.  I assume this is the driver you are using. 

It would be most helpful to see the /var/log/messages that result from booting
RHEL 4 and loading the i20 driver. Please post them, as well as the output of lsmod.

Comment 5 Frank Liu 2005-04-04 21:04:49 UTC
Since I can't install v4 on this machine, I booted the v4 CD into the rescue 
mode and run the following three commands: fdisk -l, lsmod, and dmesg:

fdisk -l
This disk has both DOS and BSD magic.
Give the 'b' command to go to BSD mode.

Disk /dev/i2o/hda: 36.7 GB, 36703924224 bytes
255 heads, 63 sectors/track, 4462 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

       Device Boot      Start         End      Blocks   Id  System

Disk /dev/i2o/hdb: 36.2 GB, 36280729600 bytes
255 heads, 63 sectors/track, 4410 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

       Device Boot      Start         End      Blocks   Id  System
/dev/i2o/hdb1   *           1         255     2048256   82  Linux swap

Disk /dev/i2o/hdc: 36.2 GB, 36280729600 bytes
255 heads, 63 sectors/track, 4410 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

       Device Boot      Start         End      Blocks   Id  System
/dev/i2o/hdc1               1        4410    35423293+  83  Linux

Disk /dev/i2o/hdd: 181.4 GB, 181403648000 bytes
255 heads, 63 sectors/track, 22054 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

       Device Boot      Start         End      Blocks   Id  System
/dev/i2o/hdd1               1       22054   177148723+  83  Linux
This disk has both DOS and BSD magic.
Give the 'b' command to go to BSD mode.

Disk /dev/i2o/hde: 36.2 GB, 36280729600 bytes
255 heads, 63 sectors/track, 4410 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

       Device Boot      Start         End      Blocks   Id  System
/dev/i2o/hde1   *           1          13      104391   83  Linux
/dev/i2o/hde2              14        4410    35318902+  83  Linux

lsmod
Module                  Size  Used by    Not tainted
parport_pc 24705 0 - Live 0xf8b65000
parport 37129 1 parport_pc, Live 0xf8af6000
dm_snapshot 17029 0 - Live 0xf8abc000
dm_mirror 22957 2 - Live 0xf8978000
dm_zero 2369 0 - Live 0xf8831000
dm_mod 54741 3 dm_snapshot,dm_mirror,dm_zero, Live 0xf8b56000
ext3 116809 0 - Live 0xf8b79000
jbd 71257 1 ext3, Live 0xf8b1e000
msdos 10177 0 - Live 0xf88fd000
raid6 101713 0 - Live 0xf8b04000
raid5 25153 0 - Live 0xf890f000
xor 13641 2 raid6,raid5, Live 0xf891d000
raid1 19905 0 - Live 0xf8917000
raid0 7617 0 - Live 0xf890c000
aic7xxx 148121 0 - Live 0xf8ac3000
sym53c8xx 69857 0 - Live 0xf8a81000
scsi_transport_spi 13761 1 sym53c8xx, Live 0xf88f8000
i2o_block 13645 2 - Live 0xf88f3000
i2o_core 39257 1 i2o_block, Live 0xf8901000
e100 39493 0 - Live 0xf88df000
mii 4673 1 e100, Live 0xf8889000
uhci_hcd 31065 0 - Live 0xf88ea000
sr_mod 17509 0 - Live 0xf8896000
sd_mod 17217 0 - Live 0xf8890000
scsi_mod 121421 5 aic7xxx,sym53c8xx,scsi_transport_spi,sr_mod,sd_mod, Live 
0xf8959000
edd 9505 0 - Live 0xf8852000
loop 15817 2 - Live 0xf886f000
nfs 218309 0 - Live 0xf8922000
lockd 63977 1 nfs, Live 0xf889e000
sunrpc 157093 2 nfs,lockd, Live 0xf88b7000
vfat 14529 0 - Live 0xf8875000
fat 44257 2 msdos,vfat, Live 0xf887d000
cramfs 42421 1 - Live 0xf8856000
vga16fb 12201 1 - Live 0xf8812000
vgastate 8257 1 vga16fb, Live 0xf8816000

dmesg:
 agp memory: 941M
agpgart: AGP aperture is 64M @ 0xec000000
serio: i8042 AUX port at 0x60,0x64 irq 12
serio: i8042 KBD port at 0x60,0x64 irq 1
Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing enabled
ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
ttyS2 at I/O 0x3e8 (irq = 15) is a 16550A
RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksize
divert: not allocating divert_blk for non-ethernet device lo
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
PIIX4: IDE controller at PCI slot 0000:00:12.1
PIIX4: chipset revision 1
PIIX4: not 100% native mode: will probe irqs later
    ide0: BM-DMA at 0x2c60-0x2c67, BIOS settings: hda:DMA, hdb:pio
    ide1: BM-DMA at 0x2c68-0x2c6f, BIOS settings: hdc:pio, hdd:pio
Probing IDE interface ide0...
hda: TOSHIBA CD-ROM XM-7102B, ATAPI CD/DVD-ROM drive
Using cfq io scheduler
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
Probing IDE interface ide1...
Probing IDE interface ide1...
ide2: I/O resource 0x3EE-0x3EE not free.
ide2: ports already in use, skipping probe
Probing IDE interface ide3...
ide3: Wait for ready failed before probe !
Probing IDE interface ide4...
ide4: Wait for ready failed before probe !
Probing IDE interface ide5...
ide5: Wait for ready failed before probe !
hda: ATAPI 32X CD-ROM drive, 128kB Cache, UDMA(33)
Uniform CD-ROM driver Revision: 3.20
ide-floppy driver 0.99.newide
usbcore: registered new driver hiddev
usbcore: registered new driver usbhid
drivers/usb/input/hid-core.c: v2.0:USB HID core driver
mice: PS/2 mouse device common for all mice
input: AT Translated Set 2 keyboard on isa0060/serio0
input: PS/2 Logitech Mouse on isa0060/serio1
md: md driver 0.90.0 MAX_MD_DEVS=256, MD_SB_DISKS=27
NET: Registered protocol family 2
IP: routing cache hash table of 2048 buckets, 64Kbytes
TCP: Hash tables configured (established 262144 bind 37449)
Initializing IPsec netlink socket
NET: Registered protocol family 1
NET: Registered protocol family 17
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.
RAMDISK: Compressed image found at block 0
VFS: Mounted root (ext2 filesystem).
vga16fb: initializing
vga16fb: mapped to 0xc00a0000
Console: switching to colour frame buffer device 80x30
fb0: VGA16 VGA frame buffer device
loop: loaded (max 8 devices)
inserting floppy driver for 2.6.9-5.EL
floppy0: no floppy controllers found
BIOS EDD facility v0.16 2004-Jun-25, 6 devices found
SCSI subsystem initialized
USB Universal Host Controller Interface driver v2.2
uhci_hcd 0000:00:12.2: UHCI Host Controller
uhci_hcd 0000:00:12.2: irq 11, io base 00002c40
uhci_hcd 0000:00:12.2: new USB bus registered, assigned bus number 1
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
e100: Intel(R) PRO/100 Network Driver, 3.0.27-k2-NAPI
e100: Copyright(c) 1999-2004 Intel Corporation
divert: allocating divert_blk for eth0
e100: eth0: e100_probe: addr 0xe8103000, irq 11, MAC addr 00:D0:B7:A8:49:A8
divert: allocating divert_blk for eth1
e100: eth1: e100_probe: addr 0xf8000000, irq 11, MAC addr 00:03:47:3B:B5:B0
divert: allocating divert_blk for eth2
e100: eth2: e100_probe: addr 0xf8001000, irq 11, MAC addr 00:03:47:3B:B5:B1
I2O Core - (C) Copyright 1999 Red Hat Software
i2o: max_drivers=4
i2o: Checking for PCI I2O controllers...
i2o: I2O controller found on bus 3 at 32.
i2o: PCI I2O controller at E8400000 size=1048576
i2o: using write combining MTRR
i2o: MTRR workaround for Intel i960 processor
iop0: Installed at IRQ 10
iop0: Activating I2O controller...
iop0: This may take a few minutes if there are many devices
iop0: HRT has 0 entries of 16 bytes each.
iop0: Controller added
I2O Block Storage OSM v0.9
   (c) Copyright 1999-2001 Red Hat Software.
block-osm: registered device at major 80
block-osm: New device detected (TID: 21d)
 i2o/hda:
block-osm: New device detected (TID: 221)
 i2o/hdb: i2o/hdb1
block-osm: New device detected (TID: 222)
 i2o/hdc: i2o/hdc1
block-osm: New device detected (TID: 223)
 i2o/hdd: i2o/hdd1
block-osm: New device detected (TID: 220)
 i2o/hde: i2o/hde1 i2o/hde2
sym0: <875> rev 0x26 at pci 0000:00:0d.0 irq 11
sym0: Symbios NVRAM, ID 7, Fast-20, SE, parity checking
sym0: open drain IRQ line driver, using on-chip SRAM
sym0: using LOAD/STORE-based firmware.
sym0: SCSI BUS has been reset.
scsi0 : sym-2.1.18j
scsi1 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36
        <Adaptec aic7896/97 Ultra2 SCSI adapter>
        aic7896/97: Ultra2 Wide Channel A, SCSI Id=7, 32/253 SCBs

scsi2 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.36
        <Adaptec aic7896/97 Ultra2 SCSI adapter>
        aic7896/97: Ultra2 Wide Channel B, SCSI Id=7, 32/253 SCBs

ide-cd: cmd 0x28 timed out
hda: DMA interrupt recovery
hda: lost interrupt
hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
hda: status error: error=0x00
hda: drive not ready for command
ide-cd: cmd 0x28 timed out
hda: DMA interrupt recovery
hda: lost interrupt
hda: status timeout: status=0xd0 { Busy }
hda: status timeout: error=0x04Aborted Command 
hda: DMA disabled
hda: drive not ready for command
hda: ATAPI reset complete
ISO 9660 Extensions: Microsoft Joliet Level 3
Unable to load NLS charset utf8
Unable to load NLS charset utf8
Unable to identify CD-ROM format.
VFS: Can't find ext2 filesystem on dev loop0.
Unable to identify CD-ROM format.
VFS: busy inodes on changed media.
security:  3 users, 4 roles, 316 types, 20 bools
security:  53 classes, 9815 rules
SELinux:  Completing initialization.
SELinux:  Setting up existing superblocks.
SELinux: initialized (dev loop0, type cramfs), uses genfs_contexts
SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts
SELinux: initialized (dev usbdevfs, type usbdevfs), uses genfs_contexts
SELinux: initialized (dev ramfs, type ramfs), uses genfs_contexts
SELinux: initialized (dev ramfs, type ramfs), uses genfs_contexts
SELinux: initialized (dev ram0, type ext2), uses xattr
inode_doinit_with_dentry:  no dentry for dev=ram0 ino=126
SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts
SELinux: initialized (dev mqueue, type mqueue), not configured for labeling
SELinux: initialized (dev hugetlbfs, type hugetlbfs), not configured for 
labelin
g
SELinux: initialized (dev devpts, type devpts), uses transition SIDs
SELinux: initialized (dev eventpollfs, type eventpollfs), uses genfs_contexts
SELinux: initialized (dev pipefs, type pipefs), uses task SIDs
SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs
SELinux: initialized (dev futexfs, type futexfs), uses genfs_contexts
SELinux: initialized (dev sockfs, type sockfs), uses task SIDs
SELinux: initialized (dev proc, type proc), uses genfs_contexts
SELinux: initialized (dev bdev, type bdev), uses genfs_contexts
SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts
SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts
md: raid0 personality registered as nr 2
md: raid1 personality registered as nr 3
raid5: automatically using best checksumming function: pIII_sse
   pIII_sse  :  1936.000 MB/sec
raid5: using function: pIII_sse (1936.000 MB/sec)
md: raid5 personality registered as nr 4
raid6: int32x1    328 MB/s
raid6: int32x2    386 MB/s
raid6: int32x4    277 MB/s
raid6: int32x8    269 MB/s
raid6: mmxx1      929 MB/s
raid6: mmxx2     1183 MB/s
raid6: sse1x1     871 MB/s
raid6: sse1x2    1195 MB/s
raid6: using algorithm sse1x2 (1195 MB/s)
md: raid6 personality registered as nr 8
device-mapper: 4.1.0-ioctl (2003-12-10) initialised: dm.com
e100: eth0: e100_watchdog: link up, 100Mbps, full-duplex


Comment 6 Frank Liu 2005-04-26 18:06:23 UTC
Any progress on this?
This is a show stopper and we can't upgrade to RHEL 4 because of this problem.

Comment 7 Chris Evich 2005-05-30 14:25:54 UTC
Don't know if it helps, but I ran into an issue with this controller in version
4.   If the controller is being used to access individual disks, and not an
array, then you don't need the i2o modules.  In that state the controller will
behave like a regular aic7xxx.  Perhaps having both modules loaded is causing
the problem?  (I'm not sure if you've got an array here or JBOD.)

Comment 8 Frank Liu 2005-05-30 17:04:37 UTC
not JBOD.
I have a few RAID 1 and one RAID 5 configured, as shown in the above output 
from the "good" fdisk -l from RHEL version 3.

Comment 9 Tom Coughlan 2005-05-31 14:06:33 UTC
From the logs, it looks like /dev/i2o/hda is a bogus device. 

/dev/i2o/hda corresponsts to ?
/dev/i2o/hdb corresponsts to /dev/sdb
/dev/i2o/hdc corresponsts to /dev/sdc
/dev/i2o/hdd corresponsts to /dev/sdd
/dev/i2o/hde corresponsts to /dev/sda

I also note the errors on /dev/hda (ATAPI CD/DVD-ROM drive):

ide-cd: cmd 0x28 timed out
hda: DMA interrupt recovery
hda: lost interrupt
hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
hda: status error: error=0x00
hda: drive not ready for command

I'm not sure if that is normal, or if there is a connection. 

The switch from the dpt_i2o driver in 2.4 to the i2o driver in 2.6 could account
for a change in the device ordering, so sda could become i2o/hde. I don't know
why you are seeing the bogus i2o/hda though. I will try to reproduce this.

Comment 10 Jiri Pallich 2012-06-20 16:07:51 UTC
Thank you for submitting this issue for consideration in Red Hat Enterprise Linux. The release for which you requested us to review is now End of Life. 
Please See https://access.redhat.com/support/policy/updates/errata/

If you would like Red Hat to re-consider your feature request for an active release, please re-open the request via appropriate support channels and provide additional supporting details about the importance of this issue.