> -----Original Message-----
> From: [email protected] [mailto:linux-scsi-
> [email protected]] On Behalf Of Bhanu Prakash Gollapudi
> Sent: Monday, April 25, 2011 3:30 PM
> To: [email protected]; [email protected]
> Cc: Nithin Nayak Sujir; Bhanu Prakash Gollapudi
> Subject: [PATCH 2/5] bnx2fc: Release the reference to hba only after
> the interface is destroyed
> 
> From: Nithin Nayak Sujir <[email protected]>
> 
> Prematurely decrementing the reference may lead to cmd_mgr becoming
> NULL with
> the cmds are still active.
> 
> Signed-off-by: Nithin Nayak Sujir <[email protected]>
> Signed-off-by: Bhanu Prakash Gollapudi <[email protected]>
> ---
>  drivers/scsi/bnx2fc/bnx2fc_fcoe.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/scsi/bnx2fc/bnx2fc_fcoe.c
> b/drivers/scsi/bnx2fc/bnx2fc_fcoe.c
> index 8fb9b6e..734d8c1 100644
> --- a/drivers/scsi/bnx2fc/bnx2fc_fcoe.c
> +++ b/drivers/scsi/bnx2fc/bnx2fc_fcoe.c
> @@ -1370,8 +1370,6 @@ static void bnx2fc_if_destroy(struct fc_lport
> *lport)
>       /* Free existing transmit skbs */
>       fcoe_clean_pending_queue(lport);
> 
> -     bnx2fc_interface_put(hba);
> -
>       /* Free queued packets for the receive thread */
>       bnx2fc_clean_rx_queue(lport);
> 
> @@ -1399,6 +1397,8 @@ static void bnx2fc_if_destroy(struct fc_lport
> *lport)
> 
>       /* Release Scsi_Host */
>       scsi_host_put(lport->host);
> +
> +     bnx2fc_interface_put(hba);
>  }
> 


Shouldn't we decrease refcount for interface before the scsi host refcount is 
decreased..? 
It doesn't probably make a difference here since we are having a 1:1 between an 
interface and a host but it saves bugs later when things change..

Also it probably makes sense to call scsi_host_put in bnx2fc_destroy rather 
than in bnx2fc_if_destroy.. 

Maybe we could have more interfaces for a scsi host..

Shout if this doesn't make any sense.

-Shyam Iyer

_______________________________________________
devel mailing list
[email protected]
https://lists.open-fcoe.org/mailman/listinfo/devel

Reply via email to