From 2bfc1a9dc27040172d566b13bd701c496d899503 Mon Sep 17 00:00:00 2001 From: Ilan Elias Date: Sun, 8 Jan 2012 11:21:53 +0200 Subject: [PATCH] --- yaml --- r: 289947 b: refs/heads/master c: bd7e01bc7e7a90b33470173618f6f6805143cd42 h: refs/heads/master i: 289945: ca10f402eb98c3657b896aff453ded85f98932f5 289943: cb3ae175d2437c4f1fd47ac14fc60cae1b6626dc v: v3 --- [refs] | 2 +- trunk/net/nfc/nci/ntf.c | 2 ++ trunk/net/nfc/nci/rsp.c | 5 ++++- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 7377e90898c9..f0dff3ce238e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ca742cd9766ff519b0e927a9296e29541ee13c7b +refs/heads/master: bd7e01bc7e7a90b33470173618f6f6805143cd42 diff --git a/trunk/net/nfc/nci/ntf.c b/trunk/net/nfc/nci/ntf.c index b16a8dc2afbe..10682bf7029d 100644 --- a/trunk/net/nfc/nci/ntf.c +++ b/trunk/net/nfc/nci/ntf.c @@ -280,6 +280,8 @@ static void nci_rf_deactivate_ntf_packet(struct nci_dev *ndev, /* complete the data exchange transaction, if exists */ if (test_bit(NCI_DATA_EXCHANGE, &ndev->flags)) nci_data_exchange_complete(ndev, NULL, -EIO); + + nci_req_complete(ndev, NCI_STATUS_OK); } void nci_ntf_packet(struct nci_dev *ndev, struct sk_buff *skb) diff --git a/trunk/net/nfc/nci/rsp.c b/trunk/net/nfc/nci/rsp.c index 2840ae2f3615..3c73e92eb625 100644 --- a/trunk/net/nfc/nci/rsp.c +++ b/trunk/net/nfc/nci/rsp.c @@ -151,7 +151,10 @@ static void nci_rf_deactivate_rsp_packet(struct nci_dev *ndev, clear_bit(NCI_DISCOVERY, &ndev->flags); - nci_req_complete(ndev, status); + /* If target was active, complete the request only in deactivate_ntf */ + if ((status != NCI_STATUS_OK) || + (!test_bit(NCI_POLL_ACTIVE, &ndev->flags))) + nci_req_complete(ndev, status); } void nci_rsp_packet(struct nci_dev *ndev, struct sk_buff *skb)