aboutsummaryrefslogtreecommitdiffstats
path: root/net/sched/cls_u32.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/sched/cls_u32.c')
-rw-r--r--net/sched/cls_u32.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/net/sched/cls_u32.c b/net/sched/cls_u32.c
index 99ea4c74dd5b..10b8d851fc6b 100644
--- a/net/sched/cls_u32.c
+++ b/net/sched/cls_u32.c
@@ -1112,6 +1112,14 @@ static void u32_walk(struct tcf_proto *tp, struct tcf_walker *arg)
1112 } 1112 }
1113} 1113}
1114 1114
1115static void u32_bind_class(void *fh, u32 classid, unsigned long cl)
1116{
1117 struct tc_u_knode *n = fh;
1118
1119 if (n && n->res.classid == classid)
1120 n->res.class = cl;
1121}
1122
1115static int u32_dump(struct net *net, struct tcf_proto *tp, void *fh, 1123static int u32_dump(struct net *net, struct tcf_proto *tp, void *fh,
1116 struct sk_buff *skb, struct tcmsg *t) 1124 struct sk_buff *skb, struct tcmsg *t)
1117{ 1125{
@@ -1242,6 +1250,7 @@ static struct tcf_proto_ops cls_u32_ops __read_mostly = {
1242 .delete = u32_delete, 1250 .delete = u32_delete,
1243 .walk = u32_walk, 1251 .walk = u32_walk,
1244 .dump = u32_dump, 1252 .dump = u32_dump,
1253 .bind_class = u32_bind_class,
1245 .owner = THIS_MODULE, 1254 .owner = THIS_MODULE,
1246}; 1255};
1247 1256