s390/qeth: fix off-by-one in RX copybreak check
authorJulian Wiedmann <jwi@linux.ibm.com>
Thu, 20 Feb 2020 14:54:56 +0000 (15:54 +0100)
committerDavid S. Miller <davem@davemloft.net>
Thu, 20 Feb 2020 18:30:47 +0000 (10:30 -0800)
The RX copybreak is intended as the _max_ value where the frame's data
should be copied. So for frame_len == copybreak, don't build an SG skb.

Fixes: 4a71df50047f ("qeth: new qeth device driver")
Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/s390/net/qeth_core_main.c

index 2264c66..5efcaa4 100644 (file)
@@ -5344,7 +5344,7 @@ next_packet:
        }
 
        use_rx_sg = (card->options.cq == QETH_CQ_ENABLED) ||
-                   ((skb_len >= card->options.rx_sg_cb) &&
+                   (skb_len > card->options.rx_sg_cb &&
                     !atomic_read(&card->force_alloc_skb) &&
                     !IS_OSN(card));