aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThierry Escande <thierry.escande@collabora.com>2016-07-08 09:52:44 -0400
committerSamuel Ortiz <sameo@linux.intel.com>2016-07-10 20:00:26 -0400
commite200f008ace69eebac0a1432dc9e24ab5cd0d029 (patch)
tree4c258033ce19b5815f10eee41c014fcaaab712c8
parente073eb6797191abe2fe30ca643ab0cc3d8e1e534 (diff)
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,
823 if (rc) 823 if (rc)
824 goto error; 824 goto error;
825 825
826 return; 826 goto free_resp;
827 } 827 }
828 828
829 rc = digital_in_send_rtox(ddev, data_exch, resp->data[0]); 829 rc = digital_in_send_rtox(ddev, data_exch, resp->data[0]);
830 if (rc) 830 if (rc)
831 goto error; 831 goto error;
832 832
833 kfree_skb(resp); 833 goto free_resp;
834 return;
835 } 834 }
836 835
837exit: 836exit:
@@ -1225,8 +1224,7 @@ static void digital_tg_recv_dep_req(struct nfc_digital_dev *ddev, void *arg,
1225 1224
1226 ddev->atn_count++; 1225 ddev->atn_count++;
1227 1226
1228 kfree_skb(resp); 1227 goto free_resp;
1229 return;
1230 } 1228 }
1231 1229
1232 rc = nfc_tm_data_received(ddev->nfc_dev, resp); 1230 rc = nfc_tm_data_received(ddev->nfc_dev, resp);