diff options
Diffstat (limited to 'net/sched/sch_teql.c')
-rw-r--r-- | net/sched/sch_teql.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/net/sched/sch_teql.c b/net/sched/sch_teql.c index 5a002c247231..3415b6ce1c0a 100644 --- a/net/sched/sch_teql.c +++ b/net/sched/sch_teql.c | |||
@@ -11,6 +11,7 @@ | |||
11 | #include <linux/module.h> | 11 | #include <linux/module.h> |
12 | #include <linux/types.h> | 12 | #include <linux/types.h> |
13 | #include <linux/kernel.h> | 13 | #include <linux/kernel.h> |
14 | #include <linux/slab.h> | ||
14 | #include <linux/string.h> | 15 | #include <linux/string.h> |
15 | #include <linux/errno.h> | 16 | #include <linux/errno.h> |
16 | #include <linux/if_arp.h> | 17 | #include <linux/if_arp.h> |
@@ -190,10 +191,13 @@ static int teql_qdisc_init(struct Qdisc *sch, struct nlattr *opt) | |||
190 | 191 | ||
191 | if (m->slaves) { | 192 | if (m->slaves) { |
192 | if (m->dev->flags & IFF_UP) { | 193 | if (m->dev->flags & IFF_UP) { |
193 | if ((m->dev->flags&IFF_POINTOPOINT && !(dev->flags&IFF_POINTOPOINT)) | 194 | if ((m->dev->flags & IFF_POINTOPOINT && |
194 | || (m->dev->flags&IFF_BROADCAST && !(dev->flags&IFF_BROADCAST)) | 195 | !(dev->flags & IFF_POINTOPOINT)) || |
195 | || (m->dev->flags&IFF_MULTICAST && !(dev->flags&IFF_MULTICAST)) | 196 | (m->dev->flags & IFF_BROADCAST && |
196 | || dev->mtu < m->dev->mtu) | 197 | !(dev->flags & IFF_BROADCAST)) || |
198 | (m->dev->flags & IFF_MULTICAST && | ||
199 | !(dev->flags & IFF_MULTICAST)) || | ||
200 | dev->mtu < m->dev->mtu) | ||
197 | return -EINVAL; | 201 | return -EINVAL; |
198 | } else { | 202 | } else { |
199 | if (!(dev->flags&IFF_POINTOPOINT)) | 203 | if (!(dev->flags&IFF_POINTOPOINT)) |