| From foo@baz Sat Nov 7 11:46:48 AM CET 2020 |
| From: Vinay Kumar Yadav <vinay.yadav@chelsio.com> |
| Date: Mon, 2 Nov 2020 23:09:10 +0530 |
| Subject: chelsio/chtls: fix always leaking ctrl_skb |
| |
| From: Vinay Kumar Yadav <vinay.yadav@chelsio.com> |
| |
| [ Upstream commit dbfe394dad33f99cf8458be50483ec40a5d29c34 ] |
| |
| Correct skb refcount in alloc_ctrl_skb(), causing skb memleak |
| when chtls_send_abort() called with NULL skb. |
| it was always leaking the skb, correct it by incrementing skb |
| refs by one. |
| |
| Fixes: cc35c88ae4db ("crypto : chtls - CPL handler definition") |
| Signed-off-by: Vinay Kumar Yadav <vinay.yadav@chelsio.com> |
| Link: https://lore.kernel.org/r/20201102173909.24826-1-vinay.yadav@chelsio.com |
| Signed-off-by: Jakub Kicinski <kuba@kernel.org> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/crypto/chelsio/chtls/chtls_cm.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/crypto/chelsio/chtls/chtls_cm.c |
| +++ b/drivers/crypto/chelsio/chtls/chtls_cm.c |
| @@ -174,7 +174,7 @@ static struct sk_buff *alloc_ctrl_skb(st |
| { |
| if (likely(skb && !skb_shared(skb) && !skb_cloned(skb))) { |
| __skb_trim(skb, 0); |
| - refcount_add(2, &skb->users); |
| + refcount_inc(&skb->users); |
| } else { |
| skb = alloc_skb(len, GFP_KERNEL | __GFP_NOFAIL); |
| } |