xen-netback: BUG_ON in xenvif_rx_action() not catching overflow
authorPaul Durrant <Paul.Durrant@citrix.com>
Fri, 28 Mar 2014 11:39:07 +0000 (11:39 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 14 Apr 2014 13:50:03 +0000 (06:50 -0700)
commit2ea4f5269f58ace4684e35b54b04f655c9cd37e9
treefc21e24af55afd4a611e4c835991b76d7e30b4b0
parent6240b9f5211277efd093b6470d9dba33931684e0
xen-netback: BUG_ON in xenvif_rx_action() not catching overflow

[ Upstream commit 1425c7a4e8d3d2eebf308bcbdc3fa3c1247686b4 ]

The BUG_ON to catch ring overflow in xenvif_rx_action() makes the assumption
that meta_slots_used == ring slots used. This is not necessarily the case
for GSO packets, because the non-prefix GSO protocol consumes one more ring
slot than meta-slot for the 'extra_info'. This patch changes the test to
actually check ring slots.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Cc: Ian Campbell <ian.campbell@citrix.com>
Cc: Wei Liu <wei.liu2@citrix.com>
Cc: Sander Eikelenboom <linux@eikelenboom.it>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/xen-netback/netback.c