diff options
| author | Alexander Aring <aring@mojatatu.com> | 2017-10-11 17:16:08 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2017-10-13 01:23:03 -0400 |
| commit | aa9fd9a325d51fa0b11153b03b8fefff569fa955 (patch) | |
| tree | fa704cc0bf9e43defe81d17a212c769d78b2a675 /include/net/tc_act | |
| parent | ced273eacfe1876e2c3c4ea1244a2e386e20eadb (diff) | |
sched: act: ife: update parameters via rcu handling
This patch changes the parameter updating via RCU and not protected by a
spinlock anymore. This reduce the time that the spinlock is being held.
Signed-off-by: Alexander Aring <aring@mojatatu.com>
Acked-by: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/tc_act')
| -rw-r--r-- | include/net/tc_act/tc_ife.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/include/net/tc_act/tc_ife.h b/include/net/tc_act/tc_ife.h index 104578f16062..c7fb99c3f76c 100644 --- a/include/net/tc_act/tc_ife.h +++ b/include/net/tc_act/tc_ife.h | |||
| @@ -6,12 +6,18 @@ | |||
| 6 | #include <linux/rtnetlink.h> | 6 | #include <linux/rtnetlink.h> |
| 7 | #include <linux/module.h> | 7 | #include <linux/module.h> |
| 8 | 8 | ||
| 9 | struct tcf_ife_info { | 9 | struct tcf_ife_params { |
| 10 | struct tc_action common; | ||
| 11 | u8 eth_dst[ETH_ALEN]; | 10 | u8 eth_dst[ETH_ALEN]; |
| 12 | u8 eth_src[ETH_ALEN]; | 11 | u8 eth_src[ETH_ALEN]; |
| 13 | u16 eth_type; | 12 | u16 eth_type; |
| 14 | u16 flags; | 13 | u16 flags; |
| 14 | |||
| 15 | struct rcu_head rcu; | ||
| 16 | }; | ||
| 17 | |||
| 18 | struct tcf_ife_info { | ||
| 19 | struct tc_action common; | ||
| 20 | struct tcf_ife_params __rcu *params; | ||
| 15 | /* list of metaids allowed */ | 21 | /* list of metaids allowed */ |
| 16 | struct list_head metalist; | 22 | struct list_head metalist; |
| 17 | }; | 23 | }; |
