Skip to content

Commit

Permalink
netdevsim: move sdev specific bpf debugfs files to sdev dir
Browse files Browse the repository at this point in the history
Some netdevsim bpf debugfs files are per-sdev, yet they are defined per
netdevsim instance. Move them under sdev directory.

Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Jiri Pirko authored and David S. Miller committed Apr 12, 2019
1 parent af9095f commit 38f58c9
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 13 deletions.
18 changes: 9 additions & 9 deletions drivers/net/netdevsim/bpf.c
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,8 @@ nsim_bpf_verify_insn(struct bpf_verifier_env *env, int insn_idx, int prev_insn)
struct nsim_bpf_bound_prog *state;

state = env->prog->aux->offload->dev_priv;
if (state->ns->bpf_bind_verifier_delay && !insn_idx)
msleep(state->ns->bpf_bind_verifier_delay);
if (state->ns->sdev->bpf_bind_verifier_delay && !insn_idx)
msleep(state->ns->sdev->bpf_bind_verifier_delay);

if (insn_idx == env->prog->len - 1)
pr_vlog(env, "Hello from netdevsim!\n");
Expand Down Expand Up @@ -250,7 +250,7 @@ static int nsim_bpf_verifier_prep(struct bpf_prog *prog)
{
struct netdevsim *ns = bpf_offload_dev_priv(prog->aux->offload->offdev);

if (!ns->bpf_bind_accept)
if (!ns->sdev->bpf_bind_accept)
return -EOPNOTSUPP;

return nsim_bpf_create_prog(ns, prog);
Expand Down Expand Up @@ -594,6 +594,12 @@ int nsim_bpf_init(struct netdevsim *ns)
err = PTR_ERR_OR_ZERO(ns->sdev->bpf_dev);
if (err)
return err;

ns->sdev->bpf_bind_accept = true;
debugfs_create_bool("bpf_bind_accept", 0600, ns->sdev->ddir,
&ns->sdev->bpf_bind_accept);
debugfs_create_u32("bpf_bind_verifier_delay", 0600, ns->sdev->ddir,
&ns->sdev->bpf_bind_verifier_delay);
}

err = bpf_offload_dev_netdev_register(ns->sdev->bpf_dev, ns->netdev);
Expand All @@ -603,12 +609,6 @@ int nsim_bpf_init(struct netdevsim *ns)
debugfs_create_u32("bpf_offloaded_id", 0400, ns->ddir,
&ns->bpf_offloaded_id);

ns->bpf_bind_accept = true;
debugfs_create_bool("bpf_bind_accept", 0600, ns->ddir,
&ns->bpf_bind_accept);
debugfs_create_u32("bpf_bind_verifier_delay", 0600, ns->ddir,
&ns->bpf_bind_verifier_delay);

ns->bpf_tc_accept = true;
debugfs_create_bool("bpf_tc_accept", 0600, ns->ddir,
&ns->bpf_tc_accept);
Expand Down
6 changes: 3 additions & 3 deletions drivers/net/netdevsim/netdevsim.h
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,9 @@ struct netdevsim_shared_dev {

struct bpf_offload_dev *bpf_dev;

bool bpf_bind_accept;
u32 bpf_bind_verifier_delay;

struct dentry *ddir_bpf_bound_progs;
u32 prog_id_gen;

Expand Down Expand Up @@ -95,9 +98,6 @@ struct netdevsim {
struct xdp_attachment_info xdp;
struct xdp_attachment_info xdp_hw;

bool bpf_bind_accept;
u32 bpf_bind_verifier_delay;

bool bpf_tc_accept;
bool bpf_tc_non_bound_accept;
bool bpf_xdpdrv_accept;
Expand Down
2 changes: 1 addition & 1 deletion tools/testing/selftests/bpf/test_offload.py
Original file line number Diff line number Diff line change
Expand Up @@ -1055,7 +1055,7 @@ def test_multi_prog(sim, obj, modename, modeid):

start_test("Test if netdev removal waits for translation...")
delay_msec = 500
sim.dfs["bpf_bind_verifier_delay"] = delay_msec
sim.dfs["sdev/bpf_bind_verifier_delay"] = delay_msec
start = time.time()
cmd_line = "tc filter add dev %s ingress bpf %s da skip_sw" % \
(sim['ifname'], obj)
Expand Down

0 comments on commit 38f58c9

Please sign in to comment.