aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/bpf/devmap.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/bpf/devmap.c')
-rw-r--r--kernel/bpf/devmap.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/bpf/devmap.c b/kernel/bpf/devmap.c
index 77908311ec98..ae16d0c373ef 100644
--- a/kernel/bpf/devmap.c
+++ b/kernel/bpf/devmap.c
@@ -220,7 +220,7 @@ static int bq_xmit_all(struct bpf_dtab_netdev *obj,
220 struct xdp_bulk_queue *bq) 220 struct xdp_bulk_queue *bq)
221{ 221{
222 struct net_device *dev = obj->dev; 222 struct net_device *dev = obj->dev;
223 int sent = 0, drops = 0; 223 int sent = 0, drops = 0, err = 0;
224 int i; 224 int i;
225 225
226 if (unlikely(!bq->count)) 226 if (unlikely(!bq->count))
@@ -234,6 +234,7 @@ static int bq_xmit_all(struct bpf_dtab_netdev *obj,
234 234
235 sent = dev->netdev_ops->ndo_xdp_xmit(dev, bq->count, bq->q); 235 sent = dev->netdev_ops->ndo_xdp_xmit(dev, bq->count, bq->q);
236 if (sent < 0) { 236 if (sent < 0) {
237 err = sent;
237 sent = 0; 238 sent = 0;
238 goto error; 239 goto error;
239 } 240 }
@@ -242,7 +243,7 @@ out:
242 bq->count = 0; 243 bq->count = 0;
243 244
244 trace_xdp_devmap_xmit(&obj->dtab->map, obj->bit, 245 trace_xdp_devmap_xmit(&obj->dtab->map, obj->bit,
245 sent, drops, bq->dev_rx, dev); 246 sent, drops, bq->dev_rx, dev, err);
246 bq->dev_rx = NULL; 247 bq->dev_rx = NULL;
247 return 0; 248 return 0;
248error: 249error: