aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/netdevsim/bpf.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/netdevsim/bpf.c')
-rw-r--r--drivers/net/netdevsim/bpf.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/drivers/net/netdevsim/bpf.c b/drivers/net/netdevsim/bpf.c
index d045b7d666d9..30c2cd516d1c 100644
--- a/drivers/net/netdevsim/bpf.c
+++ b/drivers/net/netdevsim/bpf.c
@@ -269,6 +269,14 @@ nsim_bpf_verifier_prep(struct net_device *dev, struct bpf_verifier_env *env)
269 return nsim_bpf_create_prog(ns, env->prog); 269 return nsim_bpf_create_prog(ns, env->prog);
270} 270}
271 271
272static int nsim_bpf_translate(struct net_device *dev, struct bpf_prog *prog)
273{
274 struct nsim_bpf_bound_prog *state = prog->aux->offload->dev_priv;
275
276 state->state = "xlated";
277 return 0;
278}
279
272static void nsim_bpf_destroy_prog(struct bpf_prog *prog) 280static void nsim_bpf_destroy_prog(struct bpf_prog *prog)
273{ 281{
274 struct nsim_bpf_bound_prog *state; 282 struct nsim_bpf_bound_prog *state;
@@ -285,6 +293,7 @@ static const struct bpf_prog_offload_ops nsim_bpf_dev_ops = {
285 .insn_hook = nsim_bpf_verify_insn, 293 .insn_hook = nsim_bpf_verify_insn,
286 .finalize = nsim_bpf_finalize, 294 .finalize = nsim_bpf_finalize,
287 .prepare = nsim_bpf_verifier_prep, 295 .prepare = nsim_bpf_verifier_prep,
296 .translate = nsim_bpf_translate,
288}; 297};
289 298
290static int nsim_setup_prog_checks(struct netdevsim *ns, struct netdev_bpf *bpf) 299static int nsim_setup_prog_checks(struct netdevsim *ns, struct netdev_bpf *bpf)
@@ -551,11 +560,6 @@ int nsim_bpf(struct net_device *dev, struct netdev_bpf *bpf)
551 ASSERT_RTNL(); 560 ASSERT_RTNL();
552 561
553 switch (bpf->command) { 562 switch (bpf->command) {
554 case BPF_OFFLOAD_TRANSLATE:
555 state = bpf->offload.prog->aux->offload->dev_priv;
556
557 state->state = "xlated";
558 return 0;
559 case BPF_OFFLOAD_DESTROY: 563 case BPF_OFFLOAD_DESTROY:
560 nsim_bpf_destroy_prog(bpf->offload.prog); 564 nsim_bpf_destroy_prog(bpf->offload.prog);
561 return 0; 565 return 0;