Home
last modified time | relevance | path

Searched full:chain (Results 1 – 25 of 989) sorted by relevance

12345678910>>...40

/linux/drivers/net/ethernet/huawei/hinic/
H A Dhinic_hw_api_cmd.c49 #define MASKED_IDX(chain, idx) ((idx) & ((chain)->num_cells - 1)) argument
89 static void set_prod_idx(struct hinic_api_cmd_chain *chain) in set_prod_idx() argument
91 enum hinic_api_cmd_chain_type chain_type = chain->chain_type; in set_prod_idx()
92 struct hinic_hwif *hwif = chain->hwif; in set_prod_idx()
100 prod_idx |= HINIC_API_CMD_PI_SET(chain->prod_idx, IDX); in set_prod_idx()
105 static u32 get_hw_cons_idx(struct hinic_api_cmd_chain *chain) in get_hw_cons_idx() argument
109 addr = HINIC_CSR_API_CMD_STATUS_ADDR(chain->chain_type); in get_hw_cons_idx()
110 val = hinic_hwif_read_reg(chain->hwif, addr); in get_hw_cons_idx()
115 static void dump_api_chain_reg(struct hinic_api_cmd_chain *chain) in dump_api_chain_reg() argument
119 addr = HINIC_CSR_API_CMD_STATUS_ADDR(chain->chain_type); in dump_api_chain_reg()
[all …]
/linux/drivers/net/ethernet/qlogic/qed/
H A Dqed_chain.c10 static void qed_chain_init(struct qed_chain *chain, in qed_chain_init() argument
14 memset(chain, 0, sizeof(*chain)); in qed_chain_init()
16 chain->elem_size = params->elem_size; in qed_chain_init()
17 chain->intended_use = params->intended_use; in qed_chain_init()
18 chain->mode = params->mode; in qed_chain_init()
19 chain->cnt_type = params->cnt_type; in qed_chain_init()
21 chain->elem_per_page = ELEMS_PER_PAGE(params->elem_size, in qed_chain_init()
23 chain->usable_per_page = USABLE_ELEMS_PER_PAGE(params->elem_size, in qed_chain_init()
26 chain->elem_unusable = UNUSABLE_ELEMS_PER_PAGE(params->elem_size, in qed_chain_init()
29 chain->elem_per_page_mask = chain->elem_per_page - 1; in qed_chain_init()
[all …]
/linux/tools/testing/selftests/net/forwarding/
H A Dtc_chains.sh38 tc filter add dev $h2 ingress chain 1 protocol ip pref 1 handle 1101 \
45 check_fail $? "matched on filter in unreachable chain"
47 tc filter del dev $h2 ingress chain 1 protocol ip pref 1 handle 1101 \
50 log_test "unreachable chain ($tcflags)"
57 tc filter add dev $h2 ingress chain 1 protocol ip pref 1 handle 1101 \
62 $tcflags dst_mac $h2mac action goto chain 1
71 check_err $? "Did not match on correct filter with goto chain action"
74 check_err $? "Did not match on correct filter in chain 1"
78 tc filter del dev $h2 ingress chain 1 protocol ip pref 1 handle 1101 \
81 log_test "gact goto chain ($tcflags)"
[all …]
/linux/drivers/net/ethernet/mellanox/mlx5/core/lib/
H A Dfs_chains.c43 u32 chain; member
55 u32 chain; member
68 struct fs_chain *chain; member
77 .key_offset = offsetof(struct fs_chain, chain),
78 .key_len = sizeof_field(struct fs_chain, chain),
153 u32 chain, u32 prio, u32 level) in mlx5_chains_create_table() argument
164 sz = (chain == mlx5_chains_get_nf_ft_chain(chains)) ? in mlx5_chains_create_table()
174 /* The root table(chain 0, prio 1, level 0) is required to be in mlx5_chains_create_table()
180 (chain == 0 && prio == 1 && level == 0)) { in mlx5_chains_create_table()
184 mlx5_get_fdb_sub_ns(chains->dev, chain) : in mlx5_chains_create_table()
[all …]
/linux/drivers/net/wireless/ath/ath9k/
H A Dar9003_rtt.c29 * There is an internal table (i.e. the rtt) for each chain (or bank).
72 static void ar9003_hw_rtt_load_hist_entry(struct ath_hw *ah, u8 chain, in ar9003_hw_rtt_load_hist_entry() argument
78 REG_WRITE(ah, AR_PHY_RTT_TABLE_SW_INTF_1_B(chain), val); in ar9003_hw_rtt_load_hist_entry()
83 REG_WRITE(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), val); in ar9003_hw_rtt_load_hist_entry()
87 REG_WRITE(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), val); in ar9003_hw_rtt_load_hist_entry()
90 if (!ath9k_hw_wait(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), in ar9003_hw_rtt_load_hist_entry()
96 REG_WRITE(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), val); in ar9003_hw_rtt_load_hist_entry()
99 ath9k_hw_wait(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), in ar9003_hw_rtt_load_hist_entry()
106 int chain, i; in ar9003_hw_rtt_load_hist() local
108 for (chain = 0; chain < AR9300_MAX_CHAINS; chain++) { in ar9003_hw_rtt_load_hist()
[all …]
H A Dlink.c182 int chain; in ath_paprd_activate() local
190 for (chain = 0; chain < AR9300_MAX_CHAINS; chain++) { in ath_paprd_activate()
191 if (!(ah->txchainmask & BIT(chain))) in ath_paprd_activate()
194 ar9003_paprd_populate_single_table(ah, caldata, chain); in ath_paprd_activate()
201 static bool ath_paprd_send_frame(struct ath_softc *sc, struct sk_buff *skb, int chain) in ath_paprd_send_frame() argument
222 txctl.paprd = BIT(chain); in ath_paprd_send_frame()
235 "Timeout waiting for paprd training on TX chain %d\n", in ath_paprd_send_frame()
236 chain); in ath_paprd_send_frame()
252 int chain; in ath_paprd_calibrate() local
282 for (chain = 0; chain < AR9300_MAX_CHAINS; chain++) { in ath_paprd_calibrate()
[all …]
/linux/net/sched/
H A Dcls_api.c54 const struct tcf_chain *chain; member
91 n->chain_index = tp->chain->index; in tcf_exts_miss_cookie_base_alloc()
92 n->chain = tp->chain; in tcf_exts_miss_cookie_base_alloc()
174 return jhash_3words(tp->chain->index, tp->prio, in destroy_obj_hashfn()
178 static void tcf_proto_signal_destroying(struct tcf_chain *chain, in tcf_proto_signal_destroying() argument
181 struct tcf_block *block = chain->block; in tcf_proto_signal_destroying()
192 return tp1->chain->index == tp2->chain->index && in tcf_proto_cmp()
197 static bool tcf_proto_exists_destroying(struct tcf_chain *chain, in tcf_proto_exists_destroying() argument
205 hash_for_each_possible_rcu(chain->block->proto_destroy_ht, iter, in tcf_proto_exists_destroying()
218 tcf_proto_signal_destroyed(struct tcf_chain *chain, struct tcf_proto *tp) in tcf_proto_signal_destroyed() argument
[all …]
/linux/kernel/
H A Dnotifier.c13 * Notifier chain core routines. The exported routines below
55 * @nl: Pointer to head of the blocking notifier chain
102 * @nl: Pointer to head of the blocking notifier chain
108 * NOTE: It is important the @nl chain doesn't change between the two
128 * Atomic notifier chain routines. Registration and unregistration
133 * atomic_notifier_chain_register - Add notifier to an atomic notifier chain
134 * @nh: Pointer to head of the atomic notifier chain
135 * @n: New entry in notifier chain
137 * Adds a notifier to an atomic notifier chain.
155 * atomic_notifier_chain_register_unique_prio - Add notifier to an atomic notifier chain
[all …]
/linux/net/batman-adv/
H A Dfragmentation.c32 * batadv_frag_clear_chain() - delete entries in the fragment buffer chain
33 * @head: head of chain with entries.
34 * @dropped: whether the chain is cleared because all fragments are dropped
63 struct batadv_frag_table_entry *chain; in batadv_frag_purge_orig() local
67 chain = &orig_node->fragments[i]; in batadv_frag_purge_orig()
68 spin_lock_bh(&chain->lock); in batadv_frag_purge_orig()
70 if (!check_cb || check_cb(chain)) { in batadv_frag_purge_orig()
71 batadv_frag_clear_chain(&chain->fragment_list, true); in batadv_frag_purge_orig()
72 chain->size = 0; in batadv_frag_purge_orig()
75 spin_unlock_bh(&chain->lock); in batadv_frag_purge_orig()
[all …]
/linux/include/linux/qed/
H A Dqed_chain.h22 /* Chain is a single page (next ptr) is not required */
30 QED_CHAIN_USE_TO_PRODUCE, /* Chain starts empty */
31 QED_CHAIN_USE_TO_CONSUME, /* Chain starts full */
32 QED_CHAIN_USE_TO_CONSUME_PRODUCE, /* Chain starts empty */
36 /* The chain's size/prod/cons are kept in 16-bit variables */
39 /* The chain's size/prod/cons are kept in 32-bit variables */
76 /* Fastpath portion of the chain - required for commands such
88 * chain pages, respectively to the physical addresses
120 /* Slowpath of the chain - required for initialization and destruction,
133 /* Address of first page of the chain - the address is required
[all …]
/linux/drivers/s390/cio/
H A Dvfio_ccw_cp.c34 /* Guest physical address of the current chain. */
36 /* Count of the valid ccws in chain. */
294 * @head: address of the beginning of a CCW chain
295 * @len: number of CCWs within the chain
297 * Determine whether the address of a CCW (whether a new chain,
320 struct ccwchain *chain; in ccwchain_alloc() local
322 chain = kzalloc_obj(*chain); in ccwchain_alloc()
323 if (!chain) in ccwchain_alloc()
326 chain->ch_ccw = kzalloc_objs(*chain->ch_ccw, len, GFP_DMA | GFP_KERNEL); in ccwchain_alloc()
327 if (!chain->ch_ccw) in ccwchain_alloc()
[all …]
/linux/drivers/media/usb/uvc/
H A Duvc_ctrl.c595 struct uvc_video_chain *chain, struct uvc_control *ctrl) in uvc_ctrl_filter_plf_mapping() argument
608 ret = uvc_query_ctrl(chain->dev, UVC_GET_CUR, ctrl->entity->id, in uvc_ctrl_filter_plf_mapping()
609 chain->dev->intfnum, ctrl->info.selector, in uvc_ctrl_filter_plf_mapping()
618 ret = uvc_query_ctrl(chain->dev, UVC_SET_CUR, ctrl->entity->id, in uvc_ctrl_filter_plf_mapping()
619 chain->dev->intfnum, ctrl->info.selector, in uvc_ctrl_filter_plf_mapping()
625 if (chain->dev->uvc_version < 0x150) in uvc_ctrl_filter_plf_mapping()
630 ret = uvc_query_ctrl(chain->dev, UVC_SET_CUR, ctrl->entity->id, in uvc_ctrl_filter_plf_mapping()
631 chain->dev->intfnum, ctrl->info.selector, in uvc_ctrl_filter_plf_mapping()
639 uvc_query_ctrl(chain->dev, UVC_SET_CUR, ctrl->entity->id, in uvc_ctrl_filter_plf_mapping()
640 chain->dev->intfnum, ctrl->info.selector, in uvc_ctrl_filter_plf_mapping()
[all …]
/linux/drivers/mtd/
H A Dnftlcore.c188 * when the give Virtual Unit Chain
192 /* For a given Virtual Unit Chain: find or create a free block and in NFTL_findfreeblock()
193 add it to the chain */ in NFTL_findfreeblock()
194 /* We're passed the number of the last EUN in the chain, to save us from in NFTL_findfreeblock()
271 "Virtual Unit Chain %d!\n", thisVUC); in NFTL_foldchain()
276 512-byte block within the Chain. in NFTL_foldchain()
314 "in Virtual Unit Chain %d for block %d\n", in NFTL_foldchain()
323 "in Virtual Unit Chain %d for block %d\n", in NFTL_foldchain()
336 printk(KERN_WARNING "Infinite loop in Virtual Unit Chain 0x%x\n", in NFTL_foldchain()
379 pr_debug("Cannot fold Virtual Unit Chain %d in place. " in NFTL_foldchain()
[all …]
H A Dinftlcore.c196 * This function is used when the give Virtual Unit Chain.
257 "Virtual Unit Chain %d!\n", thisVUC); in INFTL_foldchain()
263 * 512-byte block within the Chain. in INFTL_foldchain()
299 "Unit Chain 0x%x\n", thisVUC); in INFTL_foldchain()
308 * Chain, and the Erase Unit into which we are supposed to be copying. in INFTL_foldchain()
311 pr_debug("INFTL: folding chain %d into unit %d\n", thisVUC, targetEUN); in INFTL_foldchain()
356 * Newest unit in chain now contains data from _all_ older units. in INFTL_foldchain()
357 * So go through and erase each unit in chain, oldest first. (This in INFTL_foldchain()
361 pr_debug("INFTL: want to erase virtual chain %d\n", thisVUC); in INFTL_foldchain()
364 /* Find oldest unit in chain. */ in INFTL_foldchain()
[all …]
/linux/tools/testing/selftests/drivers/net/ocelot/
H A Dtc_flower_chains.sh19 # Helpers to map a VCAP IS1 and VCAP IS2 lookup and policy to a chain number
93 # separate chain number. For correct rule offloading, it is mandatory that each
97 # A chain can only be used if there is a GOTO action correctly set up from the
117 tc filter add dev $eth ingress chain 0 pref 49152 flower \
118 skip_sw action goto chain $(IS1 0)
119 tc filter add dev $eth ingress chain $(IS1 0) pref 49152 \
120 flower skip_sw action goto chain $(IS1 1)
121 tc filter add dev $eth ingress chain $(IS1 1) pref 49152 \
122 flower skip_sw action goto chain $(IS1 2)
123 tc filter add dev $eth ingress chain $(IS1 2) pref 49152 \
[all …]
/linux/drivers/net/ethernet/mscc/
H A Docelot_flower.c13 * into the chain number. This is UAPI.
24 /* PSFP chain and block ID */
28 static int ocelot_chain_to_block(int chain, bool ingress) in ocelot_chain_to_block() argument
33 if (chain == 0) in ocelot_chain_to_block()
38 /* Backwards compatibility with older, single-chain tc-flower in ocelot_chain_to_block()
41 if (chain == 0) in ocelot_chain_to_block()
45 if (chain == VCAP_IS1_CHAIN(lookup)) in ocelot_chain_to_block()
50 if (chain == VCAP_IS2_CHAIN(lookup, pag)) in ocelot_chain_to_block()
53 if (chain == OCELOT_PSFP_CHAIN) in ocelot_chain_to_block()
59 /* Caller must ensure this is a valid IS1 or IS2 chain first,
[all …]
/linux/net/netfilter/
H A Dnf_tables_api.c129 const struct nft_chain *chain) in nft_chain_vstate_valid() argument
135 if (WARN_ON_ONCE(!nft_is_base_chain(ctx->chain))) in nft_chain_vstate_valid()
138 base_chain = nft_base_chain(ctx->chain); in nft_chain_vstate_valid()
142 /* chain is already validated for this call depth */ in nft_chain_vstate_valid()
143 if (chain->vstate.depth >= ctx->level && in nft_chain_vstate_valid()
144 chain->vstate.hook_mask[type] & BIT(hooknum)) in nft_chain_vstate_valid()
161 struct nft_chain *chain, in nft_ctx_init() argument
168 ctx->chain = chain; in nft_ctx_init()
263 struct nft_chain *chain, bool bind) in __nft_chain_trans_bind() argument
269 if (!nft_chain_binding(chain)) in __nft_chain_trans_bind()
[all …]
H A Dnf_tables_offload.c268 static int nft_flow_offload_cmd(const struct nft_chain *chain, in nft_flow_offload_cmd() argument
277 if (!nft_is_base_chain(chain)) in nft_flow_offload_cmd()
280 basechain = nft_base_chain(chain); in nft_flow_offload_cmd()
288 static int nft_flow_offload_rule(const struct nft_chain *chain, in nft_flow_offload_rule() argument
295 return nft_flow_offload_cmd(chain, rule, flow, command, &cls_flow); in nft_flow_offload_rule()
298 int nft_flow_rule_stats(const struct nft_chain *chain, in nft_flow_rule_stats() argument
305 err = nft_flow_offload_cmd(chain, rule, NULL, FLOW_CLS_STATS, in nft_flow_rule_stats()
331 struct nft_chain *chain; in nft_flow_offload_unbind() local
334 chain = &basechain->chain; in nft_flow_offload_unbind()
335 list_for_each_entry(rule, &chain->rules, list) { in nft_flow_offload_unbind()
[all …]
/linux/tools/testing/selftests/tc-testing/tc-tests/infra/
H A Dfilter.json4 … "name": "Soft lockup alarm will be not generated after delete the prio 0 filter of the chain",
7 "chain"
14 "$TC chain add dev $DUMMY",
15 "$TC filter del dev $DUMMY chain 0 parent 1: prio 0"
17 "cmdUnderTest": "$TC filter add dev $DUMMY chain 0 parent 1:",
19 "verifyCmd": "$TC chain ls dev $DUMMY",
20 "matchPattern": "chain parent 1: chain 0",
/linux/include/net/netfilter/
H A Dnf_tables.h98 * @chain: destination chain for NFT_JUMP/NFT_GOTO
102 struct nft_chain *chain; member
202 * @table: the table the chain is contained in
203 * @chain: the chain the rule is contained in
216 struct nft_chain *chain; member
664 * @chain: chain containing the rule bound to the set
672 const struct nft_chain *chain; member
1080 const struct nft_chain *chain; /* for nftables tracing */ member
1104 * If a chain is encountered again during table validation it is
1109 * @hook_mask: the hook numbers and locations the chain is linked to
[all …]
/linux/tools/testing/selftests/tc-testing/tc-tests/filters/
H A Dflow.json18 …"matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys dst …
40 …"matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys dst.…
62 …"matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys dst …
84 …"matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys dst …
106 …"matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys dst …
128 …"matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys src …
150 …"matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys prot…
172 …"matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys prot…
194 …"matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys prot…
216 …"matchPattern": "filter parent ffff: protocol ip pref 1 flow chain [0-9]+ handle 0x1 map keys iif …
[all …]
/linux/drivers/platform/x86/lenovo/
H A Dwmi-events.c7 * notifier chain.
38 * lwmi_events_register_notifier() - Add a notifier to the notifier chain.
42 * lenovo-wmi-events driver blocking notifier chain.
54 * chain.
58 * from the lenovo-wmi-events driver blocking notifier chain.
70 * chain.
74 * the lenovo-wmi-events driver blocking notifier chain.
86 * devm_lwmi_events_register_notifier() - Add a notifier to the notifier chain.
91 * lenovo-wmi-events driver blocking notifier chain. Then add, as a device
111 * lwmi_events_notify() - Call functions for the notifier call chain.
[all …]
/linux/tools/testing/selftests/net/netfilter/
H A Dnft_queue.sh5 # 2. support running nfqueue from more than one base chain
93 chain nfq {
97 chain pre {
101 chain input {
105 chain forward {
110 chain output {
116 chain post {
129 chain pre {
133 chain input {
137 chain forward {
[all …]
/linux/drivers/dma/ppc4xx/
H A Dadma.h77 * @chain: device chain view of the descriptors
82 * @hw_chain_inited: h/w descriptor chain initialization flag
93 struct list_head chain; member
120 * @phys: hardware address of the hardware descriptor chain
122 * @hw_next: pointer to the next descriptor in chain
125 * @chain_node: node on the op_adma_chan.chain list
129 * @hw_desc: virtual address of the hardware descriptor chain
168 #define PPC440SPE_DESC_WXOR 4 /* WXORs are in chain */
169 #define PPC440SPE_DESC_RXOR 5 /* RXOR is in chain */
/linux/arch/mips/cavium-octeon/executive/
H A Dcvmx-helper-jtag.c41 * of the JTAG chain by the cvmx_helper_qlm_jtag_*() functions.
43 * Networks. Programming incorrect values into the JTAG chain
74 * Write up to 32bits into the QLM jtag chain. Bits are shifted
76 * order bits followed by the high order bits. The JTAG chain is
81 * @data: Data to shift in. Bit 0 enters the chain first, followed by
84 * Returns The low order bits of the JTAG chain that shifted out of the
104 * Shift long sequences of zeros into the QLM JTAG chain. It is
106 * chain. This function is a convenience wrapper around
125 * Program the QLM JTAG chain into all lanes of the QLM. You must
127 * chain. Updating invalid values can possibly cause chip damage.

12345678910>>...40