Bug 10114 - CCISS module hangs
Summary: CCISS module hangs
Status: CLOSED PATCH_ALREADY_AVAILABLE
Alias: None
Product: Drivers
Classification: Unclassified
Component: Other (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: Mike Miller
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-02-26 06:35 UTC by Frode Petterson
Modified: 2008-04-25 06:56 UTC (History)
3 users (show)

See Also:
Kernel Version: 2.6.24
Subsystem:
Regression: Yes
Bisected commit-id:


Attachments

Description Frode Petterson 2008-02-26 06:35:41 UTC
Latest working kernel version: 2.6.22.14
Earliest failing kernel version: 2.6.24.2
Distribution: Ubuntu-server 7.10
Hardware Environment: HP Proliant ML370 G3
Software Environment: x86
Problem Description: CCISS module hangs on boot. Compiling the module into the kernel makes no difference.

Steps to reproduce: Use 2.6.24.2 on a system with HP Smart Array 6402

Last kernel messages:
Ramdisk driver initialized: 16 RAM disks of 65536K size 1024 blocksize
HP CISS Driver (v 3.6.14)
ACPI: PCI Interrupt 0000:02:01.0[A] -> CSI 16 (level, low) -> IRQ 16
cciss0: (0x46) at PCI 0000:02:01.0 IRQ 223 using DAC
      blocks= 35553120 block_size= 512
      heads=255, sectors=32, cylinders=4357
     
      blocks= 213367680 block_size= 512
      heads=255, sectors=32, cylinders=26140

NOTE: At first boot I was dropped to initramfs when the kernel failed to find /.

Part of dmesg from working 2.6.22-14-server kernel (ubuntu-server):
[  103.126800] cciss0: <0x46> at PCI 0000:02:01.0 IRQ 19 using DAC
[  103.156797]       blocks= 35553120 block_size= 512
[  103.166762]       heads=255, sectors=32, cylinders=4357
[  103.166765] 
[  103.176762]       blocks= 213367680 block_size= 512
[  103.186760]       heads=255, sectors=32, cylinders=26148
[  103.186763] 
[  103.187358]       blocks= 35553120 block_size= 512
[  103.187479]       heads=255, sectors=32, cylinders=4357
[  103.187481] 
[  103.187485]  cciss/c0d0: p1 p2
[  103.191958]       blocks= 213367680 block_size= 512
[  103.192073]       heads=255, sectors=32, cylinders=26148
[  103.192074] 
[  103.192077]  cciss/c0d1: p1
[  103.377089] ata1.00: ATAPI: COMPAQ  CD-ROM  SC-148C, B101, max PIO4
[  103.421982] Attempting manual resume

Other notes: The problem might be similar to bug #9859, I too compiled with make-kpkg, could this be causing the problem?

I tried setting up netconsole for full output, but no luck.
Comment 1 Frode Petterson 2008-02-26 08:05:37 UTC
Ok, it seems I get droppet to initramfs everytime after some minutes. Here's some more info from the failing kernel:
[  151.916425]		blocks= 35553120 block_size= 512
[  151.926421]		heads=255, sectors=32, cylinders=4357
[  151.926423]
[  151.936423]		blocks= 213367680 block_size= 512
[  151.946416]		heads=255, sectors=32, cylinders=26148
[  151.946417]
[  152.075507] ata1.00: ATAPI: COMPAQ CD-ROM SC-140C, B101, max P104
[  152.256729] ata1.00: configured for P104
[  152.416390] scsi: waiting for bus probes to complete ...
[  155.577190] scsi 2:0:0:0: CD-ROm		COMPAQ	CD-ROM SC-140C	B101 PQ: 0 ANSI: 5
[  301.167466] Driver 'sr' needs updating - please use bus_type methods
[  301.171407] sr0: scsi3-mmc drive: 1x/48x cd/rw xa/form2 cdda tray
[  301.171507] Uniform CD-ROM driver Revision: 3.20
[  301.181687] sr 2:0:0:0: Attached scsi generic sg0 type 5
Done.
	Check root= bootarg cat /proc/cmdline
	or missing modules, devices: cat /proc/modules ls /dev
ALERT! /dev/cciss/c0d0p2 does not exist. Dropping to a shell!

BusyBox v1.1.3 (Debian 1:1.1.3-5ubuntu7) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

(initramfs) cat /proc/modules
...
cciss 62378 2 - Loading 0xf8893000
...

pata_serverworks and ohci_hcd is also loading.
Comment 2 Mike Miller 2008-02-26 11:09:28 UTC
Normally when we a see at this point it indicates an interrupt routing issue. Did anything change in ACPI in the 2.6.24.2 kernel that was undone by the time .14 came out?
Comment 3 Frode Petterson 2008-02-27 07:34:53 UTC
Since nothing has changed in the cciss module I guess it must be the ACPI causing trouble.
Look at the IRQ and PCI Interrupt numbers below.

Working kernel:
ACPI: PCI Interrupt 0000:02:01.0[A] -> GSI 16 (level, low) -> IRQ 19
cciss0: <0x46> at PCI 0000:02:01.0 IRQ 19 using DAC

Not working kernel:
ACPI: PCI Interrupt 0000:02:01.0[A] -> CSI 16 (level, low) -> IRQ 16
cciss0: (0x46) at PCI 0000:02:01.0 IRQ 223 using DAC

How did IRQ 16 suddenly become IRQ 223 in the 2.6.24 kernel?
Comment 4 Mike Miller 2008-04-24 09:40:21 UTC
Sorry for the late response. The kernel initially assigned us IRQ 16. When we enabled MSI-X on the controller we were assigned MSI-X vector 223. That's expected behaviour.
Comment 5 Frode Petterson 2008-04-24 09:50:01 UTC
Strange, could this hang be caused by old firmware?
Comment 6 Mike Miller 2008-04-24 09:52:32 UTC
It's possible but not very likely. That said, we always recommend using the latest firmware available on hp.com.
Comment 7 Frode Petterson 2008-04-25 06:56:05 UTC
It seems lika a firmware upgrade did the trick. 2.6.23 -> 25 now boots perfectly.

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