|
|
@@ -2380,8 +2380,10 @@ static int virtnet_xdp_set(struct net_device *dev, struct bpf_prog *prog,
|
|
|
return 0;
|
|
|
|
|
|
err:
|
|
|
- for (i = 0; i < vi->max_queue_pairs; i++)
|
|
|
- virtnet_napi_enable(vi->rq[i].vq, &vi->rq[i].napi);
|
|
|
+ if (netif_running(dev)) {
|
|
|
+ for (i = 0; i < vi->max_queue_pairs; i++)
|
|
|
+ virtnet_napi_enable(vi->rq[i].vq, &vi->rq[i].napi);
|
|
|
+ }
|
|
|
if (prog)
|
|
|
bpf_prog_sub(prog, vi->max_queue_pairs - 1);
|
|
|
return err;
|