Re: [PATCH] scsi: target: add TMF to tmr_list at the handling

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

 



On 1/11/24 6:59 AM, Dmitry Bogdanov wrote:
> iSCSI Abort that are responded by iscsi itself is added to tmr_list but
> it does not go to target core. On other side LUN_RESET that goes throught
> tmr_list takes a refcounter of that abort and wait for completion of the abort
> that will be never completed because it was not even started in the target core.
> 
> Such logs shows that situations:
> 
>  Unable to locate ITT: 0x05000000 on CID: 0
>  Unable to locate RefTaskTag: 0x05000000 on CID: 0.
>  wait_for_tasks: Stopping tmf LUN_RESET with tag 0x0 ref_task_tag 0x0 i_state 34 t_state ISTATE_PROCESSING refcnt 2 transport_state active,stop,fabric_stop
>  wait for tasks: tmf LUN_RESET with tag 0x0 ref_task_tag 0x0 i_state 34 t_state ISTATE_PROCESSING refcnt 2 transport_state active,stop,fabric_stop
> ...
>  INFO: task kworker/0:2:49 blocked for more than 491 seconds.
>  task:kworker/0:2     state:D stack:    0 pid:   49 ppid:     2 flags:0x00000800
>  Workqueue: events target_tmr_work [target_core_mod]
> Call Trace:
>  __switch_to+0x2c4/0x470
>  _schedule+0x314/0x1730
>  schedule+0x64/0x130
>  schedule_timeout+0x168/0x430
>  wait_for_completion+0x140/0x270
>  target_put_cmd_and_wait+0x64/0xb0 [target_core_mod]
>  core_tmr_lun_reset+0x30/0xa0 [target_core_mod]
>  target_tmr_work+0xc8/0x1b0 [target_core_mod]
>  process_one_work+0x2d4/0x5d0
>  worker_thread+0x78/0x6c0
> 
> To fix that, add an Abort to tmr_list only if that Abort will be handled by
> target core.
> 
> Signed-off-by: Dmitry Bogdanov <d.bogdanov@xxxxxxxxx>

Reviewed-by: Mike Christie <michael.christie@xxxxxxxxxx>





[Index of Archives]     [Linux SCSI]     [Kernel Newbies]     [Linux SCSI Target Infrastructure]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Device Mapper]

  Powered by Linux