Re: [PATCH 04/36] target: Does tmr notify on aborted command

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

 



Hi Thinh,

On Wed, Jul 06, 2022 at 04:34:49PM -0700, Thinh Nguyen wrote:
> If the tmr_notify is not implemented, simply execute a generic command
> completion to notify the command abort.
Why? What are you trying to fix?
> 
> Signed-off-by: Thinh Nguyen <Thinh.Nguyen@xxxxxxxxxxxx>
> ---
>  drivers/target/target_core_tmr.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/target/target_core_tmr.c b/drivers/target/target_core_tmr.c
> index 7a7e24069ba7..2af80d0998bf 100644
> --- a/drivers/target/target_core_tmr.c
> +++ b/drivers/target/target_core_tmr.c
> @@ -14,6 +14,7 @@
>  #include <linux/spinlock.h>
>  #include <linux/list.h>
>  #include <linux/export.h>
> +#include <scsi/scsi_proto.h>
>  
>  #include <target/target_core_base.h>
>  #include <target/target_core_backend.h>
> @@ -150,6 +151,9 @@ void core_tmr_abort_task(
>  			if (dev->transport->tmr_notify)
>  				dev->transport->tmr_notify(dev, TMR_ABORT_TASK,
>  							   &aborted_list);
> +			else
> +				target_complete_cmd(se_cmd,
> +						    SAM_STAT_TASK_ABORTED);
That is wrong and breaks a command lifecycle and command kref counting.
target_complete_cmd is used to be called by a backend driver.
>  
>  			list_del_init(&se_cmd->state_list);
>  			target_put_cmd_and_wait(se_cmd);



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux