Home
last modified time | relevance | path

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

12345678910>>...48

/Linux-v5.10/drivers/net/ethernet/huawei/hinic/
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-v5.10/drivers/net/ethernet/qlogic/qed/
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-v5.10/drivers/dma-buf/
Ddma-fence-chain.c3 * fence-chain: chain fences together in a timeline
10 #include <linux/dma-fence-chain.h>
16 * @chain: chain node to get the previous node from
19 * chain node.
21 static struct dma_fence *dma_fence_chain_get_prev(struct dma_fence_chain *chain) in dma_fence_chain_get_prev() argument
26 prev = dma_fence_get_rcu_safe(&chain->prev); in dma_fence_chain_get_prev()
32 * dma_fence_chain_walk - chain walking function
33 * @fence: current chain node
35 * Walk the chain to the next node. Returns the next fence or NULL if we are at
36 * the end of the chain. Garbage collects chain nodes which are already
[all …]
/Linux-v5.10/tools/testing/selftests/net/forwarding/
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-v5.10/drivers/net/wireless/ath/ath9k/
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 …]
/Linux-v5.10/drivers/net/ethernet/mellanox/mlx5/core/lib/
Dfs_chains.c63 u32 chain; member
75 u32 chain; member
88 struct fs_chain *chain; member
97 .key_offset = offsetof(struct fs_chain, chain),
98 .key_len = sizeof_field(struct fs_chain, chain),
220 u32 chain, u32 prio, u32 level) in mlx5_chains_create_table() argument
231 sz = (chain == mlx5_chains_get_nf_ft_chain(chains)) ? in mlx5_chains_create_table()
244 /* The root table(chain 0, prio 1, level 0) is required to be in mlx5_chains_create_table()
250 (chain == 0 && prio == 1 && level == 0)) { in mlx5_chains_create_table()
254 mlx5_get_fdb_sub_ns(chains->dev, chain) : in mlx5_chains_create_table()
[all …]
/Linux-v5.10/drivers/crypto/marvell/cesa/
Dtdma.c51 writel_relaxed(dreq->chain.first->cur_dma, in mv_cesa_dma_step()
62 for (tdma = dreq->chain.first; tdma;) { in mv_cesa_dma_cleanup()
75 dreq->chain.first = NULL; in mv_cesa_dma_cleanup()
76 dreq->chain.last = NULL; in mv_cesa_dma_cleanup()
84 for (tdma = dreq->chain.first; tdma; tdma = tdma->next) { in mv_cesa_dma_prepare()
99 if (engine->chain.first == NULL && engine->chain.last == NULL) { in mv_cesa_tdma_chain()
100 engine->chain.first = dreq->chain.first; in mv_cesa_tdma_chain()
101 engine->chain.last = dreq->chain.last; in mv_cesa_tdma_chain()
105 last = engine->chain.last; in mv_cesa_tdma_chain()
106 last->next = dreq->chain.first; in mv_cesa_tdma_chain()
[all …]
/Linux-v5.10/net/batman-adv/
Dfragmentation.c33 * batadv_frag_clear_chain() - delete entries in the fragment buffer chain
34 * @head: head of chain with entries.
35 * @dropped: whether the chain is cleared because all fragments are dropped
64 struct batadv_frag_table_entry *chain; in batadv_frag_purge_orig() local
68 chain = &orig_node->fragments[i]; in batadv_frag_purge_orig()
69 spin_lock_bh(&chain->lock); in batadv_frag_purge_orig()
71 if (!check_cb || check_cb(chain)) { in batadv_frag_purge_orig()
72 batadv_frag_clear_chain(&chain->fragment_list, true); in batadv_frag_purge_orig()
73 chain->size = 0; in batadv_frag_purge_orig()
76 spin_unlock_bh(&chain->lock); in batadv_frag_purge_orig()
[all …]
/Linux-v5.10/drivers/s390/cio/
Dvfio_ccw_cp.c34 /* Guest physical address of the current chain. */
36 /* Count of the valid ccws in chain. */
291 * @head: address of the beginning of a CCW chain
292 * @len: number of CCWs within the chain
294 * Determine whether the address of a CCW (whether a new chain,
316 struct ccwchain *chain; in ccwchain_alloc() local
321 size = ((sizeof(*chain) + 7L) & -8L) + in ccwchain_alloc()
322 sizeof(*chain->ch_ccw) * len + in ccwchain_alloc()
323 sizeof(*chain->ch_pa) * len; in ccwchain_alloc()
324 chain = kzalloc(size, GFP_DMA | GFP_KERNEL); in ccwchain_alloc()
[all …]
Dcrw.c67 unsigned int chain; in crw_collect_info() local
74 chain = 0; in crw_collect_info()
78 if (unlikely(chain > 1)) { in crw_collect_info()
91 "chain\n", __func__, chain); in crw_collect_info()
94 chain = tmp_crw.chn ? chain + 1 : 0; in crw_collect_info()
97 ccode = stcrw(&crw[chain]); in crw_collect_info()
102 crw[chain].slct, crw[chain].oflw, crw[chain].chn, in crw_collect_info()
103 crw[chain].rsc, crw[chain].anc, crw[chain].erc, in crw_collect_info()
104 crw[chain].rsid); in crw_collect_info()
106 if (crw[chain].oflw) { in crw_collect_info()
[all …]
/Linux-v5.10/net/sched/
Dcls_api.c54 return jhash_3words(tp->chain->index, tp->prio, in destroy_obj_hashfn()
58 static void tcf_proto_signal_destroying(struct tcf_chain *chain, in tcf_proto_signal_destroying() argument
61 struct tcf_block *block = chain->block; in tcf_proto_signal_destroying()
72 return tp1->chain->index == tp2->chain->index && in tcf_proto_cmp()
77 static bool tcf_proto_exists_destroying(struct tcf_chain *chain, in tcf_proto_exists_destroying() argument
85 hash_for_each_possible_rcu(chain->block->proto_destroy_ht, iter, in tcf_proto_exists_destroying()
98 tcf_proto_signal_destroyed(struct tcf_chain *chain, struct tcf_proto *tp) in tcf_proto_signal_destroyed() argument
100 struct tcf_block *block = chain->block; in tcf_proto_signal_destroyed()
252 u32 prio, struct tcf_chain *chain, in tcf_proto_create() argument
271 tp->chain = chain; in tcf_proto_create()
[all …]
/Linux-v5.10/include/linux/qed/
Dqed_chain.h22 /* Chain is a single page (next ptr) is unrequired */
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-v5.10/kernel/
Dnotifier.c18 * Notifier chain core routines. The exported routines below
54 * @nl: Pointer to head of the blocking notifier chain
100 * @nl: Pointer to head of the blocking notifier chain
106 * NOTE: It is important the @nl chain doesn't change between the two
126 * Atomic notifier chain routines. Registration and unregistration
131 * atomic_notifier_chain_register - Add notifier to an atomic notifier chain
132 * @nh: Pointer to head of the atomic notifier chain
133 * @n: New entry in notifier chain
135 * Adds a notifier to an atomic notifier chain.
153 * atomic_notifier_chain_unregister - Remove notifier from an atomic notifier chain
[all …]
/Linux-v5.10/net/netfilter/
Dnf_tables_offload.c200 static int nft_flow_offload_rule(struct nft_chain *chain, in nft_flow_offload_rule() argument
209 if (!nft_is_base_chain(chain)) in nft_flow_offload_rule()
212 basechain = nft_base_chain(chain); in nft_flow_offload_rule()
233 struct nft_chain *chain; in nft_flow_offload_unbind() local
236 chain = &basechain->chain; in nft_flow_offload_unbind()
237 list_for_each_entry(rule, &chain->rules, list) { in nft_flow_offload_unbind()
288 static int nft_block_offload_cmd(struct nft_base_chain *chain, in nft_block_offload_cmd() argument
296 nft_flow_block_offload_init(&bo, dev_net(dev), cmd, chain, &extack); in nft_block_offload_cmd()
302 return nft_block_setup(chain, &bo, cmd); in nft_block_offload_cmd()
393 static int nft_flow_offload_chain(struct nft_chain *chain, u8 *ppolicy, in nft_flow_offload_chain() argument
[all …]
Dnf_tables_core.c25 const struct nft_chain *chain, in __nft_trace_packet() argument
33 info->chain = chain; in __nft_trace_packet()
40 const struct nft_chain *chain, in nft_trace_packet() argument
46 __nft_trace_packet(info, chain, type); in nft_trace_packet()
104 static noinline void nft_update_chain_stats(const struct nft_chain *chain, in nft_update_chain_stats() argument
111 base_chain = nft_base_chain(chain); in nft_update_chain_stats()
128 const struct nft_chain *chain; member
160 const struct nft_chain *chain = priv, *basechain = chain; in nft_do_chain() local
176 rules = rcu_dereference(chain->rules_gen_1); in nft_do_chain()
178 rules = rcu_dereference(chain->rules_gen_0); in nft_do_chain()
[all …]
Dnf_tables_api.c93 struct nft_chain *chain, in nft_ctx_init() argument
100 ctx->chain = chain; in nft_ctx_init()
194 struct nft_chain *chain) in nf_tables_register_hook() argument
200 !nft_is_base_chain(chain)) in nf_tables_register_hook()
203 basechain = nft_base_chain(chain); in nf_tables_register_hook()
217 struct nft_chain *chain) in nf_tables_unregister_hook() argument
223 !nft_is_base_chain(chain)) in nf_tables_unregister_hook()
225 basechain = nft_base_chain(chain); in nf_tables_unregister_hook()
273 nft_activate_next(ctx->net, ctx->chain); in nft_trans_chain_add()
294 nft_deactivate_next(ctx->net, ctx->chain); in nft_delchain()
[all …]
/Linux-v5.10/fs/minix/
Ditree_common.c33 Indirect chain[DEPTH], in get_branch()
37 Indirect *p = chain; in get_branch()
42 add_chain (chain, NULL, i_data(inode) + *offsets); in get_branch()
50 if (!verify_chain(chain, p)) in get_branch()
116 Indirect chain[DEPTH], in splice_branch()
125 if (!verify_chain(chain, where-1) || *where->p) in splice_branch()
157 Indirect chain[DEPTH]; in get_block() local
166 partial = get_branch(inode, depth, offsets, chain, &err); in get_block()
171 map_bh(bh, inode->i_sb, block_to_cpu(chain[depth-1].key)); in get_block()
173 partial = chain+depth-1; /* the whole chain */ in get_block()
[all …]
/Linux-v5.10/tools/testing/selftests/netfilter/
Dnft_trans_stress.sh33 echo "add chain inet $table INPUT { type filter hook input priority 0; }" >> "$tmp"
34 echo "add chain inet $table OUTPUT { type filter hook output priority 0; }" >> "$tmp"
36 chain=$(printf "chain%03u" "$c")
37 echo "add chain inet $table $chain" >> "$tmp"
41 chain=$(printf "chain%03u" "$c")
43 echo "add rule inet $table $BASE counter jump $chain" >> "$tmp"
45 echo "add rule inet $table $chain counter return" >> "$tmp"
/Linux-v5.10/fs/sysv/
Ditree.c91 Indirect chain[], in get_branch() argument
95 Indirect *p = chain; in get_branch()
99 add_chain(chain, NULL, SYSV_I(inode)->i_data + *offsets); in get_branch()
107 if (!verify_chain(chain, p)) in get_branch()
169 Indirect chain[], in splice_branch() argument
177 if (!verify_chain(chain, where-1) || *where->p) in splice_branch()
207 Indirect chain[DEPTH]; in get_block() local
218 partial = get_branch(inode, depth, offsets, chain, &err); in get_block()
225 chain[depth-1].key)); in get_block()
227 partial = chain+depth-1; /* the whole chain */ in get_block()
[all …]
/Linux-v5.10/drivers/net/ethernet/mscc/
Docelot_flower.c12 * into the chain number. This is UAPI.
24 static int ocelot_chain_to_block(int chain, bool ingress) in ocelot_chain_to_block() argument
29 if (chain == 0) in ocelot_chain_to_block()
34 /* Backwards compatibility with older, single-chain tc-flower in ocelot_chain_to_block()
37 if (chain == 0) in ocelot_chain_to_block()
41 if (chain == VCAP_IS1_CHAIN(lookup)) in ocelot_chain_to_block()
46 if (chain == VCAP_IS2_CHAIN(lookup, pag)) in ocelot_chain_to_block()
52 /* Caller must ensure this is a valid IS1 or IS2 chain first,
55 static int ocelot_chain_to_lookup(int chain) in ocelot_chain_to_lookup() argument
57 return (chain / VCAP_LOOKUP) % 10; in ocelot_chain_to_lookup()
[all …]
/Linux-v5.10/drivers/net/ethernet/toshiba/
Dspider_net.c58 "in tx chain");
268 * spider_net_free_chain - free descriptor chain
270 * @chain: address of chain
275 struct spider_net_descr_chain *chain) in spider_net_free_chain() argument
279 descr = chain->ring; in spider_net_free_chain()
284 } while (descr != chain->ring); in spider_net_free_chain()
286 dma_free_coherent(&card->pdev->dev, chain->num_desc * sizeof(struct spider_net_hw_descr), in spider_net_free_chain()
287 chain->hwring, chain->dma_addr); in spider_net_free_chain()
291 * spider_net_init_chain - alloc and link descriptor chain
293 * @chain: address of chain
[all …]
/Linux-v5.10/fs/ext4/
Dindirect.c115 * ext4_get_branch - read the chain of indirect blocks leading to data
117 * @depth: depth of the chain (1 - direct pointer, etc.)
119 * @chain: place to store the result
124 * (incomplete one) otherwise. Upon the return chain[i].key contains
125 * the number of (i+1)-th block in the chain (as it is stored in memory,
126 * i.e. little-endian 32-bit), chain[i].p contains the address of that
128 * for i>0) and chain[i].bh points to the buffer_head of i-th indirect
130 * numbers of the chain, addresses they were taken from (and where we can
131 * verify that chain did not change) and buffer_heads hosting these
139 * the whole chain, all way to the data (returns %NULL, *err == 0).
[all …]
/Linux-v5.10/tools/testing/selftests/drivers/net/ocelot/
Dtc_flower_chains.sh37 # Helpers to map a VCAP IS1 and VCAP IS2 lookup and policy to a chain number
111 # separate chain number. For correct rule offloading, it is mandatory that each
115 # A chain can only be used if there is a GOTO action correctly set up from the
135 tc filter add dev $eth ingress chain 0 pref 49152 flower \
136 skip_sw action goto chain $(IS1 0)
137 tc filter add dev $eth ingress chain $(IS1 0) pref 49152 \
138 flower skip_sw action goto chain $(IS1 1)
139 tc filter add dev $eth ingress chain $(IS1 1) pref 49152 \
140 flower skip_sw action goto chain $(IS1 2)
141 tc filter add dev $eth ingress chain $(IS1 2) pref 49152 \
[all …]
/Linux-v5.10/drivers/mtd/
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()
252 "Virtual Unit Chain %d!\n", thisVUC); in NFTL_foldchain()
257 512-byte block within the Chain. in NFTL_foldchain()
295 "in Virtual Unit Chain %d for block %d\n", in NFTL_foldchain()
304 "in Virtual Unit Chain %d for block %d\n", in NFTL_foldchain()
317 printk(KERN_WARNING "Infinite loop in Virtual Unit Chain 0x%x\n", in NFTL_foldchain()
360 pr_debug("Cannot fold Virtual Unit Chain %d in place. " in NFTL_foldchain()
[all …]
/Linux-v5.10/drivers/media/usb/uvc/
Duvc_entity.c17 static int uvc_mc_create_links(struct uvc_video_chain *chain, in uvc_mc_create_links() argument
39 remote = uvc_entity_by_id(chain->dev, entity->baSourceID[i]); in uvc_mc_create_links()
70 static int uvc_mc_init_entity(struct uvc_video_chain *chain, in uvc_mc_init_entity() argument
121 ret = v4l2_device_register_subdev(&chain->dev->vdev, in uvc_mc_init_entity()
134 int uvc_mc_register_entities(struct uvc_video_chain *chain) in uvc_mc_register_entities() argument
139 list_for_each_entry(entity, &chain->entities, chain) { in uvc_mc_register_entities()
140 ret = uvc_mc_init_entity(chain, entity); in uvc_mc_register_entities()
148 list_for_each_entry(entity, &chain->entities, chain) { in uvc_mc_register_entities()
149 ret = uvc_mc_create_links(chain, entity); in uvc_mc_register_entities()

12345678910>>...48