[Bug 81861] Oops by mvsas v0.8.16: sas: ataX: end_device-Y:0:Z: dev error handler -> general protection fault, RIP: mvs_task_prep_ata+0x80/0x3a0

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://bugzilla.kernel.org/show_bug.cgi?id=81861

--- Comment #4 from linux-ide@xxxxxxxxxxxxx ---
Trying to debug mvs_task_prep with the help of the tutorial at
<http://www.opensourceforu.com/2011/01/understanding-a-kernel-oops/>.

# cat /sys/module/mvsas/sections/.init.text
0xffffffffa00c8000

# cd /lib/modules/3.13.0-24-generic/kernel/drivers/scsi/mvsas

# gdb mvsas.ko

(gdb) add-symbol-file
/usr/lib/debug/lib/modules/3.13.0-24-generic/kernel/drivers/scsi/mvsas/mvsas.ko
0xffffffffa00c8000

(gdb) disassemble mvs_task_prep

Hex to decimal: 0x72e = <+1838>

0xffffffffa00ca81e <+1838>:    mov    0x254(%rbx),%ecx

Thanks to the trick from
<https://blogs.oracle.com/ksplice/entry/8_gdb_tricks_you_should>
(gdb) set substitute-path /build/buildd /home/user/src

(gdb) list *0xffffffffa00ca81e
0xffffffffa00ca81e is in mvs_task_prep
(/build/buildd/linux-3.13.0/drivers/scsi/mvsas/mv_sas.c:471).
Line number 466 out of range;
/build/buildd/linux-3.13.0/drivers/scsi/mvsas/mv_sas.c has 306 lines.

I guess my gdb version 7.7 has a line counting bug according to
<https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=730630>

A manual approach using
<http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-trusty.git;a=blob;f=drivers/scsi/mvsas/mv_sas.c;h=6c1f223a8e1d335fa7c86a374e470e666e848906;hb=HEAD>:

467         slot = &mvi->slot_info[tag];
468         slot->tx = mvi->tx_prod;
469         del_q = TXQ_MODE_I | tag |
470                 (TXQ_CMD_STP << TXQ_CMD_SHIFT) |
471                 (MVS_PHY_ID << TXQ_PHY_SHIFT) |
472                 (mvi_dev->taskfileset << TXQ_SRS_SHIFT);
473         mvi->tx[mvi->tx_prod] = cpu_to_le32(del_q);

Results that "(MVS_PHY_ID << TXQ_PHY_SHIFT)" is the offending code.

How should that be patched?

-- 
You are receiving this mail because:
You are watching the assignee of the bug.
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux