You are not logged in.
Pages: 1
I'm having some problems loading rr174x with kernel 2.6.38. The lts-kernel works fine.
Output after loading the driver (sata_mv unloaded and blacklisted):
[ 148.077267] rr174x: module license 'Proprietary' taints kernel.
[ 148.077273] Disabling lock debugging due to kernel taint
[ 148.083371] rr174x:RocketRAID 174x controller driver v2.4 (May 18 2011 21:00:59)
[ 148.083406] pci 0000:02:02.0: PCI INT A -> GSI 22 (level, low) -> IRQ 22
[ 148.083550] rr174x:adapter at PCI 2:2:0, IRQ 22
[ 148.659898] rr174x:start channel [0,0]
[ 148.659987] rr174x:start channel [0,1]
[ 148.659987] rr174x:start channel [0,2]
[ 148.659987] rr174x:start channel [0,3]
[ 148.859997] rr174x:[0 0] Start channel soft reset.
[ 148.860019] rr174x:[0 1] Start channel soft reset.
[ 148.860039] rr174x:[0 3] Start channel soft reset.
[ 149.169987] rr174x:channel [0,0] started successfully
[ 149.169987] rr174x:channel [0,1] started successfully
[ 149.169987] rr174x:channel [0,3] started successfully
[ 164.283331] rr174x:[0 2] Failed to perform channel hard reset.
[ 164.315351] scsi6 : rr174x
[ 164.315590] BUG: unable to handle kernel NULL pointer dereference at (null)
[ 164.315628] IP: [<f8353f0b>] hpt_queuecommand+0xcb/0xe30 [rr174x]
[ 164.315664] *pde = 00000000
[ 164.315675] Oops: 0000 [#1] PREEMPT SMP
[ 164.315692] last sysfs file: /sys/module/scsi_mod/initstate
[ 164.315708] Modules linked in: rr174x(P+) ipv6 ext2 xfs exportfs joydev usbhid hid nouveau ttm drm_kms_helper drm snd_seq_dummy snd_emu10k1 snd_seq_oss snd_intel8x0 snd_seq_midi_event snd_seq snd_rawmidi snd_pcm_oss snd_ac97_codec ohci_hcd uhci_hcd ac97_bus snd_seq_device snd_mixer_oss ppdev emu10k1_gp i2c_algo_bit snd_util_mem e100 snd_pcm gameport video mii snd_hwdep ehci_hcd intel_agp i2c_i801 snd_timer usbcore psmouse lp parport_pc intel_gtt floppy shpchp processor sg i2c_core button snd pcspkr serio_raw pci_hotplug parport agpgart soundcore evdev snd_page_alloc iTCO_wdt iTCO_vendor_support ext4 mbcache jbd2 crc16 raid1 md_mod sd_mod pata_acpi ata_piix libata scsi_mod dm_mod [last unloaded: sata_mv]
[ 164.316015]
[ 164.316023] Pid: 1354, comm: modprobe Tainted: P 2.6.38-ARCH #1 /8PE667U
[ 164.316055] EIP: 0060:[<f8353f0b>] EFLAGS: 00010202 CPU: 0
[ 164.316078] EIP is at hpt_queuecommand+0xcb/0xe30 [rr174x]
[ 164.316093] EAX: 00000000 EBX: ebfa4300 ECX: ebadcf58 EDX: ebea0088
[ 164.316109] ESI: ebea007c EDI: ebea0000 EBP: f5249bb4 ESP: f5249b48
[ 164.316125] DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
[ 164.316140] Process modprobe (pid: 1354, ti=f5248000 task=f50b33c0 task.ti=f5248000)
[ 164.316158] Stack:
[ 164.316165] ebfa4334 00000000 f5249b68 f8066bd8 00000020 f8067ed0 ebfa4300 00000000
[ 164.316201] ebadce00 f5fa6000 c155a900 f5249b8c c1051e06 c155a900 f52a5734 f52a5734
[ 164.316236] 00000086 f5249bb8 c10523fe 00000000 f80681ca c155a900 f52a54c8 86c67f22
[ 164.316272] Call Trace:
[ 164.316294] [<f8066bd8>] ? scsi_init_sgtable+0x48/0x80 [scsi_mod]
[ 164.316321] [<f8067ed0>] ? scsi_sg_alloc+0x0/0x50 [scsi_mod]
[ 164.316343] [<c1051e06>] ? lock_timer_base.isra.31+0x26/0x50
[ 164.316360] [<c10523fe>] ? mod_timer+0x10e/0x2c0
[ 164.316383] [<f80681ca>] ? scsi_prep_fn+0x2a/0x50 [scsi_mod]
[ 164.316410] [<f806237d>] scsi_dispatch_cmd+0x9d/0x250 [scsi_mod]
[ 164.316430] [<c1193c37>] ? blk_add_timer+0xa7/0xb0
[ 164.316455] [<f8067dbd>] scsi_request_fn+0x2dd/0x3a0 [scsi_mod]
[ 164.316472] [<c1051fd3>] ? del_timer+0x63/0xf0
[ 164.316488] [<c118f317>] ? blk_plug_device+0x67/0x120
[ 164.316504] [<c118f61b>] __generic_unplug_device+0x2b/0x30
[ 164.316520] [<c1192d69>] blk_execute_rq_nowait+0x59/0x90
[ 164.316536] [<c1192e12>] blk_execute_rq+0x72/0x100
[ 164.316550] [<c1192ce0>] ? blk_end_sync_rq+0x0/0x30
[ 164.316565] [<c119306d>] ? blk_recount_segments+0x1d/0x40
[ 164.316582] [<c118fcec>] ? blk_rq_bio_prep+0x6c/0x80
[ 164.316597] [<c1192a4e>] ? blk_rq_map_kern+0xbe/0x130
[ 164.316621] [<f8066ef4>] scsi_execute+0xd4/0x120 [scsi_mod]
[ 164.316647] [<f8066fc0>] scsi_execute_req+0x80/0x100 [scsi_mod]
[ 164.316673] [<f8069668>] scsi_probe_and_add_lun+0x1a8/0x8f0 [scsi_mod]
[ 164.316693] [<c1244c32>] ? attribute_container_add_device+0xf2/0x150
[ 164.316713] [<c1240024>] ? __sysdev_resume+0x64/0xd0
[ 164.316737] [<f8069fea>] __scsi_scan_target+0xea/0x5c0 [scsi_mod]
[ 164.316756] [<c11a2dfd>] ? ida_get_new_above+0x1ad/0x230
[ 164.316773] [<c11a332b>] ? idr_pre_get+0x4b/0x80
[ 164.316787] [<c11a2e8c>] ? ida_get_new+0xc/0x10
[ 164.316809] [<f806a510>] scsi_scan_channel.part.7+0x50/0x70 [scsi_mod]
[ 164.316836] [<f806a83b>] scsi_scan_host_selected+0x11b/0x140 [scsi_mod]
[ 164.316863] [<f806a8d7>] do_scsi_scan_host+0x77/0x80 [scsi_mod]
[ 164.316889] [<f806ab9e>] scsi_scan_host+0x17e/0x1d0 [scsi_mod]
[ 164.316920] [<f804c094>] init_this_scsi_driver+0x94/0xdb [rr174x]
[ 164.316938] [<c1001130>] do_one_initcall+0x30/0x170
[ 164.316964] [<f804c000>] ? init_this_scsi_driver+0x0/0xdb [rr174x]
[ 164.316985] [<c107a583>] sys_init_module+0xe03/0x1a20
[ 164.317017] [<c10037df>] sysenter_do_call+0x12/0x28
[ 164.317030] Code: 60 5b 5e 5f 5d c3 66 90 8b 50 48 89 f0 e8 7e c5 00 00 85 c0 89 45 b4 74 2e f6 80 4c 01 00 00 01 74 25 8b 45 b8 8b 40 30 89 45 b0 <0f> b6 00 3c a1 76 2a 8b 45 b8 8b 50 5c c7 80 8c 00 00 00 00 00
[ 164.317242] EIP: [<f8353f0b>] hpt_queuecommand+0xcb/0xe30 [rr174x] SS:ESP 0068:f5249b48
[ 164.317280] CR2: 0000000000000000
[ 164.324412] ---[ end trace 486233d2f4284e3a ]---
I have fixed some compile errors in the source (downloaded from http://www.highpoint-tech.com/USA_new/p … tm#rr1700) of rr174x see patch :
diff -crB -x '*.ko' -x '*~' -x .build /tmp/rr174x-linux-src-v2.4//osm/linux/os_linux.c /home/gino/rr174x-linux-src-v2.4//osm/linux/os_linux.c
*** /tmp/rr174x-linux-src-v2.4//osm/linux/os_linux.c 2009-10-09 08:34:41.000000000 +0200
--- /home/gino/rr174x-linux-src-v2.4//osm/linux/os_linux.c 2011-05-18 21:06:31.903168240 +0200
***************
*** 259,265 ****
for (minor=0; minor<=240; minor+=16) {
struct block_device *bdev = bdget(MKDEV(major[i], minor));
if (bdev &&
! #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28)
blkdev_get(bdev, FMODE_READ)
#else
blkdev_get(bdev, FMODE_READ, 0 __BDEV_RAW)
--- 259,267 ----
for (minor=0; minor<=240; minor+=16) {
struct block_device *bdev = bdget(MKDEV(major[i], minor));
if (bdev &&
! #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38)
! blkdev_get(bdev, FMODE_READ, NULL)
! #elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28)
blkdev_get(bdev, FMODE_READ)
#else
blkdev_get(bdev, FMODE_READ, 0 __BDEV_RAW)
diff -crB -x '*.ko' -x '*~' -x .build /tmp/rr174x-linux-src-v2.4//osm/linux/osm_linux.h /home/gino/rr174x-linux-src-v2.4//osm/linux/osm_linux.h
*** /tmp/rr174x-linux-src-v2.4//osm/linux/osm_linux.h 2009-10-09 08:34:41.000000000 +0200
--- /home/gino/rr174x-linux-src-v2.4//osm/linux/osm_linux.h 2011-05-18 21:06:31.903168240 +0200
***************
*** 8,18 ****
/* system headers */
#ifndef AUTOCONF_INCLUDED
#include <linux/config.h>
#endif
!
! #include <linux/version.h>
#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)) && defined(MODVERSIONS)
#include <linux/modversions.h>
--- 8,20 ----
/* system headers */
+ #include <linux/version.h>
+
#ifndef AUTOCONF_INCLUDED
+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
#include <linux/config.h>
#endif
! #endif
#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)) && defined(MODVERSIONS)
#include <linux/modversions.h>
Last edited by ginoh (2011-05-18 20:49:32)
Offline
Hey Ginoh,
did you solve your problem? I'm trying to build the driver on Ubuntu with kernel 2.6.38-10-generic-pae. Unfortunately neither the clean source nor your patch seem to work.
Make install gives:
root@server:/home/sebastianhanschke/rr174x/rr174x-linux-src-v2.4/product/rr1740pm/linux# make install
make[1]: Entering directory `/usr/src/linux-headers-2.6.38-10-generic-pae'
CC [M] /home/sebastianhanschke/rr174x/rr174x-linux-src-v2.4/product/rr1740pm/linux/.build/os_linux.o
/home/sebastianhanschke/rr174x/rr174x-linux-src-v2.4/product/rr1740pm/linux/.build/os_linux.c: In function ‘refresh_sd_flags’:
/home/sebastianhanschke/rr174x/rr174x-linux-src-v2.4/product/rr1740pm/linux/.build/os_linux.c:263:7: error: too few arguments to function ‘blkdev_get’
include/linux/fs.h:2055:12: note: declared here
make[2]: *** [/home/sebastianhanschke/rr174x/rr174x-linux-src-v2.4/product/rr1740pm/linux/.build/os_linux.o] Error 1
make[1]: *** [_module_/home/sebastianhanschke/rr174x/rr174x-linux-src-v2.4/product/rr1740pm/linux/.build] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.38-10-generic-pae'
make: *** [rr174x.ko] Error 2
Any ideas/suggestions?
Thanks
Sebastian
Offline
Offline
I actually don't want to replace my kernel if I don't have to. Ubuntu 11.04 is currently running .38 (I know that this is the archlinux board, but Ginoh's post looked quite promising to me), that's why.
Offline
I will look at the patch this evening, but I only fixed some compile errors. the actual crash is still there (I send the issue to highpoint, but they don't have a solution at this point)
I also tested with vanilla kernel 2.6.39, but it has the same issue as described above. not sure if it crashes in kernel 3.0.
Last edited by ginoh (2011-08-01 16:29:43)
Offline
I verified the patch and it build correctly against .39 (don't have the .38 sources at the moment, but probably works also)
How did you apply it? I used the following command in the root of the rr174x source tree.
patch -p3 -i path/to/the/patch/rr174x-linux-src-v2.4-2.6.38.patch
Offline
Pages: 1