----- Original Message -----
> From: "Ben Hutchings" <[email protected]>
> To: "CAI Qian" <[email protected]>, "James E.J. Bottomley"
> <[email protected]>
> Cc: "Jianpeng Ma" <[email protected]>, [email protected]
> Sent: Friday, December 28, 2012 12:03:46 AM
> Subject: Re: [PATCH] [SCSI] mvsas: Fix oops when ata commond timeout.
>
> On Tue, 2012-12-11 at 04:12 -0500, CAI Qian wrote:
> > James, looks like this patch is applicable to the stable releases
> > and the Fedora had already merged it in their 3.6-based kernel.
> > If you agree, please provide an ACK here so that Greg can take this
> > in.
> >
> > Author: Jianpeng Ma <[email protected]>
> > Upstream-ID: 95ab000388974d8ffef8257306b4be6e8778b768
> > Stable-trees: 3.4.x, 3.6.x
>
> Also looks applicable to 3.2 as the synchronous call to
> mvs_tmf_timedout() was added in 3.1.
>
> I didn't see an ACK or NAK for this yet, though I may have missed
> it...
You are right, Ben. This one is still missing James's blessing :)
>
> Ben.
>
> > Kernel message follows:
> >
> > [ 511.712011] sd 11:0:0:0: [sdf] command ffff8800a4e81400 timed
> > out
> > [ 511.712022] sas: Enter sas_scsi_recover_host busy: 1 failed: 1
> > [ 511.712024] sas: trying to find task 0xffff8800a4d24c80
> > [ 511.712026] sas: sas_scsi_find_task: aborting task
> > 0xffff8800a4d24c80
> > [ 511.712029] drivers/scsi/mvsas/mv_sas.c 1631:mvs_abort_task()
> > mvi=ffff8800b5300000 task=ffff8800a4d24c80 slot=ffff8800b5325038
> > slot_idx=x0
> > [ 511.712035] BUG: unable to handle kernel NULL pointer
> > dereference at
> > 0000000000000058
> > [ 511.712040] IP: [<ffffffff815f8c0c>]
> > _raw_spin_lock_irqsave+0xc/0x30
> > [ 511.712047] PGD 0
> > [ 511.712049] Oops: 0002 [#1] SMP
> > [ 511.712052] Modules linked in: mvsas libsas scsi_transport_sas
> > raid456 async_pq async_xor xor async_memcpy async_raid6_recov
> > raid6_pq
> > async_tx [last unloaded: mvsas]
> > [ 511.712062] CPU 3
> > [ 511.712066] Pid: 7322, comm: scsi_eh_11 Not tainted 3.5.0+ #106
> > To Be
> > Filled By O.E.M. To Be Filled By O.E.M./To be filled by O.E.M.
> > [ 511.712068] RIP: 0010:[<ffffffff815f8c0c>] [<ffffffff815f8c0c>]
> > _raw_spin_lock_irqsave+0xc/0x30
> > [ 511.712073] RSP: 0018:ffff880098d3bcb0 EFLAGS: 00010086
> > [ 511.712074] RAX: 0000000000000286 RBX: 0000000000000058 RCX:
> > 00000000000000c3
> > [ 511.712076] RDX: 0000000000000100 RSI: 0000000000000046 RDI:
> > 0000000000000058
> > [ 511.712078] RBP: ffff880098d3bcb0 R08: 000000000000000a R09:
> > 0000000000000000
> > [ 511.712080] R10: 00000000000004e8 R11: 00000000000004e7 R12:
> > ffff8800a4d24c80
> > [ 511.712082] R13: 0000000000000050 R14: ffff8800b5325038 R15:
> > ffff8800a4eafe00
> > [ 511.712084] FS: 0000000000000000(0000)
> > GS:ffff8800bdb80000(0000)
> > knlGS:0000000000000000
> > [ 511.712086] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> > [ 511.712088] CR2: 0000000000000058 CR3: 00000000a4ce6000 CR4:
> > 00000000000407e0
> > [ 511.712090] DR0: 0000000000000000 DR1: 0000000000000000 DR2:
> > 0000000000000000
> > [ 511.712091] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7:
> > 0000000000000400
> > [ 511.712093] Process scsi_eh_11 (pid: 7322, threadinfo
> > ffff880098d3a000, task ffff8800a61dde40)
> > [ 511.712095] Stack:
> > [ 511.712096] ffff880098d3bce0 ffffffff81060683 ffff880000000000
> > 0000000000000000
> > [ 511.712099] ffff8800a4d24c80 ffff8800b5300000 ffff880098d3bcf0
> > ffffffffa0076a88
> > [ 511.712102] ffff880098d3bd50 ffffffffa0079bb5 ffff880000000000
> > ffff880000000018
> > [ 511.712106] Call Trace:
> > [ 511.712110] [<ffffffff81060683>] complete+0x23/0x60
> > [ 511.712115] [<ffffffffa0076a88>] mvs_tmf_timedout+0x18/0x20
> > [mvsas]
> > [ 511.712119] [<ffffffffa0079bb5>] mvs_slot_complete+0x765/0x7d0
> > [mvsas]
> > [ 511.712125] [<ffffffffa005a17d>]
> > sas_scsi_recover_host+0x55d/0xdb0
> > [libsas]
> > [ 511.712128] [<ffffffff8106d600>] ? idle_balance+0xe0/0x130
> > [ 511.712133] [<ffffffff813b150c>] scsi_error_handler+0xcc/0x470
> > [ 511.712136] [<ffffffff815f7ad0>] ? __schedule+0x370/0x730
> > [ 511.712139] [<ffffffff8105f728>] ? __wake_up_common+0x58/0x90
> > [ 511.712142] [<ffffffff813b1440>] ?
> > scsi_eh_get_sense+0x110/0x110
> > [ 511.712146] [<ffffffff810571be>] kthread+0x8e/0xa0
> > [ 511.712150] [<ffffffff816015f4>] kernel_thread_helper+0x4/0x10
> > [ 511.712153] [<ffffffff81057130>] ?
> > flush_kthread_work+0x120/0x120
> > [ 511.712156] [<ffffffff816015f0>] ? gs_change+0xb/0xb
> > [ 511.712157] Code: 8a 00 01 00 00 89 d0 f0 66 0f b1 0f 66 39 d0
> > 0f 94
> > c0 0f b6 c0 5d c3 0f 1f 84 00 00 00 00 00 55 48 89 e5 9c 58 fa ba
> > 00 01
> > 00 00 <f0> 66 0f c1 17 0f b6 ce 38 d1 74 11 0f 1f 84 00 00 00 00 00
> > f3
> > [ 511.712191] RIP [<ffffffff815f8c0c>]
> > _raw_spin_lock_irqsave+0xc/0x30
> > [ 511.712194] RSP <ffff880098d3bcb0>
> > [ 511.712196] CR2: 0000000000000058
> > [ 511.712198] ---[ end trace a781c7b1e65db92c ]---
> >
> > Signed-off-by: Jianpeng Ma <[email protected]>
> > Signed-off-by: James Bottomley <[email protected]>
> >
> > diff --git a/drivers/scsi/mvsas/mv_sas.c
> > b/drivers/scsi/mvsas/mv_sas.c
> > index 4539d59..a3776d6 100644
> > --- a/drivers/scsi/mvsas/mv_sas.c
> > +++ b/drivers/scsi/mvsas/mv_sas.c
> > @@ -1629,7 +1629,7 @@ int mvs_abort_task(struct sas_task *task)
> > mv_dprintk("mvs_abort_task() mvi=%p task=%p "
> > "slot=%p slot_idx=x%x\n",
> > mvi, task, slot, slot_idx);
> > - mvs_tmf_timedout((unsigned long)task);
> > + task->task_state_flags |= SAS_TASK_STATE_ABORTED;
> > mvs_slot_task_free(mvi, task, slot, slot_idx);
> > rc = TMF_RESP_FUNC_COMPLETE;
> > goto out;
>
> --
> Ben Hutchings
> The world is coming to an end. Please log off.
>
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html