linux/drivers/net/ethernet/intel/ixgbe
WANG Cong 22dc13c837 net_sched: convert tcf_exts from list to pointer array
As pointed out by Jamal, an action could be shared by
multiple filters, so we can't use list to chain them
any more after we get rid of the original tc_action.
Instead, we could just save pointers to these actions
in tcf_exts, since they are refcount'ed, so convert
the list to an array of pointers.

The "ugly" part is the action API still accepts list
as a parameter, I just introduce a helper function to
convert the array of pointers to a list, instead of
relying on the C99 feature to iterate the array.

Fixes: a85a970af2 ("net_sched: move tc_action into tcf_common")
Reported-by: Jamal Hadi Salim <jhs@mojatatu.com>
Cc: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Acked-by: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-08-17 19:27:51 -04:00
..
ixgbe_82598.c ixgbe: use BIT() macro 2016-04-25 04:15:11 -07:00
ixgbe_82599.c ixgbe: remove redundant check on ret_val 2016-07-22 02:04:28 -07:00
ixgbe_common.c ixgbe: cleanup crosstalk fix 2016-07-22 02:10:22 -07:00
ixgbe_common.h ixgbe: consolidate the configuration of spoof checking 2016-04-24 17:54:22 -07:00
ixgbe_dcb_82598.c ixgbe: use BIT() macro 2016-04-25 04:15:11 -07:00
ixgbe_dcb_82598.h
ixgbe_dcb_82599.c ixgbe: use BIT() macro 2016-04-25 04:15:11 -07:00
ixgbe_dcb_82599.h
ixgbe_dcb_nl.c ixgbe: use BIT() macro 2016-04-25 04:15:11 -07:00
ixgbe_dcb.c ixgbe: use BIT() macro 2016-04-25 04:15:11 -07:00
ixgbe_dcb.h
ixgbe_debugfs.c
ixgbe_ethtool.c ixgbevf: Correct parameter sent to LED function 2016-07-22 01:12:58 -07:00
ixgbe_fcoe.c ixgbe: Fix MDD events generated when FCoE+SRIOV are enabled 2016-01-08 04:15:00 -08:00
ixgbe_fcoe.h ixgbe: adds x550 specific FCoE offloads 2015-04-10 00:15:55 -07:00
ixgbe_lib.c ixgbe: Add support for x550em_a 10G MAC type 2016-04-07 16:15:35 -07:00
ixgbe_main.c net_sched: convert tcf_exts from list to pointer array 2016-08-17 19:27:51 -04:00
ixgbe_mbx.c ixgbe: use BIT() macro 2016-04-25 04:15:11 -07:00
ixgbe_mbx.h ixgbe: Make all unchanging ops structures const 2016-04-04 13:36:58 -07:00
ixgbe_model.h ixgbe: Fix deleting link filters for cls_u32 offloads 2016-06-29 10:05:24 -07:00
ixgbe_phy.c ixgbe: Always turn PHY power on when requested 2015-12-03 02:45:13 -08:00
ixgbe_phy.h ixgbe: use BIT() macro 2016-04-25 04:15:11 -07:00
ixgbe_ptp.c ixgbe: use BIT() macro 2016-04-25 04:15:11 -07:00
ixgbe_sriov.c ixgbe: fix spoofed packets with macvlans 2016-06-29 13:06:31 -07:00
ixgbe_sriov.h ixgbe: add a callback to set the maximum transmit bitrate 2016-04-04 17:44:46 -07:00
ixgbe_sysfs.c
ixgbe_type.h ixgbe: cleanup crosstalk fix 2016-07-22 02:10:22 -07:00
ixgbe_x540.c ixgbe: use BIT() macro 2016-04-25 04:15:11 -07:00
ixgbe_x540.h ixgbe: Place SWFW semaphore in known valid state at probe 2016-04-04 17:44:50 -07:00
ixgbe_x550.c ixgbe: fix setup_fc for x550em 2016-07-22 01:31:30 -07:00
ixgbe.h ixgbe: cleanup crosstalk fix 2016-07-22 02:10:22 -07:00
Makefile ixgbe: Add X550 support function pointers 2014-12-05 09:13:07 -08:00