summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThierry Escande <thierry.escande@collabora.com>2016-07-08 15:52:44 +0200
committerSamuel Ortiz <sameo@linux.intel.com>2016-07-11 02:00:26 +0200
commite200f008ace69eebac0a1432dc9e24ab5cd0d029 (patch)
tree4c258033ce19b5815f10eee41c014fcaaab712c8
parentNFC: digital: Rework ACK PDU handling in initiator mode (diff)
downloadlinux-e200f008ace69eebac0a1432dc9e24ab5cd0d029.tar.xz
linux-e200f008ace69eebac0a1432dc9e24ab5cd0d029.zip
NFC: digital: Free supervisor PDUs
This patch frees the RTOX resp sk_buff in initiator mode. It also makes use of the free_resp exit point for ATN supervisor PDUs in both initiator and target mode. Signed-off-by: Thierry Escande <thierry.escande@collabora.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
-rw-r--r--net/nfc/digital_dep.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/net/nfc/digital_dep.c b/net/nfc/digital_dep.c
index 03bfc74745f7..ba52a5dbf3cc 100644
--- a/net/nfc/digital_dep.c
+++ b/net/nfc/digital_dep.c
@@ -823,15 +823,14 @@ static void digital_in_recv_dep_res(struct nfc_digital_dev *ddev, void *arg,
if (rc)
goto error;
- return;
+ goto free_resp;
}
rc = digital_in_send_rtox(ddev, data_exch, resp->data[0]);
if (rc)
goto error;
- kfree_skb(resp);
- return;
+ goto free_resp;
}
exit:
@@ -1225,8 +1224,7 @@ static void digital_tg_recv_dep_req(struct nfc_digital_dev *ddev, void *arg,
ddev->atn_count++;
- kfree_skb(resp);
- return;
+ goto free_resp;
}
rc = nfc_tm_data_received(ddev->nfc_dev, resp);