bpf: drop useless bpf_fd member from cls/act
authorDaniel Borkmann <daniel@iogearbox.net>
Sat, 26 Nov 2016 00:28:05 +0000 (01:28 +0100)
committerDavid S. Miller <davem@davemloft.net>
Mon, 28 Nov 2016 01:38:47 +0000 (20:38 -0500)
After setup we don't need to keep user space fd number around anymore, as
it also has no useful meaning for anyone, just remove it.

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/sched/act_bpf.c
net/sched/cls_bpf.c

index 1aa4ecf41baf8c1d5692c14debc91c3cac959460..84c1d2da4f8b0576fde83e66ab0664d4e9d4e557 100644 (file)
@@ -28,7 +28,6 @@ struct tcf_bpf_cfg {
        struct bpf_prog *filter;
        struct sock_filter *bpf_ops;
        const char *bpf_name;
-       u32 bpf_fd;
        u16 bpf_num_ops;
        bool is_ebpf;
 };
@@ -118,9 +117,6 @@ static int tcf_bpf_dump_bpf_info(const struct tcf_bpf *prog,
 static int tcf_bpf_dump_ebpf_info(const struct tcf_bpf *prog,
                                  struct sk_buff *skb)
 {
-       if (nla_put_u32(skb, TCA_ACT_BPF_FD, prog->bpf_fd))
-               return -EMSGSIZE;
-
        if (prog->bpf_name &&
            nla_put_string(skb, TCA_ACT_BPF_NAME, prog->bpf_name))
                return -EMSGSIZE;
@@ -233,7 +229,6 @@ static int tcf_bpf_init_from_efd(struct nlattr **tb, struct tcf_bpf_cfg *cfg)
                }
        }
 
-       cfg->bpf_fd = bpf_fd;
        cfg->bpf_name = name;
        cfg->filter = fp;
        cfg->is_ebpf = true;
@@ -332,8 +327,6 @@ static int tcf_bpf_init(struct net *net, struct nlattr *nla,
 
        if (cfg.bpf_num_ops)
                prog->bpf_num_ops = cfg.bpf_num_ops;
-       if (cfg.bpf_fd)
-               prog->bpf_fd = cfg.bpf_fd;
 
        prog->tcf_action = parm->action;
        rcu_assign_pointer(prog->filter, cfg.filter);
index 52dc85acca7d3ba2acb8a0c9213595da7d2a7aab..28cb5fa5af927dbe7237ce77f76d52f52642be4f 100644 (file)
@@ -45,10 +45,7 @@ struct cls_bpf_prog {
        u32 gen_flags;
        struct tcf_exts exts;
        u32 handle;
-       union {
-               u32 bpf_fd;
-               u16 bpf_num_ops;
-       };
+       u16 bpf_num_ops;
        struct sock_filter *bpf_ops;
        const char *bpf_name;
        struct tcf_proto *tp;
@@ -377,7 +374,6 @@ static int cls_bpf_prog_from_efd(struct nlattr **tb, struct cls_bpf_prog *prog,
        }
 
        prog->bpf_ops = NULL;
-       prog->bpf_fd = bpf_fd;
        prog->bpf_name = name;
        prog->filter = fp;
 
@@ -561,9 +557,6 @@ static int cls_bpf_dump_bpf_info(const struct cls_bpf_prog *prog,
 static int cls_bpf_dump_ebpf_info(const struct cls_bpf_prog *prog,
                                  struct sk_buff *skb)
 {
-       if (nla_put_u32(skb, TCA_BPF_FD, prog->bpf_fd))
-               return -EMSGSIZE;
-
        if (prog->bpf_name &&
            nla_put_string(skb, TCA_BPF_NAME, prog->bpf_name))
                return -EMSGSIZE;