diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2011-01-19 14:26:56 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-01-20 02:31:12 -0500 |
commit | cc7ec456f82da7f89a5b376e613b3ac4311b3e9a (patch) | |
tree | 534729db08c10f40c090261cdc191dd2303dfc5c /net/sched/cls_fw.c | |
parent | 7180a03118cac7256fb04f929fe34d0aeee92c40 (diff) |
net_sched: cleanups
Cleanup net/sched code to current CodingStyle and practices.
Reduce inline abuse
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/cls_fw.c')
-rw-r--r-- | net/sched/cls_fw.c | 38 |
1 files changed, 18 insertions, 20 deletions
diff --git a/net/sched/cls_fw.c b/net/sched/cls_fw.c index 93b0a7b6f9b4..26e7bc4ffb79 100644 --- a/net/sched/cls_fw.c +++ b/net/sched/cls_fw.c | |||
@@ -31,14 +31,12 @@ | |||
31 | 31 | ||
32 | #define HTSIZE (PAGE_SIZE/sizeof(struct fw_filter *)) | 32 | #define HTSIZE (PAGE_SIZE/sizeof(struct fw_filter *)) |
33 | 33 | ||
34 | struct fw_head | 34 | struct fw_head { |
35 | { | ||
36 | struct fw_filter *ht[HTSIZE]; | 35 | struct fw_filter *ht[HTSIZE]; |
37 | u32 mask; | 36 | u32 mask; |
38 | }; | 37 | }; |
39 | 38 | ||
40 | struct fw_filter | 39 | struct fw_filter { |
41 | { | ||
42 | struct fw_filter *next; | 40 | struct fw_filter *next; |
43 | u32 id; | 41 | u32 id; |
44 | struct tcf_result res; | 42 | struct tcf_result res; |
@@ -53,7 +51,7 @@ static const struct tcf_ext_map fw_ext_map = { | |||
53 | .police = TCA_FW_POLICE | 51 | .police = TCA_FW_POLICE |
54 | }; | 52 | }; |
55 | 53 | ||
56 | static __inline__ int fw_hash(u32 handle) | 54 | static inline int fw_hash(u32 handle) |
57 | { | 55 | { |
58 | if (HTSIZE == 4096) | 56 | if (HTSIZE == 4096) |
59 | return ((handle >> 24) & 0xFFF) ^ | 57 | return ((handle >> 24) & 0xFFF) ^ |
@@ -82,14 +80,14 @@ static __inline__ int fw_hash(u32 handle) | |||
82 | static int fw_classify(struct sk_buff *skb, struct tcf_proto *tp, | 80 | static int fw_classify(struct sk_buff *skb, struct tcf_proto *tp, |
83 | struct tcf_result *res) | 81 | struct tcf_result *res) |
84 | { | 82 | { |
85 | struct fw_head *head = (struct fw_head*)tp->root; | 83 | struct fw_head *head = (struct fw_head *)tp->root; |
86 | struct fw_filter *f; | 84 | struct fw_filter *f; |
87 | int r; | 85 | int r; |
88 | u32 id = skb->mark; | 86 | u32 id = skb->mark; |
89 | 87 | ||
90 | if (head != NULL) { | 88 | if (head != NULL) { |
91 | id &= head->mask; | 89 | id &= head->mask; |
92 | for (f=head->ht[fw_hash(id)]; f; f=f->next) { | 90 | for (f = head->ht[fw_hash(id)]; f; f = f->next) { |
93 | if (f->id == id) { | 91 | if (f->id == id) { |
94 | *res = f->res; | 92 | *res = f->res; |
95 | #ifdef CONFIG_NET_CLS_IND | 93 | #ifdef CONFIG_NET_CLS_IND |
@@ -105,7 +103,8 @@ static int fw_classify(struct sk_buff *skb, struct tcf_proto *tp, | |||
105 | } | 103 | } |
106 | } else { | 104 | } else { |
107 | /* old method */ | 105 | /* old method */ |
108 | if (id && (TC_H_MAJ(id) == 0 || !(TC_H_MAJ(id^tp->q->handle)))) { | 106 | if (id && (TC_H_MAJ(id) == 0 || |
107 | !(TC_H_MAJ(id ^ tp->q->handle)))) { | ||
109 | res->classid = id; | 108 | res->classid = id; |
110 | res->class = 0; | 109 | res->class = 0; |
111 | return 0; | 110 | return 0; |
@@ -117,13 +116,13 @@ static int fw_classify(struct sk_buff *skb, struct tcf_proto *tp, | |||
117 | 116 | ||
118 | static unsigned long fw_get(struct tcf_proto *tp, u32 handle) | 117 | static unsigned long fw_get(struct tcf_proto *tp, u32 handle) |
119 | { | 118 | { |
120 | struct fw_head *head = (struct fw_head*)tp->root; | 119 | struct fw_head *head = (struct fw_head *)tp->root; |
121 | struct fw_filter *f; | 120 | struct fw_filter *f; |
122 | 121 | ||
123 | if (head == NULL) | 122 | if (head == NULL) |
124 | return 0; | 123 | return 0; |
125 | 124 | ||
126 | for (f=head->ht[fw_hash(handle)]; f; f=f->next) { | 125 | for (f = head->ht[fw_hash(handle)]; f; f = f->next) { |
127 | if (f->id == handle) | 126 | if (f->id == handle) |
128 | return (unsigned long)f; | 127 | return (unsigned long)f; |
129 | } | 128 | } |
@@ -139,8 +138,7 @@ static int fw_init(struct tcf_proto *tp) | |||
139 | return 0; | 138 | return 0; |
140 | } | 139 | } |
141 | 140 | ||
142 | static inline void | 141 | static void fw_delete_filter(struct tcf_proto *tp, struct fw_filter *f) |
143 | fw_delete_filter(struct tcf_proto *tp, struct fw_filter *f) | ||
144 | { | 142 | { |
145 | tcf_unbind_filter(tp, &f->res); | 143 | tcf_unbind_filter(tp, &f->res); |
146 | tcf_exts_destroy(tp, &f->exts); | 144 | tcf_exts_destroy(tp, &f->exts); |
@@ -156,8 +154,8 @@ static void fw_destroy(struct tcf_proto *tp) | |||
156 | if (head == NULL) | 154 | if (head == NULL) |
157 | return; | 155 | return; |
158 | 156 | ||
159 | for (h=0; h<HTSIZE; h++) { | 157 | for (h = 0; h < HTSIZE; h++) { |
160 | while ((f=head->ht[h]) != NULL) { | 158 | while ((f = head->ht[h]) != NULL) { |
161 | head->ht[h] = f->next; | 159 | head->ht[h] = f->next; |
162 | fw_delete_filter(tp, f); | 160 | fw_delete_filter(tp, f); |
163 | } | 161 | } |
@@ -167,14 +165,14 @@ static void fw_destroy(struct tcf_proto *tp) | |||
167 | 165 | ||
168 | static int fw_delete(struct tcf_proto *tp, unsigned long arg) | 166 | static int fw_delete(struct tcf_proto *tp, unsigned long arg) |
169 | { | 167 | { |
170 | struct fw_head *head = (struct fw_head*)tp->root; | 168 | struct fw_head *head = (struct fw_head *)tp->root; |
171 | struct fw_filter *f = (struct fw_filter*)arg; | 169 | struct fw_filter *f = (struct fw_filter *)arg; |
172 | struct fw_filter **fp; | 170 | struct fw_filter **fp; |
173 | 171 | ||
174 | if (head == NULL || f == NULL) | 172 | if (head == NULL || f == NULL) |
175 | goto out; | 173 | goto out; |
176 | 174 | ||
177 | for (fp=&head->ht[fw_hash(f->id)]; *fp; fp = &(*fp)->next) { | 175 | for (fp = &head->ht[fw_hash(f->id)]; *fp; fp = &(*fp)->next) { |
178 | if (*fp == f) { | 176 | if (*fp == f) { |
179 | tcf_tree_lock(tp); | 177 | tcf_tree_lock(tp); |
180 | *fp = f->next; | 178 | *fp = f->next; |
@@ -240,7 +238,7 @@ static int fw_change(struct tcf_proto *tp, unsigned long base, | |||
240 | struct nlattr **tca, | 238 | struct nlattr **tca, |
241 | unsigned long *arg) | 239 | unsigned long *arg) |
242 | { | 240 | { |
243 | struct fw_head *head = (struct fw_head*)tp->root; | 241 | struct fw_head *head = (struct fw_head *)tp->root; |
244 | struct fw_filter *f = (struct fw_filter *) *arg; | 242 | struct fw_filter *f = (struct fw_filter *) *arg; |
245 | struct nlattr *opt = tca[TCA_OPTIONS]; | 243 | struct nlattr *opt = tca[TCA_OPTIONS]; |
246 | struct nlattr *tb[TCA_FW_MAX + 1]; | 244 | struct nlattr *tb[TCA_FW_MAX + 1]; |
@@ -302,7 +300,7 @@ errout: | |||
302 | 300 | ||
303 | static void fw_walk(struct tcf_proto *tp, struct tcf_walker *arg) | 301 | static void fw_walk(struct tcf_proto *tp, struct tcf_walker *arg) |
304 | { | 302 | { |
305 | struct fw_head *head = (struct fw_head*)tp->root; | 303 | struct fw_head *head = (struct fw_head *)tp->root; |
306 | int h; | 304 | int h; |
307 | 305 | ||
308 | if (head == NULL) | 306 | if (head == NULL) |
@@ -332,7 +330,7 @@ static int fw_dump(struct tcf_proto *tp, unsigned long fh, | |||
332 | struct sk_buff *skb, struct tcmsg *t) | 330 | struct sk_buff *skb, struct tcmsg *t) |
333 | { | 331 | { |
334 | struct fw_head *head = (struct fw_head *)tp->root; | 332 | struct fw_head *head = (struct fw_head *)tp->root; |
335 | struct fw_filter *f = (struct fw_filter*)fh; | 333 | struct fw_filter *f = (struct fw_filter *)fh; |
336 | unsigned char *b = skb_tail_pointer(skb); | 334 | unsigned char *b = skb_tail_pointer(skb); |
337 | struct nlattr *nest; | 335 | struct nlattr *nest; |
338 | 336 | ||