diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2009-10-20 04:06:22 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-10-20 04:06:22 -0400 |
commit | d19742fb1c68e6db83b76e06dea5a374c99e104f (patch) | |
tree | 3975747b3e1e62a81a3f9961bf7c2545ac7b4648 /net | |
parent | ad959e76f0fa94d299a8c25cb45de4d1b845e9ce (diff) |
filter: Add SKF_AD_QUEUE instruction
It can help being able to filter packets on their queue_mapping.
If filter performance is not good, we could add a "numqueue" field
in struct packet_type, so that netif_nit_deliver() and other functions
can directly ignore packets with not expected queue number.
Lets experiment this simple filter extension first.
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/core/filter.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/core/filter.c b/net/core/filter.c index e3987e1d4839..08db7b9143a3 100644 --- a/net/core/filter.c +++ b/net/core/filter.c | |||
@@ -306,6 +306,9 @@ load_b: | |||
306 | case SKF_AD_MARK: | 306 | case SKF_AD_MARK: |
307 | A = skb->mark; | 307 | A = skb->mark; |
308 | continue; | 308 | continue; |
309 | case SKF_AD_QUEUE: | ||
310 | A = skb->queue_mapping; | ||
311 | continue; | ||
309 | case SKF_AD_NLATTR: { | 312 | case SKF_AD_NLATTR: { |
310 | struct nlattr *nla; | 313 | struct nlattr *nla; |
311 | 314 | ||