nfc: nci: Fix handling of zero-length payload packets in nci_rx_work()
authorRyosuke Yasuoka <ryasuoka@redhat.com>
Tue, 21 May 2024 15:34:42 +0000 (00:34 +0900)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 23 May 2024 10:39:44 +0000 (12:39 +0200)
When nci_rx_work() receives a zero-length payload packet, it should not
discard the packet and exit the loop. Instead, it should continue
processing subsequent packets.

Fixes: d24b03535e5e ("nfc: nci: Fix uninit-value in nci_dev_up and nci_ntf_packet")
Signed-off-by: Ryosuke Yasuoka <ryasuoka@redhat.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20240521153444.535399-1-ryasuoka@redhat.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
net/nfc/nci/core.c

index 7a9897fbf4f411c1653975ca3d76303b2c06cc88..f456a5911e7d1bc3e7bd08107c0ecace98f3df8e 100644 (file)
@@ -1531,8 +1531,7 @@ static void nci_rx_work(struct work_struct *work)
 
                if (!nci_valid_size(skb)) {
                        kfree_skb(skb);
-                       kcov_remote_stop();
-                       break;
+                       continue;
                }
 
                /* Process frame */