Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

NFC: llcp: Do not send pending Tx frames when the remote is not ready

When we receive a RNR, the remote is busy processing the last received
frame. We set a local flag for that, and we should send a SYMM when it
is set instead of sending any pending frame.

Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>

+3
+3
net/nfc/llcp_core.c
··· 721 721 if (llcp_sock == NULL && nfc_llcp_ptype(skb) == LLCP_PDU_I) { 722 722 kfree_skb(skb); 723 723 nfc_llcp_send_symm(local->dev); 724 + } else if (llcp_sock && !llcp_sock->remote_ready) { 725 + skb_queue_head(&local->tx_queue, skb); 726 + nfc_llcp_send_symm(local->dev); 724 727 } else { 725 728 struct sk_buff *copy_skb = NULL; 726 729 u8 ptype = nfc_llcp_ptype(skb);