scsi: cxgb4i: libcxgbi: add missing module_put()
Add module_put() in cxgbi_sock_act_open_req_arp_failure() to release module reference in case of arp failure, also check return value of try_module_get() before posting active open hw cmd. Signed-off-by: Varun Prakash <varun@chelsio.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:

committed by
Martin K. Petersen

parent
44830d8fd2
commit
1fe1fdb04b
@@ -896,6 +896,7 @@ EXPORT_SYMBOL_GPL(cxgbi_sock_fail_act_open);
|
||||
void cxgbi_sock_act_open_req_arp_failure(void *handle, struct sk_buff *skb)
|
||||
{
|
||||
struct cxgbi_sock *csk = (struct cxgbi_sock *)skb->sk;
|
||||
struct module *owner = csk->cdev->owner;
|
||||
|
||||
log_debug(1 << CXGBI_DBG_SOCK, "csk 0x%p,%u,0x%lx,%u.\n",
|
||||
csk, (csk)->state, (csk)->flags, (csk)->tid);
|
||||
@@ -906,6 +907,8 @@ void cxgbi_sock_act_open_req_arp_failure(void *handle, struct sk_buff *skb)
|
||||
spin_unlock_bh(&csk->lock);
|
||||
cxgbi_sock_put(csk);
|
||||
__kfree_skb(skb);
|
||||
|
||||
module_put(owner);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(cxgbi_sock_act_open_req_arp_failure);
|
||||
|
||||
|
Reference in New Issue
Block a user