chain              97 drivers/crypto/marvell/cesa.c 	if (engine->chain.first && engine->chain.last)
chain             458 drivers/crypto/marvell/cesa.h 	struct mv_cesa_tdma_chain chain;
chain             528 drivers/crypto/marvell/cesa.h 	struct mv_cesa_tdma_chain chain;
chain             646 drivers/crypto/marvell/cesa.h 	return req->chain.first ? CESA_DMA_REQ : CESA_STD_REQ;
chain             803 drivers/crypto/marvell/cesa.h bool mv_cesa_req_dma_iter_next_transfer(struct mv_cesa_dma_iter *chain,
chain             839 drivers/crypto/marvell/cesa.h mv_cesa_tdma_desc_iter_init(struct mv_cesa_tdma_chain *chain)
chain             841 drivers/crypto/marvell/cesa.h 	memset(chain, 0, sizeof(*chain));
chain             844 drivers/crypto/marvell/cesa.h int mv_cesa_dma_add_result_op(struct mv_cesa_tdma_chain *chain, dma_addr_t src,
chain             847 drivers/crypto/marvell/cesa.h struct mv_cesa_op_ctx *mv_cesa_dma_add_op(struct mv_cesa_tdma_chain *chain,
chain             852 drivers/crypto/marvell/cesa.h int mv_cesa_dma_add_data_transfer(struct mv_cesa_tdma_chain *chain,
chain             856 drivers/crypto/marvell/cesa.h int mv_cesa_dma_add_dummy_launch(struct mv_cesa_tdma_chain *chain, gfp_t flags);
chain             857 drivers/crypto/marvell/cesa.h int mv_cesa_dma_add_dummy_end(struct mv_cesa_tdma_chain *chain, gfp_t flags);
chain             859 drivers/crypto/marvell/cesa.h int mv_cesa_dma_add_op_transfers(struct mv_cesa_tdma_chain *chain,
chain             212 drivers/crypto/marvell/cipher.c 		memcpy(skreq->iv, basereq->chain.last->op->ctx.blkcipher.iv,
chain             313 drivers/crypto/marvell/cipher.c 	basereq->chain.first = NULL;
chain             314 drivers/crypto/marvell/cipher.c 	basereq->chain.last = NULL;
chain             335 drivers/crypto/marvell/cipher.c 	mv_cesa_tdma_desc_iter_init(&basereq->chain);
chain             341 drivers/crypto/marvell/cipher.c 		op = mv_cesa_dma_add_op(&basereq->chain, op_templ, skip_ctx, flags);
chain             351 drivers/crypto/marvell/cipher.c 		ret = mv_cesa_dma_add_op_transfers(&basereq->chain, &iter.base,
chain             357 drivers/crypto/marvell/cipher.c 		ret = mv_cesa_dma_add_dummy_launch(&basereq->chain, flags);
chain             362 drivers/crypto/marvell/cipher.c 		ret = mv_cesa_dma_add_op_transfers(&basereq->chain, &iter.base,
chain             370 drivers/crypto/marvell/cipher.c 	ret = mv_cesa_dma_add_result_op(&basereq->chain, CESA_SA_CFG_SRAM_OFFSET,
chain             377 drivers/crypto/marvell/cipher.c 	basereq->chain.last->flags |= CESA_TDMA_END_OF_REQ;
chain             404 drivers/crypto/marvell/cipher.c 	basereq->chain.first = NULL;
chain             405 drivers/crypto/marvell/cipher.c 	basereq->chain.last = NULL;
chain             286 drivers/crypto/marvell/hash.c 	if (base->chain.first->flags & CESA_TDMA_SET_STATE) {
chain             332 drivers/crypto/marvell/hash.c 	    (creq->base.chain.last->flags & CESA_TDMA_TYPE_MSK) == CESA_TDMA_RESULT) {
chain             339 drivers/crypto/marvell/hash.c 		data = creq->base.chain.last->op->ctx.hash.hash;
chain             459 drivers/crypto/marvell/hash.c mv_cesa_dma_add_frag(struct mv_cesa_tdma_chain *chain,
chain             466 drivers/crypto/marvell/hash.c 	op = mv_cesa_dma_add_op(chain, tmpl, false, flags);
chain             474 drivers/crypto/marvell/hash.c 	ret = mv_cesa_dma_add_dummy_launch(chain, flags);
chain             487 drivers/crypto/marvell/hash.c mv_cesa_ahash_dma_add_cache(struct mv_cesa_tdma_chain *chain,
chain             503 drivers/crypto/marvell/hash.c 	return mv_cesa_dma_add_data_transfer(chain,
chain             512 drivers/crypto/marvell/hash.c mv_cesa_ahash_dma_last_req(struct mv_cesa_tdma_chain *chain,
chain             527 drivers/crypto/marvell/hash.c 		op = mv_cesa_dma_add_frag(chain, &creq->op_tmpl, frag_len,
chain             538 drivers/crypto/marvell/hash.c 		ret = mv_cesa_dma_add_result_op(chain,
chain             560 drivers/crypto/marvell/hash.c 		ret = mv_cesa_dma_add_data_transfer(chain,
chain             569 drivers/crypto/marvell/hash.c 		op = mv_cesa_dma_add_frag(chain, &creq->op_tmpl, frag_len + len,
chain             580 drivers/crypto/marvell/hash.c 	ret = mv_cesa_dma_add_data_transfer(chain,
chain             590 drivers/crypto/marvell/hash.c 	return mv_cesa_dma_add_frag(chain, &creq->op_tmpl, trailerlen - padoff,
chain             607 drivers/crypto/marvell/hash.c 	basereq->chain.first = NULL;
chain             608 drivers/crypto/marvell/hash.c 	basereq->chain.last = NULL;
chain             622 drivers/crypto/marvell/hash.c 	mv_cesa_tdma_desc_iter_init(&basereq->chain);
chain             629 drivers/crypto/marvell/hash.c 	ret = mv_cesa_ahash_dma_add_cache(&basereq->chain, creq, flags);
chain             640 drivers/crypto/marvell/hash.c 			ret = mv_cesa_dma_add_op_transfers(&basereq->chain,
chain             651 drivers/crypto/marvell/hash.c 			op = mv_cesa_dma_add_frag(&basereq->chain, &creq->op_tmpl,
chain             669 drivers/crypto/marvell/hash.c 		op = mv_cesa_ahash_dma_last_req(&basereq->chain, &iter, creq,
chain             672 drivers/crypto/marvell/hash.c 		op = mv_cesa_dma_add_frag(&basereq->chain, &creq->op_tmpl,
chain             686 drivers/crypto/marvell/hash.c 	type = basereq->chain.last->flags & CESA_TDMA_TYPE_MSK;
chain             690 drivers/crypto/marvell/hash.c 		ret = mv_cesa_dma_add_dummy_end(&basereq->chain, flags);
chain             701 drivers/crypto/marvell/hash.c 	basereq->chain.last->flags |= CESA_TDMA_END_OF_REQ;
chain             704 drivers/crypto/marvell/hash.c 		basereq->chain.last->flags |= CESA_TDMA_BREAK_CHAIN;
chain             712 drivers/crypto/marvell/hash.c 		basereq->chain.first->flags |= CESA_TDMA_SET_STATE;
chain              51 drivers/crypto/marvell/tdma.c 	writel_relaxed(dreq->chain.first->cur_dma,
chain              62 drivers/crypto/marvell/tdma.c 	for (tdma = dreq->chain.first; tdma;) {
chain              75 drivers/crypto/marvell/tdma.c 	dreq->chain.first = NULL;
chain              76 drivers/crypto/marvell/tdma.c 	dreq->chain.last = NULL;
chain              84 drivers/crypto/marvell/tdma.c 	for (tdma = dreq->chain.first; tdma; tdma = tdma->next) {
chain              99 drivers/crypto/marvell/tdma.c 	if (engine->chain.first == NULL && engine->chain.last == NULL) {
chain             100 drivers/crypto/marvell/tdma.c 		engine->chain.first = dreq->chain.first;
chain             101 drivers/crypto/marvell/tdma.c 		engine->chain.last  = dreq->chain.last;
chain             105 drivers/crypto/marvell/tdma.c 		last = engine->chain.last;
chain             106 drivers/crypto/marvell/tdma.c 		last->next = dreq->chain.first;
chain             107 drivers/crypto/marvell/tdma.c 		engine->chain.last = dreq->chain.last;
chain             116 drivers/crypto/marvell/tdma.c 		    !(dreq->chain.first->flags & CESA_TDMA_SET_STATE))
chain             117 drivers/crypto/marvell/tdma.c 			last->next_dma = dreq->chain.first->cur_dma;
chain             130 drivers/crypto/marvell/tdma.c 	for (tdma = engine->chain.first; tdma; tdma = next) {
chain             152 drivers/crypto/marvell/tdma.c 			engine->chain.first = tdma->next;
chain             156 drivers/crypto/marvell/tdma.c 			if (engine->chain.first == NULL)
chain             157 drivers/crypto/marvell/tdma.c 				engine->chain.last  = NULL;
chain             190 drivers/crypto/marvell/tdma.c mv_cesa_dma_add_desc(struct mv_cesa_tdma_chain *chain, gfp_t flags)
chain             201 drivers/crypto/marvell/tdma.c 	if (chain->last) {
chain             202 drivers/crypto/marvell/tdma.c 		chain->last->next_dma = cpu_to_le32(dma_handle);
chain             203 drivers/crypto/marvell/tdma.c 		chain->last->next = new_tdma;
chain             205 drivers/crypto/marvell/tdma.c 		chain->first = new_tdma;
chain             208 drivers/crypto/marvell/tdma.c 	chain->last = new_tdma;
chain             213 drivers/crypto/marvell/tdma.c int mv_cesa_dma_add_result_op(struct mv_cesa_tdma_chain *chain, dma_addr_t src,
chain             218 drivers/crypto/marvell/tdma.c 	tdma = mv_cesa_dma_add_desc(chain, gfp_flags);
chain             227 drivers/crypto/marvell/tdma.c 	for (op_desc = chain->first; op_desc; op_desc = op_desc->next) {
chain             247 drivers/crypto/marvell/tdma.c struct mv_cesa_op_ctx *mv_cesa_dma_add_op(struct mv_cesa_tdma_chain *chain,
chain             257 drivers/crypto/marvell/tdma.c 	tdma = mv_cesa_dma_add_desc(chain, flags);
chain             269 drivers/crypto/marvell/tdma.c 	tdma = chain->last;
chain             279 drivers/crypto/marvell/tdma.c int mv_cesa_dma_add_data_transfer(struct mv_cesa_tdma_chain *chain,
chain             285 drivers/crypto/marvell/tdma.c 	tdma = mv_cesa_dma_add_desc(chain, gfp_flags);
chain             299 drivers/crypto/marvell/tdma.c int mv_cesa_dma_add_dummy_launch(struct mv_cesa_tdma_chain *chain, gfp_t flags)
chain             303 drivers/crypto/marvell/tdma.c 	tdma = mv_cesa_dma_add_desc(chain, flags);
chain             307 drivers/crypto/marvell/tdma.c int mv_cesa_dma_add_dummy_end(struct mv_cesa_tdma_chain *chain, gfp_t flags)
chain             311 drivers/crypto/marvell/tdma.c 	tdma = mv_cesa_dma_add_desc(chain, flags);
chain             320 drivers/crypto/marvell/tdma.c int mv_cesa_dma_add_op_transfers(struct mv_cesa_tdma_chain *chain,
chain             342 drivers/crypto/marvell/tdma.c 		ret = mv_cesa_dma_add_data_transfer(chain, dst, src, len,
chain              21 drivers/dma-buf/dma-fence-chain.c static struct dma_fence *dma_fence_chain_get_prev(struct dma_fence_chain *chain)
chain              26 drivers/dma-buf/dma-fence-chain.c 	prev = dma_fence_get_rcu_safe(&chain->prev);
chain              41 drivers/dma-buf/dma-fence-chain.c 	struct dma_fence_chain *chain, *prev_chain;
chain              44 drivers/dma-buf/dma-fence-chain.c 	chain = to_dma_fence_chain(fence);
chain              45 drivers/dma-buf/dma-fence-chain.c 	if (!chain) {
chain              50 drivers/dma-buf/dma-fence-chain.c 	while ((prev = dma_fence_chain_get_prev(chain))) {
chain              65 drivers/dma-buf/dma-fence-chain.c 		tmp = cmpxchg((void **)&chain->prev, (void *)prev, (void *)replacement);
chain              91 drivers/dma-buf/dma-fence-chain.c 	struct dma_fence_chain *chain;
chain              96 drivers/dma-buf/dma-fence-chain.c 	chain = to_dma_fence_chain(*pfence);
chain              97 drivers/dma-buf/dma-fence-chain.c 	if (!chain || chain->base.seqno < seqno)
chain             100 drivers/dma-buf/dma-fence-chain.c 	dma_fence_chain_for_each(*pfence, &chain->base) {
chain             101 drivers/dma-buf/dma-fence-chain.c 		if ((*pfence)->context != chain->base.context ||
chain             105 drivers/dma-buf/dma-fence-chain.c 	dma_fence_put(&chain->base);
chain             123 drivers/dma-buf/dma-fence-chain.c 	struct dma_fence_chain *chain;
chain             125 drivers/dma-buf/dma-fence-chain.c 	chain = container_of(work, typeof(*chain), work);
chain             128 drivers/dma-buf/dma-fence-chain.c 	if (!dma_fence_chain_enable_signaling(&chain->base))
chain             130 drivers/dma-buf/dma-fence-chain.c 		dma_fence_signal(&chain->base);
chain             131 drivers/dma-buf/dma-fence-chain.c 	dma_fence_put(&chain->base);
chain             136 drivers/dma-buf/dma-fence-chain.c 	struct dma_fence_chain *chain;
chain             138 drivers/dma-buf/dma-fence-chain.c 	chain = container_of(cb, typeof(*chain), cb);
chain             139 drivers/dma-buf/dma-fence-chain.c 	irq_work_queue(&chain->work);
chain             149 drivers/dma-buf/dma-fence-chain.c 		struct dma_fence_chain *chain = to_dma_fence_chain(fence);
chain             150 drivers/dma-buf/dma-fence-chain.c 		struct dma_fence *f = chain ? chain->fence : fence;
chain             166 drivers/dma-buf/dma-fence-chain.c 		struct dma_fence_chain *chain = to_dma_fence_chain(fence);
chain             167 drivers/dma-buf/dma-fence-chain.c 		struct dma_fence *f = chain ? chain->fence : fence;
chain             180 drivers/dma-buf/dma-fence-chain.c 	struct dma_fence_chain *chain = to_dma_fence_chain(fence);
chain             186 drivers/dma-buf/dma-fence-chain.c 	while ((prev = rcu_dereference_protected(chain->prev, true))) {
chain             199 drivers/dma-buf/dma-fence-chain.c 		chain->prev = prev_chain->prev;
chain             205 drivers/dma-buf/dma-fence-chain.c 	dma_fence_put(chain->fence);
chain             228 drivers/dma-buf/dma-fence-chain.c void dma_fence_chain_init(struct dma_fence_chain *chain,
chain             236 drivers/dma-buf/dma-fence-chain.c 	spin_lock_init(&chain->lock);
chain             237 drivers/dma-buf/dma-fence-chain.c 	rcu_assign_pointer(chain->prev, prev);
chain             238 drivers/dma-buf/dma-fence-chain.c 	chain->fence = fence;
chain             239 drivers/dma-buf/dma-fence-chain.c 	chain->prev_seqno = 0;
chain             240 drivers/dma-buf/dma-fence-chain.c 	init_irq_work(&chain->work, dma_fence_chain_irq_work);
chain             245 drivers/dma-buf/dma-fence-chain.c 		chain->prev_seqno = prev->seqno;
chain             253 drivers/dma-buf/dma-fence-chain.c 	dma_fence_init(&chain->base, &dma_fence_chain_ops,
chain             254 drivers/dma-buf/dma-fence-chain.c 		       &chain->lock, context, seqno);
chain              91 drivers/dma/iop-adma.c 	if (desc->chain_node.next == &iop_chan->chain)
chain             116 drivers/dma/iop-adma.c 	list_for_each_entry_safe(iter, _iter, &iop_chan->chain,
chain             173 drivers/dma/iop-adma.c 					&iop_chan->chain, chain_node) {
chain             191 drivers/dma/iop-adma.c 				&iop_chan->chain, chain_node) {
chain             260 drivers/dma/iop-adma.c 	LIST_HEAD(chain);
chain             317 drivers/dma/iop-adma.c 				list_add_tail(&iter->chain_node, &chain);
chain             333 drivers/dma/iop-adma.c 			list_splice(&chain, &alloc_tail->tx_list);
chain             376 drivers/dma/iop-adma.c 	old_chain_tail = list_entry(iop_chan->chain.prev,
chain             723 drivers/dma/iop-adma.c 	list_for_each_entry_safe(iter, _iter, &iop_chan->chain,
chain            1378 drivers/dma/iop-adma.c 	INIT_LIST_HEAD(&iop_chan->chain);
chain            1449 drivers/dma/iop-adma.c 		list_splice_init(&sw_desc->tx_list, &iop_chan->chain);
chain            1501 drivers/dma/iop-adma.c 		list_splice_init(&sw_desc->tx_list, &iop_chan->chain);
chain             280 drivers/dma/mv_xor.c 	list_for_each_entry_safe(iter, _iter, &mv_chan->chain,
chain             305 drivers/dma/mv_xor.c 	if ((busy == 0) && !list_empty(&mv_chan->chain)) {
chain             311 drivers/dma/mv_xor.c 			iter = list_entry(mv_chan->chain.next,
chain             316 drivers/dma/mv_xor.c 			if (!list_is_last(&iter->node, &mv_chan->chain)) {
chain             397 drivers/dma/mv_xor.c 	if (list_empty(&mv_chan->chain))
chain             398 drivers/dma/mv_xor.c 		list_move_tail(&sw_desc->node, &mv_chan->chain);
chain             402 drivers/dma/mv_xor.c 		old_chain_tail = list_entry(mv_chan->chain.prev,
chain             405 drivers/dma/mv_xor.c 		list_move_tail(&sw_desc->node, &mv_chan->chain);
chain             637 drivers/dma/mv_xor.c 	list_for_each_entry_safe(iter, _iter, &mv_chan->chain,
chain            1119 drivers/dma/mv_xor.c 	INIT_LIST_HEAD(&mv_chan->chain);
chain             111 drivers/dma/mv_xor.h 	struct list_head	chain;
chain             947 drivers/dma/ppc4xx/adma.c 				list_for_each_entry(iter, &chan->chain,
chain             956 drivers/dma/ppc4xx/adma.c 				BUG_ON(&iter->chain_node == &chan->chain);
chain            1127 drivers/dma/ppc4xx/adma.c 		list_for_each_entry_continue(iter, &chan->chain, chain_node) {
chain            1501 drivers/dma/ppc4xx/adma.c 	if (list_is_last(&desc->chain_node, &chan->chain) ||
chain            1556 drivers/dma/ppc4xx/adma.c 	list_for_each_entry_safe(iter, _iter, &chan->chain,
chain            1613 drivers/dma/ppc4xx/adma.c 				&chan->chain, chain_node) {
chain            1691 drivers/dma/ppc4xx/adma.c 	struct list_head chain = LIST_HEAD_INIT(chain);
chain            1732 drivers/dma/ppc4xx/adma.c 				list_add_tail(&iter->chain_node, &chain);
chain            1750 drivers/dma/ppc4xx/adma.c 			list_splice(&chain, &alloc_tail->group_list);
chain            1915 drivers/dma/ppc4xx/adma.c 	if (unlikely(list_empty(&chan->chain))) {
chain            1917 drivers/dma/ppc4xx/adma.c 		list_splice_init(&sw_desc->group_list, &chan->chain);
chain            1921 drivers/dma/ppc4xx/adma.c 		old_chain_tail = list_entry(chan->chain.prev,
chain            3545 drivers/dma/ppc4xx/adma.c 	list_for_each_entry_safe(iter, _iter, &ppc440spe_chan->chain,
chain            3670 drivers/dma/ppc4xx/adma.c 		list_splice_init(&sw_desc->group_list, &chan->chain);
chain            4138 drivers/dma/ppc4xx/adma.c 	INIT_LIST_HEAD(&chan->chain);
chain              96 drivers/dma/ppc4xx/adma.h 	struct list_head chain;
chain              92 drivers/dma/sirf-dma.c 	bool            chain;          /* is chain DMA? */
chain             165 drivers/dma/sirf-dma.c 	if (sdesc->chain) {
chain             168 drivers/dma/sirf-dma.c 			       (sdesc->chain <<
chain             180 drivers/dma/sirf-dma.c 			       (sdesc->chain <<
chain             184 drivers/dma/sirf-dma.c 	writel_relaxed(sdesc->chain ? SIRFSOC_DMA_INT_END_INT_ATLAS7 :
chain             270 drivers/dma/sirf-dma.c 	bool chain;
chain             309 drivers/dma/sirf-dma.c 			chain = sdesc->chain;
chain             310 drivers/dma/sirf-dma.c 			if ((chain && (is & SIRFSOC_DMA_INT_END_INT_ATLAS7)) ||
chain             311 drivers/dma/sirf-dma.c 				(!chain &&
chain             538 drivers/dma/txx9dmac.c 	dma_addr_t chain;
chain             544 drivers/dma/txx9dmac.c 		chain = channel64_read_CHAR(dc);
chain             548 drivers/dma/txx9dmac.c 		chain = channel32_readl(dc, CHAR);
chain             559 drivers/dma/txx9dmac.c 		chain = 0;	/* last descriptor of this chain */
chain             562 drivers/dma/txx9dmac.c 		 (u64)chain);
chain             565 drivers/dma/txx9dmac.c 		if (desc_read_CHAR(dc, desc) == chain) {
chain             573 drivers/dma/txx9dmac.c 			if (desc_read_CHAR(dc, child) == chain) {
chain             452 drivers/gpu/drm/amd/amdgpu/amdgpu.h 	struct dma_fence_chain *chain;
chain             759 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		kfree(parser->post_deps[i].chain);
chain            1158 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		p->post_deps[i].chain = NULL;
chain            1191 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		dep->chain = NULL;
chain            1193 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 			dep->chain = kmalloc(sizeof(*dep->chain), GFP_KERNEL);
chain            1194 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 			if (!dep->chain)
chain            1201 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 			kfree(dep->chain);
chain            1259 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 		if (p->post_deps[i].chain && p->post_deps[i].point) {
chain            1261 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 					      p->post_deps[i].chain,
chain            1263 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c 			p->post_deps[i].chain = NULL;
chain             114 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v10.c 			uint64_t ib, size_t ib_size_in_dwords, bool chain)
chain             141 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v10.c 	packet->bitfields4.chain = chain ? 1 : 0;
chain             110 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c 			uint64_t ib, size_t ib_size_in_dwords, bool chain)
chain             136 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c 	packet->bitfields4.chain = chain ? 1 : 0;
chain             138 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c 	packet->bitfields4.chained_runlist_idle_disable = chain ? 1 : 0;
chain             116 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_vi.c 			uint64_t ib, size_t ib_size_in_dwords, bool chain)
chain             144 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_vi.c 	packet->bitfields4.chain = chain ? 1 : 0;
chain             121 drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_ai.h 			uint32_t chain:1;
chain             127 drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_vi.h 			uint32_t chain:1;
chain             948 drivers/gpu/drm/amd/amdkfd/kfd_priv.h 			uint64_t ib, size_t ib_size_in_dwords, bool chain);
chain             224 drivers/gpu/drm/drm_syncobj.c 			   struct dma_fence_chain *chain,
chain             239 drivers/gpu/drm/drm_syncobj.c 	dma_fence_chain_init(chain, prev, fence, point);
chain             240 drivers/gpu/drm/drm_syncobj.c 	rcu_assign_pointer(syncobj->fence, &chain->base);
chain             769 drivers/gpu/drm/drm_syncobj.c 	struct dma_fence_chain *chain;
chain             781 drivers/gpu/drm/drm_syncobj.c 	chain = kzalloc(sizeof(struct dma_fence_chain), GFP_KERNEL);
chain             782 drivers/gpu/drm/drm_syncobj.c 	if (!chain) {
chain             786 drivers/gpu/drm/drm_syncobj.c 	drm_syncobj_add_point(timeline_syncobj, chain, fence, args->dst_point);
chain            1367 drivers/gpu/drm/drm_syncobj.c 		struct dma_fence_chain *chain;
chain            1372 drivers/gpu/drm/drm_syncobj.c 		chain = to_dma_fence_chain(fence);
chain            1373 drivers/gpu/drm/drm_syncobj.c 		if (chain) {
chain             111 drivers/gpu/drm/i915/gem/i915_gem_clflush.c 		i915_sw_fence_await_reservation(&clflush->base.chain,
chain              12 drivers/gpu/drm/i915/gem/i915_gem_fence.c 	struct i915_sw_fence chain;
chain              18 drivers/gpu/drm/i915/gem/i915_gem_fence.c 	struct stub_fence *stub = container_of(fence, typeof(*stub), chain);
chain              47 drivers/gpu/drm/i915/gem/i915_gem_fence.c 	i915_sw_fence_fini(&stub->chain);
chain              70 drivers/gpu/drm/i915/gem/i915_gem_fence.c 	i915_sw_fence_init(&stub->chain, stub_notify);
chain              71 drivers/gpu/drm/i915/gem/i915_gem_fence.c 	dma_fence_init(&stub->dma, &stub_fence_ops, &stub->chain.wait.lock,
chain              74 drivers/gpu/drm/i915/gem/i915_gem_fence.c 	if (i915_sw_fence_await_reservation(&stub->chain,
chain              94 drivers/gpu/drm/i915/gem/i915_gem_fence.c 	i915_sw_fence_commit(&stub->chain);
chain              24 drivers/gpu/drm/i915/i915_sw_fence_work.c 	struct dma_fence_work *f = container_of(fence, typeof(*f), chain);
chain              66 drivers/gpu/drm/i915/i915_sw_fence_work.c 	i915_sw_fence_fini(&f->chain);
chain              83 drivers/gpu/drm/i915/i915_sw_fence_work.c 	i915_sw_fence_init(&f->chain, fence_notify);
chain              94 drivers/gpu/drm/i915/i915_sw_fence_work.c 	return __i915_sw_fence_await_dma_fence(&f->chain, signal, &f->cb);
chain              28 drivers/gpu/drm/i915/i915_sw_fence_work.h 	struct i915_sw_fence chain;
chain              41 drivers/gpu/drm/i915/i915_sw_fence_work.h 	i915_sw_fence_commit(&f->chain);
chain             289 drivers/infiniband/core/uverbs_uapi.c 			rc = uapi_merge_def(uapi, ibdev, def->chain, is_driver);
chain             198 drivers/media/platform/vsp1/vsp1_dl.c 	struct list_head chain;
chain             617 drivers/media/platform/vsp1/vsp1_dl.c 		INIT_LIST_HEAD(&dl->chain);
chain             638 drivers/media/platform/vsp1/vsp1_dl.c 		list_for_each_entry(dl_next, &dl->chain, chain)
chain             737 drivers/media/platform/vsp1/vsp1_dl.c 	list_add_tail(&dl->chain, &head->chain);
chain             801 drivers/media/platform/vsp1/vsp1_dl.c 		struct vsp1_dl_list *next = list_next_entry(dl, chain);
chain             922 drivers/media/platform/vsp1/vsp1_dl.c 	vsp1_dl_list_fill_header(dl, list_empty(&dl->chain));
chain             924 drivers/media/platform/vsp1/vsp1_dl.c 	list_for_each_entry(dl_next, &dl->chain, chain) {
chain             925 drivers/media/platform/vsp1/vsp1_dl.c 		bool last = list_is_last(&dl_next->chain, &dl->chain);
chain             888 drivers/media/usb/uvc/uvc_ctrl.c static struct uvc_control *uvc_find_control(struct uvc_video_chain *chain,
chain             901 drivers/media/usb/uvc/uvc_ctrl.c 	list_for_each_entry(entity, &chain->entities, chain) {
chain             914 drivers/media/usb/uvc/uvc_ctrl.c static int uvc_ctrl_populate_cache(struct uvc_video_chain *chain,
chain             920 drivers/media/usb/uvc/uvc_ctrl.c 		ret = uvc_query_ctrl(chain->dev, UVC_GET_DEF, ctrl->entity->id,
chain             921 drivers/media/usb/uvc/uvc_ctrl.c 				     chain->dev->intfnum, ctrl->info.selector,
chain             929 drivers/media/usb/uvc/uvc_ctrl.c 		ret = uvc_query_ctrl(chain->dev, UVC_GET_MIN, ctrl->entity->id,
chain             930 drivers/media/usb/uvc/uvc_ctrl.c 				     chain->dev->intfnum, ctrl->info.selector,
chain             937 drivers/media/usb/uvc/uvc_ctrl.c 		ret = uvc_query_ctrl(chain->dev, UVC_GET_MAX, ctrl->entity->id,
chain             938 drivers/media/usb/uvc/uvc_ctrl.c 				     chain->dev->intfnum, ctrl->info.selector,
chain             945 drivers/media/usb/uvc/uvc_ctrl.c 		ret = uvc_query_ctrl(chain->dev, UVC_GET_RES, ctrl->entity->id,
chain             946 drivers/media/usb/uvc/uvc_ctrl.c 				     chain->dev->intfnum, ctrl->info.selector,
chain             958 drivers/media/usb/uvc/uvc_ctrl.c 			uvc_warn_once(chain->dev, UVC_WARN_XU_GET_RES,
chain             990 drivers/media/usb/uvc/uvc_ctrl.c static int __uvc_ctrl_get(struct uvc_video_chain *chain,
chain            1000 drivers/media/usb/uvc/uvc_ctrl.c 		ret = uvc_query_ctrl(chain->dev, UVC_GET_CUR, ctrl->entity->id,
chain            1001 drivers/media/usb/uvc/uvc_ctrl.c 				chain->dev->intfnum, ctrl->info.selector,
chain            1016 drivers/media/usb/uvc/uvc_ctrl.c static int __uvc_query_v4l2_ctrl(struct uvc_video_chain *chain,
chain            1042 drivers/media/usb/uvc/uvc_ctrl.c 		int ret = __uvc_ctrl_get(chain, master_ctrl, master_map, &val);
chain            1051 drivers/media/usb/uvc/uvc_ctrl.c 		int ret = uvc_ctrl_populate_cache(chain, ctrl);
chain            1108 drivers/media/usb/uvc/uvc_ctrl.c int uvc_query_v4l2_ctrl(struct uvc_video_chain *chain,
chain            1115 drivers/media/usb/uvc/uvc_ctrl.c 	ret = mutex_lock_interruptible(&chain->ctrl_mutex);
chain            1119 drivers/media/usb/uvc/uvc_ctrl.c 	ctrl = uvc_find_control(chain, v4l2_ctrl->id, &mapping);
chain            1125 drivers/media/usb/uvc/uvc_ctrl.c 	ret = __uvc_query_v4l2_ctrl(chain, ctrl, mapping, v4l2_ctrl);
chain            1127 drivers/media/usb/uvc/uvc_ctrl.c 	mutex_unlock(&chain->ctrl_mutex);
chain            1140 drivers/media/usb/uvc/uvc_ctrl.c int uvc_query_v4l2_menu(struct uvc_video_chain *chain,
chain            1154 drivers/media/usb/uvc/uvc_ctrl.c 	ret = mutex_lock_interruptible(&chain->ctrl_mutex);
chain            1158 drivers/media/usb/uvc/uvc_ctrl.c 	ctrl = uvc_find_control(chain, query_menu->id, &mapping);
chain            1176 drivers/media/usb/uvc/uvc_ctrl.c 			ret = uvc_ctrl_populate_cache(chain, ctrl);
chain            1192 drivers/media/usb/uvc/uvc_ctrl.c 	mutex_unlock(&chain->ctrl_mutex);
chain            1200 drivers/media/usb/uvc/uvc_ctrl.c static void uvc_ctrl_fill_event(struct uvc_video_chain *chain,
chain            1208 drivers/media/usb/uvc/uvc_ctrl.c 	__uvc_query_v4l2_ctrl(chain, ctrl, mapping, &v4l2_ctrl);
chain            1230 drivers/media/usb/uvc/uvc_ctrl.c static void uvc_ctrl_send_event(struct uvc_video_chain *chain,
chain            1241 drivers/media/usb/uvc/uvc_ctrl.c 	uvc_ctrl_fill_event(chain, &ev, ctrl, mapping, value, changes);
chain            1256 drivers/media/usb/uvc/uvc_ctrl.c static void uvc_ctrl_send_slave_event(struct uvc_video_chain *chain,
chain            1268 drivers/media/usb/uvc/uvc_ctrl.c 	if (__uvc_ctrl_get(chain, ctrl, mapping, &val) == 0)
chain            1271 drivers/media/usb/uvc/uvc_ctrl.c 	uvc_ctrl_send_event(chain, handle, ctrl, mapping, val, changes);
chain            1279 drivers/media/usb/uvc/uvc_ctrl.c 	struct uvc_video_chain *chain = w->chain;
chain            1286 drivers/media/usb/uvc/uvc_ctrl.c 	mutex_lock(&chain->ctrl_mutex);
chain            1302 drivers/media/usb/uvc/uvc_ctrl.c 			uvc_ctrl_send_slave_event(chain, handle, ctrl,
chain            1306 drivers/media/usb/uvc/uvc_ctrl.c 		uvc_ctrl_send_event(chain, handle, ctrl, mapping, value,
chain            1310 drivers/media/usb/uvc/uvc_ctrl.c 	mutex_unlock(&chain->ctrl_mutex);
chain            1320 drivers/media/usb/uvc/uvc_ctrl.c bool uvc_ctrl_status_event(struct urb *urb, struct uvc_video_chain *chain,
chain            1323 drivers/media/usb/uvc/uvc_ctrl.c 	struct uvc_device *dev = chain->dev;
chain            1333 drivers/media/usb/uvc/uvc_ctrl.c 	w->chain = chain;
chain            1364 drivers/media/usb/uvc/uvc_ctrl.c 		ctrl = uvc_find_control(handle->chain, xctrls[i].id, &mapping);
chain            1384 drivers/media/usb/uvc/uvc_ctrl.c 			uvc_ctrl_send_slave_event(handle->chain, handle, ctrl,
chain            1397 drivers/media/usb/uvc/uvc_ctrl.c 		uvc_ctrl_send_event(handle->chain, handle, ctrl, mapping,
chain            1409 drivers/media/usb/uvc/uvc_ctrl.c 	ret = mutex_lock_interruptible(&handle->chain->ctrl_mutex);
chain            1413 drivers/media/usb/uvc/uvc_ctrl.c 	ctrl = uvc_find_control(handle->chain, sev->id, &mapping);
chain            1425 drivers/media/usb/uvc/uvc_ctrl.c 		if (__uvc_ctrl_get(handle->chain, ctrl, mapping, &val) == 0)
chain            1428 drivers/media/usb/uvc/uvc_ctrl.c 		uvc_ctrl_fill_event(handle->chain, &ev, ctrl, mapping, val,
chain            1437 drivers/media/usb/uvc/uvc_ctrl.c 	mutex_unlock(&handle->chain->ctrl_mutex);
chain            1445 drivers/media/usb/uvc/uvc_ctrl.c 	mutex_lock(&handle->chain->ctrl_mutex);
chain            1447 drivers/media/usb/uvc/uvc_ctrl.c 	mutex_unlock(&handle->chain->ctrl_mutex);
chain            1481 drivers/media/usb/uvc/uvc_ctrl.c int uvc_ctrl_begin(struct uvc_video_chain *chain)
chain            1483 drivers/media/usb/uvc/uvc_ctrl.c 	return mutex_lock_interruptible(&chain->ctrl_mutex) ? -ERESTARTSYS : 0;
chain            1540 drivers/media/usb/uvc/uvc_ctrl.c 	struct uvc_video_chain *chain = handle->chain;
chain            1545 drivers/media/usb/uvc/uvc_ctrl.c 	list_for_each_entry(entity, &chain->entities, chain) {
chain            1546 drivers/media/usb/uvc/uvc_ctrl.c 		ret = uvc_ctrl_commit_entity(chain->dev, entity, rollback);
chain            1554 drivers/media/usb/uvc/uvc_ctrl.c 	mutex_unlock(&chain->ctrl_mutex);
chain            1558 drivers/media/usb/uvc/uvc_ctrl.c int uvc_ctrl_get(struct uvc_video_chain *chain,
chain            1564 drivers/media/usb/uvc/uvc_ctrl.c 	ctrl = uvc_find_control(chain, xctrl->id, &mapping);
chain            1568 drivers/media/usb/uvc/uvc_ctrl.c 	return __uvc_ctrl_get(chain, ctrl, mapping, &xctrl->value);
chain            1574 drivers/media/usb/uvc/uvc_ctrl.c 	struct uvc_video_chain *chain = handle->chain;
chain            1583 drivers/media/usb/uvc/uvc_ctrl.c 	ctrl = uvc_find_control(chain, xctrl->id, &mapping);
chain            1593 drivers/media/usb/uvc/uvc_ctrl.c 			ret = uvc_ctrl_populate_cache(chain, ctrl);
chain            1632 drivers/media/usb/uvc/uvc_ctrl.c 				ret = uvc_ctrl_populate_cache(chain, ctrl);
chain            1659 drivers/media/usb/uvc/uvc_ctrl.c 			ret = uvc_query_ctrl(chain->dev, UVC_GET_CUR,
chain            1660 drivers/media/usb/uvc/uvc_ctrl.c 				ctrl->entity->id, chain->dev->intfnum,
chain            1842 drivers/media/usb/uvc/uvc_ctrl.c int uvc_xu_ctrl_query(struct uvc_video_chain *chain,
chain            1854 drivers/media/usb/uvc/uvc_ctrl.c 	list_for_each_entry(entity, &chain->entities, chain) {
chain            1881 drivers/media/usb/uvc/uvc_ctrl.c 	if (mutex_lock_interruptible(&chain->ctrl_mutex))
chain            1884 drivers/media/usb/uvc/uvc_ctrl.c 	ret = uvc_ctrl_init_xu_ctrl(chain->dev, ctrl);
chain            1946 drivers/media/usb/uvc/uvc_ctrl.c 	ret = uvc_query_ctrl(chain->dev, xqry->query, xqry->unit,
chain            1947 drivers/media/usb/uvc/uvc_ctrl.c 			     chain->dev->intfnum, xqry->selector, data, size);
chain            1956 drivers/media/usb/uvc/uvc_ctrl.c 	mutex_unlock(&chain->ctrl_mutex);
chain            2085 drivers/media/usb/uvc/uvc_ctrl.c int uvc_ctrl_add_mapping(struct uvc_video_chain *chain,
chain            2088 drivers/media/usb/uvc/uvc_ctrl.c 	struct uvc_device *dev = chain->dev;
chain            2103 drivers/media/usb/uvc/uvc_ctrl.c 	list_for_each_entry(entity, &chain->entities, chain) {
chain            2124 drivers/media/usb/uvc/uvc_ctrl.c 	if (mutex_lock_interruptible(&chain->ctrl_mutex))
chain            2166 drivers/media/usb/uvc/uvc_ctrl.c 	mutex_unlock(&chain->ctrl_mutex);
chain            1412 drivers/media/usb/uvc/uvc_driver.c static int uvc_scan_chain_entity(struct uvc_video_chain *chain,
chain            1432 drivers/media/usb/uvc/uvc_driver.c 		if (chain->processing != NULL) {
chain            1438 drivers/media/usb/uvc/uvc_driver.c 		chain->processing = entity;
chain            1449 drivers/media/usb/uvc/uvc_driver.c 		if (chain->selector != NULL) {
chain            1455 drivers/media/usb/uvc/uvc_driver.c 		chain->selector = entity;
chain            1491 drivers/media/usb/uvc/uvc_driver.c 	list_add_tail(&entity->chain, &chain->entities);
chain            1495 drivers/media/usb/uvc/uvc_driver.c static int uvc_scan_chain_forward(struct uvc_video_chain *chain,
chain            1506 drivers/media/usb/uvc/uvc_driver.c 		forward = uvc_entity_by_reference(chain->dev, entity->id,
chain            1512 drivers/media/usb/uvc/uvc_driver.c 		if (forward->chain.next || forward->chain.prev) {
chain            1527 drivers/media/usb/uvc/uvc_driver.c 			list_add_tail(&forward->chain, &chain->entities);
chain            1547 drivers/media/usb/uvc/uvc_driver.c 			list_add_tail(&forward->chain, &chain->entities);
chain            1564 drivers/media/usb/uvc/uvc_driver.c static int uvc_scan_chain_backward(struct uvc_video_chain *chain,
chain            1587 drivers/media/usb/uvc/uvc_driver.c 		chain->selector = entity;
chain            1590 drivers/media/usb/uvc/uvc_driver.c 			term = uvc_entity_by_id(chain->dev, id);
chain            1598 drivers/media/usb/uvc/uvc_driver.c 			if (term->chain.next || term->chain.prev) {
chain            1608 drivers/media/usb/uvc/uvc_driver.c 			list_add_tail(&term->chain, &chain->entities);
chain            1609 drivers/media/usb/uvc/uvc_driver.c 			uvc_scan_chain_forward(chain, term, entity);
chain            1634 drivers/media/usb/uvc/uvc_driver.c 	entity = uvc_entity_by_id(chain->dev, id);
chain            1645 drivers/media/usb/uvc/uvc_driver.c static int uvc_scan_chain(struct uvc_video_chain *chain,
chain            1657 drivers/media/usb/uvc/uvc_driver.c 		if (entity->chain.next || entity->chain.prev) {
chain            1664 drivers/media/usb/uvc/uvc_driver.c 		if (uvc_scan_chain_entity(chain, entity) < 0)
chain            1668 drivers/media/usb/uvc/uvc_driver.c 		if (uvc_scan_chain_forward(chain, entity, prev) < 0)
chain            1673 drivers/media/usb/uvc/uvc_driver.c 		if (uvc_scan_chain_backward(chain, &entity) < 0)
chain            1687 drivers/media/usb/uvc/uvc_driver.c 	list_for_each_entry(term, terms, chain) {
chain            1704 drivers/media/usb/uvc/uvc_driver.c static const char *uvc_print_chain(struct uvc_video_chain *chain)
chain            1709 drivers/media/usb/uvc/uvc_driver.c 	p += uvc_print_terms(&chain->entities, UVC_TERM_INPUT, p);
chain            1711 drivers/media/usb/uvc/uvc_driver.c 	uvc_print_terms(&chain->entities, UVC_TERM_OUTPUT, p);
chain            1718 drivers/media/usb/uvc/uvc_driver.c 	struct uvc_video_chain *chain;
chain            1720 drivers/media/usb/uvc/uvc_driver.c 	chain = kzalloc(sizeof(*chain), GFP_KERNEL);
chain            1721 drivers/media/usb/uvc/uvc_driver.c 	if (chain == NULL)
chain            1724 drivers/media/usb/uvc/uvc_driver.c 	INIT_LIST_HEAD(&chain->entities);
chain            1725 drivers/media/usb/uvc/uvc_driver.c 	mutex_init(&chain->ctrl_mutex);
chain            1726 drivers/media/usb/uvc/uvc_driver.c 	chain->dev = dev;
chain            1727 drivers/media/usb/uvc/uvc_driver.c 	v4l2_prio_init(&chain->prio);
chain            1729 drivers/media/usb/uvc/uvc_driver.c 	return chain;
chain            1747 drivers/media/usb/uvc/uvc_driver.c 	struct uvc_video_chain *chain;
chain            1775 drivers/media/usb/uvc/uvc_driver.c 	chain = uvc_alloc_chain(dev);
chain            1776 drivers/media/usb/uvc/uvc_driver.c 	if (chain == NULL)
chain            1779 drivers/media/usb/uvc/uvc_driver.c 	if (uvc_scan_chain_entity(chain, oterm) < 0)
chain            1799 drivers/media/usb/uvc/uvc_driver.c 		if (uvc_scan_chain_entity(chain, entity) < 0)
chain            1806 drivers/media/usb/uvc/uvc_driver.c 	if (uvc_scan_chain_entity(chain, iterm) < 0)
chain            1811 drivers/media/usb/uvc/uvc_driver.c 	list_add_tail(&chain->list, &dev->chains);
chain            1815 drivers/media/usb/uvc/uvc_driver.c 		  uvc_print_chain(chain));
chain            1820 drivers/media/usb/uvc/uvc_driver.c 	kfree(chain);
chain            1831 drivers/media/usb/uvc/uvc_driver.c 	struct uvc_video_chain *chain;
chain            1843 drivers/media/usb/uvc/uvc_driver.c 		if (term->chain.next || term->chain.prev)
chain            1846 drivers/media/usb/uvc/uvc_driver.c 		chain = uvc_alloc_chain(dev);
chain            1847 drivers/media/usb/uvc/uvc_driver.c 		if (chain == NULL)
chain            1852 drivers/media/usb/uvc/uvc_driver.c 		if (uvc_scan_chain(chain, term) < 0) {
chain            1853 drivers/media/usb/uvc/uvc_driver.c 			kfree(chain);
chain            1858 drivers/media/usb/uvc/uvc_driver.c 			  uvc_print_chain(chain));
chain            1860 drivers/media/usb/uvc/uvc_driver.c 		list_add_tail(&chain->list, &dev->chains);
chain            1904 drivers/media/usb/uvc/uvc_driver.c 		struct uvc_video_chain *chain;
chain            1905 drivers/media/usb/uvc/uvc_driver.c 		chain = list_entry(p, struct uvc_video_chain, list);
chain            1906 drivers/media/usb/uvc/uvc_driver.c 		kfree(chain);
chain            1990 drivers/media/usb/uvc/uvc_driver.c 	vdev->prio = &stream->chain->prio;
chain            2042 drivers/media/usb/uvc/uvc_driver.c 		stream->chain->caps |= V4L2_CAP_VIDEO_CAPTURE
chain            2045 drivers/media/usb/uvc/uvc_driver.c 		stream->chain->caps |= V4L2_CAP_VIDEO_OUTPUT;
chain            2059 drivers/media/usb/uvc/uvc_driver.c 	struct uvc_video_chain *chain)
chain            2065 drivers/media/usb/uvc/uvc_driver.c 	list_for_each_entry(term, &chain->entities, chain) {
chain            2076 drivers/media/usb/uvc/uvc_driver.c 		stream->chain = chain;
chain            2094 drivers/media/usb/uvc/uvc_driver.c 	struct uvc_video_chain *chain;
chain            2097 drivers/media/usb/uvc/uvc_driver.c 	list_for_each_entry(chain, &dev->chains, list) {
chain            2098 drivers/media/usb/uvc/uvc_driver.c 		ret = uvc_register_terms(dev, chain);
chain            2103 drivers/media/usb/uvc/uvc_driver.c 		ret = uvc_mc_register_entities(chain);
chain              17 drivers/media/usb/uvc/uvc_entity.c static int uvc_mc_create_links(struct uvc_video_chain *chain,
chain              39 drivers/media/usb/uvc/uvc_entity.c 		remote = uvc_entity_by_id(chain->dev, entity->baSourceID[i]);
chain              70 drivers/media/usb/uvc/uvc_entity.c static int uvc_mc_init_entity(struct uvc_video_chain *chain,
chain              86 drivers/media/usb/uvc/uvc_entity.c 		ret = v4l2_device_register_subdev(&chain->dev->vdev,
chain              99 drivers/media/usb/uvc/uvc_entity.c int uvc_mc_register_entities(struct uvc_video_chain *chain)
chain             104 drivers/media/usb/uvc/uvc_entity.c 	list_for_each_entry(entity, &chain->entities, chain) {
chain             105 drivers/media/usb/uvc/uvc_entity.c 		ret = uvc_mc_init_entity(chain, entity);
chain             113 drivers/media/usb/uvc/uvc_entity.c 	list_for_each_entry(entity, &chain->entities, chain) {
chain             114 drivers/media/usb/uvc/uvc_entity.c 		ret = uvc_mc_create_links(chain, entity);
chain              30 drivers/media/usb/uvc/uvc_metadata.c 	struct uvc_video_chain *chain = stream->chain;
chain              36 drivers/media/usb/uvc/uvc_metadata.c 			  | chain->caps;
chain             136 drivers/media/usb/uvc/uvc_status.c 					struct uvc_video_chain **chain)
chain             138 drivers/media/usb/uvc/uvc_status.c 	list_for_each_entry((*chain), &dev->chains, list) {
chain             142 drivers/media/usb/uvc/uvc_status.c 		list_for_each_entry(entity, &(*chain)->entities, chain) {
chain             161 drivers/media/usb/uvc/uvc_status.c 	struct uvc_video_chain *chain;
chain             176 drivers/media/usb/uvc/uvc_status.c 	ctrl = uvc_event_find_ctrl(dev, status, &chain);
chain             182 drivers/media/usb/uvc/uvc_status.c 		return uvc_ctrl_status_event(urb, chain, ctrl, status->bValue);
chain              31 drivers/media/usb/uvc/uvc_v4l2.c static int uvc_ioctl_ctrl_map(struct uvc_video_chain *chain,
chain              84 drivers/media/usb/uvc/uvc_v4l2.c 	ret = uvc_ctrl_add_mapping(chain, map);
chain             544 drivers/media/usb/uvc/uvc_v4l2.c 	handle->chain = stream->chain;
chain             584 drivers/media/usb/uvc/uvc_v4l2.c 	struct uvc_video_chain *chain = handle->chain;
chain             591 drivers/media/usb/uvc/uvc_v4l2.c 			  | chain->caps;
chain             826 drivers/media/usb/uvc/uvc_v4l2.c 	struct uvc_video_chain *chain = handle->chain;
chain             827 drivers/media/usb/uvc/uvc_v4l2.c 	const struct uvc_entity *selector = chain->selector;
chain             833 drivers/media/usb/uvc/uvc_v4l2.c 	    (chain->dev->quirks & UVC_QUIRK_IGNORE_SELECTOR_UNIT)) {
chain             836 drivers/media/usb/uvc/uvc_v4l2.c 		list_for_each_entry(iterm, &chain->entities, chain) {
chain             843 drivers/media/usb/uvc/uvc_v4l2.c 		list_for_each_entry(iterm, &chain->entities, chain) {
chain             866 drivers/media/usb/uvc/uvc_v4l2.c 	struct uvc_video_chain *chain = handle->chain;
chain             870 drivers/media/usb/uvc/uvc_v4l2.c 	if (chain->selector == NULL ||
chain             871 drivers/media/usb/uvc/uvc_v4l2.c 	    (chain->dev->quirks & UVC_QUIRK_IGNORE_SELECTOR_UNIT)) {
chain             876 drivers/media/usb/uvc/uvc_v4l2.c 	ret = uvc_query_ctrl(chain->dev, UVC_GET_CUR, chain->selector->id,
chain             877 drivers/media/usb/uvc/uvc_v4l2.c 			     chain->dev->intfnum,  UVC_SU_INPUT_SELECT_CONTROL,
chain             889 drivers/media/usb/uvc/uvc_v4l2.c 	struct uvc_video_chain *chain = handle->chain;
chain             897 drivers/media/usb/uvc/uvc_v4l2.c 	if (chain->selector == NULL ||
chain             898 drivers/media/usb/uvc/uvc_v4l2.c 	    (chain->dev->quirks & UVC_QUIRK_IGNORE_SELECTOR_UNIT)) {
chain             904 drivers/media/usb/uvc/uvc_v4l2.c 	if (input >= chain->selector->bNrInPins)
chain             908 drivers/media/usb/uvc/uvc_v4l2.c 	return uvc_query_ctrl(chain->dev, UVC_SET_CUR, chain->selector->id,
chain             909 drivers/media/usb/uvc/uvc_v4l2.c 			      chain->dev->intfnum, UVC_SU_INPUT_SELECT_CONTROL,
chain             917 drivers/media/usb/uvc/uvc_v4l2.c 	struct uvc_video_chain *chain = handle->chain;
chain             919 drivers/media/usb/uvc/uvc_v4l2.c 	return uvc_query_v4l2_ctrl(chain, qc);
chain             926 drivers/media/usb/uvc/uvc_v4l2.c 	struct uvc_video_chain *chain = handle->chain;
chain             930 drivers/media/usb/uvc/uvc_v4l2.c 	ret = uvc_query_v4l2_ctrl(chain, &qc);
chain             955 drivers/media/usb/uvc/uvc_v4l2.c 	struct uvc_video_chain *chain = handle->chain;
chain             962 drivers/media/usb/uvc/uvc_v4l2.c 	ret = uvc_ctrl_begin(chain);
chain             966 drivers/media/usb/uvc/uvc_v4l2.c 	ret = uvc_ctrl_get(chain, &xctrl);
chain             979 drivers/media/usb/uvc/uvc_v4l2.c 	struct uvc_video_chain *chain = handle->chain;
chain             987 drivers/media/usb/uvc/uvc_v4l2.c 	ret = uvc_ctrl_begin(chain);
chain            1009 drivers/media/usb/uvc/uvc_v4l2.c 	struct uvc_video_chain *chain = handle->chain;
chain            1018 drivers/media/usb/uvc/uvc_v4l2.c 			ret = uvc_query_v4l2_ctrl(chain, &qc);
chain            1030 drivers/media/usb/uvc/uvc_v4l2.c 	ret = uvc_ctrl_begin(chain);
chain            1035 drivers/media/usb/uvc/uvc_v4l2.c 		ret = uvc_ctrl_get(chain, ctrl);
chain            1053 drivers/media/usb/uvc/uvc_v4l2.c 	struct uvc_video_chain *chain = handle->chain;
chain            1061 drivers/media/usb/uvc/uvc_v4l2.c 	ret = uvc_ctrl_begin(chain);
chain            1102 drivers/media/usb/uvc/uvc_v4l2.c 	struct uvc_video_chain *chain = handle->chain;
chain            1104 drivers/media/usb/uvc/uvc_v4l2.c 	return uvc_query_v4l2_menu(chain, qm);
chain            1280 drivers/media/usb/uvc/uvc_v4l2.c 	struct uvc_video_chain *chain = handle->chain;
chain            1285 drivers/media/usb/uvc/uvc_v4l2.c 		return uvc_ioctl_ctrl_map(chain, arg);
chain            1288 drivers/media/usb/uvc/uvc_v4l2.c 		return uvc_xu_ctrl_query(chain, arg);
chain            1398 drivers/media/usb/uvc/uvc_v4l2.c 		ret = uvc_ioctl_ctrl_map(handle->chain, &karg.xmap);
chain            1411 drivers/media/usb/uvc/uvc_v4l2.c 		ret = uvc_xu_ctrl_query(handle->chain, &karg.xqry);
chain             296 drivers/media/usb/uvc/uvcvideo.h 	struct list_head chain;		/* Entity as part of a video device
chain             539 drivers/media/usb/uvc/uvcvideo.h 	struct uvc_video_chain *chain;
chain             673 drivers/media/usb/uvc/uvcvideo.h 		struct uvc_video_chain *chain;
chain             686 drivers/media/usb/uvc/uvcvideo.h 	struct uvc_video_chain *chain;
chain             789 drivers/media/usb/uvc/uvcvideo.h int uvc_mc_register_entities(struct uvc_video_chain *chain);
chain             825 drivers/media/usb/uvc/uvcvideo.h int uvc_query_v4l2_ctrl(struct uvc_video_chain *chain,
chain             827 drivers/media/usb/uvc/uvcvideo.h int uvc_query_v4l2_menu(struct uvc_video_chain *chain,
chain             830 drivers/media/usb/uvc/uvcvideo.h int uvc_ctrl_add_mapping(struct uvc_video_chain *chain,
chain             835 drivers/media/usb/uvc/uvcvideo.h bool uvc_ctrl_status_event(struct urb *urb, struct uvc_video_chain *chain,
chain             838 drivers/media/usb/uvc/uvcvideo.h int uvc_ctrl_begin(struct uvc_video_chain *chain);
chain             853 drivers/media/usb/uvc/uvcvideo.h int uvc_ctrl_get(struct uvc_video_chain *chain, struct v4l2_ext_control *xctrl);
chain             856 drivers/media/usb/uvc/uvcvideo.h int uvc_xu_ctrl_query(struct uvc_video_chain *chain,
chain            1451 drivers/message/fusion/mptscsih.c 	MPT_FRAME_HDR *chain;
chain            1472 drivers/message/fusion/mptscsih.c 		chain = (MPT_FRAME_HDR *) (ioc->ChainBuffer
chain            1476 drivers/message/fusion/mptscsih.c 		list_add_tail(&chain->u.frame.linkage.list, &ioc->FreeChainQ);
chain             407 drivers/mtd/inftlcore.c 	u16 chain, EUN;
chain             412 drivers/mtd/inftlcore.c 	for (chain = 0; chain < inftl->nb_blocks; chain++) {
chain             413 drivers/mtd/inftlcore.c 		EUN = inftl->VUtable[chain];
chain             422 drivers/mtd/inftlcore.c 					chain, EUN);
chain             434 drivers/mtd/inftlcore.c 			LongestChain = chain;
chain             481 drivers/mtd/nftlcore.c 	u16 chain, EUN;
chain             483 drivers/mtd/nftlcore.c 	for (chain = 0; chain < le32_to_cpu(nftl->MediaHdr.FormattedSize) / nftl->EraseSize; chain++) {
chain             484 drivers/mtd/nftlcore.c 		EUN = nftl->EUNtable[chain];
chain             493 drivers/mtd/nftlcore.c 				       chain, EUN);
chain             506 drivers/mtd/nftlcore.c 			LongestChain = chain;
chain            3194 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 	struct hnae3_ring_chain_node *chain;
chain            3211 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 			chain = devm_kzalloc(&pdev->dev, sizeof(*chain),
chain            3213 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 			if (!chain)
chain            3216 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 			cur_chain->next = chain;
chain            3217 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 			chain->tqp_index = tx_ring->tqp->tqp_index;
chain            3218 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 			hnae3_set_bit(chain->flag, HNAE3_RING_TYPE_B,
chain            3220 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 			hnae3_set_field(chain->int_gl_idx,
chain            3225 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 			cur_chain = chain;
chain            3242 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 		chain = devm_kzalloc(&pdev->dev, sizeof(*chain), GFP_KERNEL);
chain            3243 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 		if (!chain)
chain            3246 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 		cur_chain->next = chain;
chain            3247 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 		chain->tqp_index = rx_ring->tqp->tqp_index;
chain            3248 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 		hnae3_set_bit(chain->flag, HNAE3_RING_TYPE_B,
chain            3250 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 		hnae3_set_field(chain->int_gl_idx, HNAE3_RING_GL_IDX_M,
chain            3253 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 		cur_chain = chain;
chain            3263 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 		chain = cur_chain->next;
chain            3265 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 		cur_chain = chain;
chain            3276 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 	struct hnae3_ring_chain_node *chain_tmp, *chain;
chain            3278 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 	chain = head->next;
chain            3280 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 	while (chain) {
chain            3281 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 		chain_tmp = chain->next;
chain            3282 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 		devm_kfree(&pdev->dev, chain);
chain            3283 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c 		chain = chain_tmp;
chain             111 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c 	struct hnae3_ring_chain_node *chain_tmp, *chain;
chain             113 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c 	chain = head->next;
chain             115 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c 	while (chain) {
chain             116 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c 		chain_tmp = chain->next;
chain             117 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c 		kzfree(chain);
chain             118 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c 		chain = chain_tmp;
chain              49 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c #define MASKED_IDX(chain, idx)          ((idx) & ((chain)->num_cells - 1))
chain              89 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static void set_prod_idx(struct hinic_api_cmd_chain *chain)
chain              91 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	enum hinic_api_cmd_chain_type chain_type = chain->chain_type;
chain              92 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             100 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	prod_idx |= HINIC_API_CMD_PI_SET(chain->prod_idx, IDX);
chain             105 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static u32 get_hw_cons_idx(struct hinic_api_cmd_chain *chain)
chain             109 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	addr = HINIC_CSR_API_CMD_STATUS_ADDR(chain->chain_type);
chain             110 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	val  = hinic_hwif_read_reg(chain->hwif, addr);
chain             121 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static int chain_busy(struct hinic_api_cmd_chain *chain)
chain             123 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             127 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	switch (chain->chain_type) {
chain             129 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		chain->cons_idx = get_hw_cons_idx(chain);
chain             130 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		prod_idx = chain->prod_idx;
chain             133 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		if (chain->cons_idx == MASKED_IDX(chain, prod_idx + 1)) {
chain             135 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 				chain->chain_type);
chain             200 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static void prepare_api_cmd(struct hinic_api_cmd_chain *chain,
chain             204 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_api_cmd_cell *cell = chain->curr_node;
chain             206 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             209 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	cell_ctxt = &chain->cell_ctxt[chain->prod_idx];
chain             211 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	switch (chain->chain_type) {
chain             244 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static void prepare_cell(struct hinic_api_cmd_chain *chain,
chain             248 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_api_cmd_cell *curr_node = chain->curr_node;
chain             249 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	u16 data_size = get_cell_data_size(chain->chain_type);
chain             252 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	prepare_api_cmd(chain, dest, cmd, cmd_size);
chain             255 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static inline void cmd_chain_prod_idx_inc(struct hinic_api_cmd_chain *chain)
chain             257 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	chain->prod_idx = MASKED_IDX(chain, chain->prod_idx + 1);
chain             264 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static void api_cmd_status_update(struct hinic_api_cmd_chain *chain)
chain             268 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             273 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	wb_status = chain->wb_status;
chain             288 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	chain->cons_idx = HINIC_API_CMD_STATUS_GET(status, CONS_IDX);
chain             297 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static int wait_for_status_poll(struct hinic_api_cmd_chain *chain)
chain             304 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		api_cmd_status_update(chain);
chain             307 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		if (chain->cons_idx == chain->prod_idx) {
chain             324 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static int wait_for_api_cmd_completion(struct hinic_api_cmd_chain *chain)
chain             326 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             330 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	switch (chain->chain_type) {
chain             332 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		err = wait_for_status_poll(chain);
chain             357 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static int api_cmd(struct hinic_api_cmd_chain *chain,
chain             363 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	down(&chain->sem);
chain             364 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	if (chain_busy(chain)) {
chain             365 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		up(&chain->sem);
chain             369 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	prepare_cell(chain, dest, cmd, cmd_size);
chain             370 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	cmd_chain_prod_idx_inc(chain);
chain             374 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	set_prod_idx(chain);    /* issue the command */
chain             376 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	ctxt = &chain->cell_ctxt[chain->prod_idx];
chain             378 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	chain->curr_node = ctxt->cell_vaddr;
chain             380 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	err = wait_for_api_cmd_completion(chain);
chain             382 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	up(&chain->sem);
chain             395 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c int hinic_api_cmd_write(struct hinic_api_cmd_chain *chain,
chain             399 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	if (chain->chain_type == HINIC_API_CMD_WRITE_TO_MGMT_CPU)
chain             400 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		return api_cmd(chain, dest, cmd, size);
chain             411 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static int api_cmd_hw_restart(struct hinic_api_cmd_chain *chain)
chain             413 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             419 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	reg_addr = HINIC_CSR_API_CMD_CHAIN_REQ_ADDR(chain->chain_type);
chain             446 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static void api_cmd_ctrl_init(struct hinic_api_cmd_chain *chain)
chain             448 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             453 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	addr = HINIC_CSR_API_CMD_CHAIN_CTRL_ADDR(chain->chain_type);
chain             455 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	cell_size = API_CMD_CELL_SIZE_VAL(chain->cell_size);
chain             476 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static void api_cmd_set_status_addr(struct hinic_api_cmd_chain *chain)
chain             478 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             481 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	addr = HINIC_CSR_API_CMD_STATUS_HI_ADDR(chain->chain_type);
chain             482 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	val = upper_32_bits(chain->wb_status_paddr);
chain             485 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	addr = HINIC_CSR_API_CMD_STATUS_LO_ADDR(chain->chain_type);
chain             486 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	val = lower_32_bits(chain->wb_status_paddr);
chain             494 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static void api_cmd_set_num_cells(struct hinic_api_cmd_chain *chain)
chain             496 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             499 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	addr = HINIC_CSR_API_CMD_CHAIN_NUM_CELLS_ADDR(chain->chain_type);
chain             500 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	val  = chain->num_cells;
chain             508 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static void api_cmd_head_init(struct hinic_api_cmd_chain *chain)
chain             510 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             513 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	addr = HINIC_CSR_API_CMD_CHAIN_HEAD_HI_ADDR(chain->chain_type);
chain             514 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	val = upper_32_bits(chain->head_cell_paddr);
chain             517 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	addr = HINIC_CSR_API_CMD_CHAIN_HEAD_LO_ADDR(chain->chain_type);
chain             518 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	val = lower_32_bits(chain->head_cell_paddr);
chain             526 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static void api_cmd_chain_hw_clean(struct hinic_api_cmd_chain *chain)
chain             528 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             531 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	addr = HINIC_CSR_API_CMD_CHAIN_CTRL_ADDR(chain->chain_type);
chain             549 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static int api_cmd_chain_hw_init(struct hinic_api_cmd_chain *chain)
chain             551 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             555 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	api_cmd_chain_hw_clean(chain);
chain             557 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	api_cmd_set_status_addr(chain);
chain             559 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	err = api_cmd_hw_restart(chain);
chain             565 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	api_cmd_ctrl_init(chain);
chain             566 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	api_cmd_set_num_cells(chain);
chain             567 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	api_cmd_head_init(chain);
chain             576 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static void free_cmd_buf(struct hinic_api_cmd_chain *chain, int cell_idx)
chain             579 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             582 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	cell_ctxt = &chain->cell_ctxt[cell_idx];
chain             597 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static int alloc_cmd_buf(struct hinic_api_cmd_chain *chain,
chain             601 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             614 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	cell_ctxt = &chain->cell_ctxt[cell_idx];
chain             620 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	switch (chain->chain_type) {
chain             628 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		free_cmd_buf(chain, cell_idx);
chain             645 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static int api_cmd_create_cell(struct hinic_api_cmd_chain *chain,
chain             651 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             657 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	node = dma_alloc_coherent(&pdev->dev, chain->cell_size, &node_paddr,
chain             666 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	cell_ctxt = &chain->cell_ctxt[cell_idx];
chain             671 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		chain->head_cell_paddr = node_paddr;
chain             672 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		chain->head_node = node;
chain             678 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	switch (chain->chain_type) {
chain             680 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		err = alloc_cmd_buf(chain, node, cell_idx);
chain             697 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	dma_free_coherent(&pdev->dev, chain->cell_size, node, node_paddr);
chain             706 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static void api_cmd_destroy_cell(struct hinic_api_cmd_chain *chain,
chain             710 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             716 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	cell_ctxt = &chain->cell_ctxt[cell_idx];
chain             720 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	node_size = chain->cell_size;
chain             723 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		switch (chain->chain_type) {
chain             725 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 			free_cmd_buf(chain, cell_idx);
chain             742 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static void api_cmd_destroy_cells(struct hinic_api_cmd_chain *chain,
chain             748 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		api_cmd_destroy_cell(chain, cell_idx);
chain             757 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static int api_cmd_create_cells(struct hinic_api_cmd_chain *chain)
chain             760 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             764 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	for (cell_idx = 0; cell_idx < chain->num_cells; cell_idx++) {
chain             765 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		err = api_cmd_create_cell(chain, cell_idx, pre_node, &node);
chain             775 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	node->next_cell_paddr = cpu_to_be64(chain->head_cell_paddr);
chain             778 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	chain->curr_node = chain->head_node;
chain             782 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	api_cmd_destroy_cells(chain, cell_idx);
chain             793 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static int api_chain_init(struct hinic_api_cmd_chain *chain,
chain             800 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	chain->hwif = hwif;
chain             801 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	chain->chain_type  = attr->chain_type;
chain             802 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	chain->num_cells = attr->num_cells;
chain             803 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	chain->cell_size = attr->cell_size;
chain             805 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	chain->prod_idx  = 0;
chain             806 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	chain->cons_idx  = 0;
chain             808 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	sema_init(&chain->sem, 1);
chain             810 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	cell_ctxt_size = chain->num_cells * sizeof(*chain->cell_ctxt);
chain             811 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	chain->cell_ctxt = devm_kzalloc(&pdev->dev, cell_ctxt_size, GFP_KERNEL);
chain             812 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	if (!chain->cell_ctxt)
chain             815 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	chain->wb_status = dma_alloc_coherent(&pdev->dev,
chain             816 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 					      sizeof(*chain->wb_status),
chain             817 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 					      &chain->wb_status_paddr,
chain             819 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	if (!chain->wb_status) {
chain             831 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static void api_chain_free(struct hinic_api_cmd_chain *chain)
chain             833 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_hwif *hwif = chain->hwif;
chain             836 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	dma_free_coherent(&pdev->dev, sizeof(*chain->wb_status),
chain             837 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 			  chain->wb_status, chain->wb_status_paddr);
chain             851 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	struct hinic_api_cmd_chain *chain;
chain             859 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	chain = devm_kzalloc(&pdev->dev, sizeof(*chain), GFP_KERNEL);
chain             860 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	if (!chain)
chain             863 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	err = api_chain_init(chain, attr);
chain             869 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	err = api_cmd_create_cells(chain);
chain             875 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	err = api_cmd_chain_hw_init(chain);
chain             881 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	return chain;
chain             884 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	api_cmd_destroy_cells(chain, chain->num_cells);
chain             887 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	api_chain_free(chain);
chain             895 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c static void api_cmd_destroy_chain(struct hinic_api_cmd_chain *chain)
chain             897 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	api_cmd_chain_hw_clean(chain);
chain             898 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	api_cmd_destroy_cells(chain, chain->num_cells);
chain             899 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 	api_chain_free(chain);
chain             909 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c int hinic_api_cmd_init(struct hinic_api_cmd_chain **chain,
chain             931 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		chain[chain_type] = api_cmd_create_chain(&attr);
chain             932 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		if (IS_ERR(chain[chain_type])) {
chain             935 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 			err = PTR_ERR(chain[chain_type]);
chain             948 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		api_cmd_destroy_chain(chain[type]);
chain             958 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c void hinic_api_cmd_free(struct hinic_api_cmd_chain **chain)
chain             967 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c 		api_cmd_destroy_chain(chain[chain_type]);
chain             191 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.h int hinic_api_cmd_write(struct hinic_api_cmd_chain *chain,
chain             194 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.h int hinic_api_cmd_init(struct hinic_api_cmd_chain **chain,
chain             197 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.h void hinic_api_cmd_free(struct hinic_api_cmd_chain **chain);
chain             201 drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.c 	struct hinic_api_cmd_chain *chain;
chain             218 drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.c 	chain = pf_to_mgmt->cmd_chain[HINIC_API_CMD_WRITE_TO_MGMT_CPU];
chain             219 drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.c 	return hinic_api_cmd_write(chain, HINIC_NODE_ID_MGMT,
chain            1171 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (attr->chain > max_chain) {
chain            3389 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 			if (dest_chain <= attr->chain) {
chain            3573 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	esw_attr->chain = f->common.chain_index;
chain             397 drivers/net/ethernet/mellanox/mlx5/core/eswitch.h 	u32	chain;
chain              51 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c #define fdb_prio_table(esw, chain, prio, level) \
chain              52 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	(esw)->fdb_table.offloads.fdb_prio[(chain)][(prio)][(level)]
chain              66 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c esw_get_prio_table(struct mlx5_eswitch *esw, u32 chain, u16 prio, int level);
chain              68 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c esw_put_prio_table(struct mlx5_eswitch *esw, u32 chain, u16 prio, int level);
chain             218 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	fdb = esw_get_prio_table(esw, attr->chain, attr->prio, !!split);
chain             237 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	esw_put_prio_table(esw, attr->chain, attr->prio, !!split);
chain             257 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	fast_fdb = esw_get_prio_table(esw, attr->chain, attr->prio, 0);
chain             263 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	fwd_fdb = esw_get_prio_table(esw, attr->chain, attr->prio, 1);
chain             300 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	esw_put_prio_table(esw, attr->chain, attr->prio, 1);
chain             302 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	esw_put_prio_table(esw, attr->chain, attr->prio, 0);
chain             327 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		esw_put_prio_table(esw, attr->chain, attr->prio, 1);
chain             328 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		esw_put_prio_table(esw, attr->chain, attr->prio, 0);
chain             330 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		esw_put_prio_table(esw, attr->chain, attr->prio, !!split);
chain             922 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c esw_get_prio_table(struct mlx5_eswitch *esw, u32 chain, u16 prio, int level)
chain             930 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	if (chain == FDB_SLOW_PATH_CHAIN)
chain             935 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	fdb = fdb_prio_table(esw, chain, prio, level).fdb;
chain             939 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 			fdb_prio_table(esw, chain, prio, level--).num_rules++;
chain             944 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	ns = mlx5_get_fdb_sub_ns(dev, chain);
chain             955 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	table_prio = (chain * FDB_MAX_PRIO) + prio - 1;
chain             961 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		if (fdb_prio_table(esw, chain, prio, l).fdb) {
chain             962 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 			fdb_prio_table(esw, chain, prio, l).num_rules++;
chain             972 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		fdb_prio_table(esw, chain, prio, l).fdb = fdb;
chain             973 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		fdb_prio_table(esw, chain, prio, l).num_rules = 1;
chain             982 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		esw_put_prio_table(esw, chain, prio, l);
chain             988 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c esw_put_prio_table(struct mlx5_eswitch *esw, u32 chain, u16 prio, int level)
chain             992 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	if (chain == FDB_SLOW_PATH_CHAIN)
chain             998 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		if (--(fdb_prio_table(esw, chain, prio, l).num_rules) > 0)
chain            1001 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		put_sz_to_pool(esw, fdb_prio_table(esw, chain, prio, l).fdb->max_fte);
chain            1002 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		mlx5_destroy_flow_table(fdb_prio_table(esw, chain, prio, l).fdb);
chain            1003 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		fdb_prio_table(esw, chain, prio, l).fdb = NULL;
chain            2562 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	int chain;
chain            2591 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	for (chain = 0; chain <= FDB_MAX_CHAIN; chain++) {
chain            2598 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		for (prio = 0; prio < FDB_MAX_PRIO * (chain + 1); prio++) {
chain            2606 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		steering->fdb_sub_ns[chain] = ns;
chain            2270 drivers/net/ethernet/qlogic/qed/qed_dev.c 		n_eqes = qed_chain_get_capacity(&p_hwfn->p_spq->chain);
chain             176 drivers/net/ethernet/qlogic/qed/qed_sp.h 	struct qed_chain	chain;
chain             182 drivers/net/ethernet/qlogic/qed/qed_sp.h 	struct qed_chain chain;
chain             209 drivers/net/ethernet/qlogic/qed/qed_sp.h 	struct qed_chain	chain;
chain             339 drivers/net/ethernet/qlogic/qed/qed_sp_commands.c 			   qed_chain_get_prod_idx(&p_hwfn->p_eq->chain));
chain             393 drivers/net/ethernet/qlogic/qed/qed_sp_commands.c 		       p_hwfn->p_eq->chain.pbl_sp.p_phys_table);
chain             394 drivers/net/ethernet/qlogic/qed/qed_sp_commands.c 	page_cnt = (u8)qed_chain_get_page_cnt(&p_hwfn->p_eq->chain);
chain             397 drivers/net/ethernet/qlogic/qed/qed_sp_commands.c 		       p_hwfn->p_consq->chain.pbl_sp.p_phys_table);
chain             243 drivers/net/ethernet/qlogic/qed/qed_spq.c 		DMA_LO_LE(p_spq->chain.p_phys_addr);
chain             245 drivers/net/ethernet/qlogic/qed/qed_spq.c 		DMA_HI_LE(p_spq->chain.p_phys_addr);
chain             248 drivers/net/ethernet/qlogic/qed/qed_spq.c 		       p_hwfn->p_consq->chain.p_phys_addr);
chain             254 drivers/net/ethernet/qlogic/qed/qed_spq.c 	struct qed_chain *p_chain = &p_hwfn->p_spq->chain;
chain             349 drivers/net/ethernet/qlogic/qed/qed_spq.c 	struct qed_chain *p_chain = &p_eq->chain;
chain             421 drivers/net/ethernet/qlogic/qed/qed_spq.c 			    &p_eq->chain, NULL))
chain             438 drivers/net/ethernet/qlogic/qed/qed_spq.c 	qed_chain_reset(&p_hwfn->p_eq->chain);
chain             446 drivers/net/ethernet/qlogic/qed/qed_spq.c 	qed_chain_free(p_hwfn->cdev, &p_hwfn->p_eq->chain);
chain             506 drivers/net/ethernet/qlogic/qed/qed_spq.c 	capacity = qed_chain_get_capacity(&p_spq->chain);
chain             530 drivers/net/ethernet/qlogic/qed/qed_spq.c 	qed_chain_reset(&p_spq->chain);
chain             571 drivers/net/ethernet/qlogic/qed/qed_spq.c 			    &p_spq->chain, NULL))
chain             575 drivers/net/ethernet/qlogic/qed/qed_spq.c 	capacity = qed_chain_get_capacity(&p_spq->chain);
chain             589 drivers/net/ethernet/qlogic/qed/qed_spq.c 	qed_chain_free(p_hwfn->cdev, &p_spq->chain);
chain             609 drivers/net/ethernet/qlogic/qed/qed_spq.c 		capacity = qed_chain_get_capacity(&p_spq->chain);
chain             616 drivers/net/ethernet/qlogic/qed/qed_spq.c 	qed_chain_free(p_hwfn->cdev, &p_spq->chain);
chain             754 drivers/net/ethernet/qlogic/qed/qed_spq.c 	while (qed_chain_get_elem_left(&p_spq->chain) > keep_reserve &&
chain             821 drivers/net/ethernet/qlogic/qed/qed_spq.c 		qed_chain_return_produced(&p_spq->chain);
chain            1007 drivers/net/ethernet/qlogic/qed/qed_spq.c 			    0x80, &p_consq->chain, NULL))
chain            1020 drivers/net/ethernet/qlogic/qed/qed_spq.c 	qed_chain_reset(&p_hwfn->p_consq->chain);
chain            1028 drivers/net/ethernet/qlogic/qed/qed_spq.c 	qed_chain_free(p_hwfn->cdev, &p_hwfn->p_consq->chain);
chain             220 drivers/net/ethernet/toshiba/ps3_gelic_net.c 				   struct gelic_descr_chain *chain,
chain             230 drivers/net/ethernet/toshiba/ps3_gelic_net.c 	chain->head = start_descr;
chain             231 drivers/net/ethernet/toshiba/ps3_gelic_net.c 	chain->tail = (descr - 1);
chain             309 drivers/net/ethernet/toshiba/ps3_gelic_net.c 				 struct gelic_descr_chain *chain,
chain             342 drivers/net/ethernet/toshiba/ps3_gelic_net.c 	chain->head = start_descr;
chain             343 drivers/net/ethernet/toshiba/ps3_gelic_net.c 	chain->tail = start_descr;
chain             478 drivers/net/ethernet/toshiba/ps3_gelic_net.c 	struct gelic_descr_chain *chain;
chain             480 drivers/net/ethernet/toshiba/ps3_gelic_net.c 	chain = &card->rx_chain;
chain             482 drivers/net/ethernet/toshiba/ps3_gelic_net.c 	chain->tail = card->rx_top->prev; /* point to the last */
chain             970 drivers/net/ethernet/toshiba/ps3_gelic_net.c 	struct gelic_descr_chain *chain = &card->rx_chain;
chain             971 drivers/net/ethernet/toshiba/ps3_gelic_net.c 	struct gelic_descr *descr = chain->head;
chain            1059 drivers/net/ethernet/toshiba/ps3_gelic_net.c 	chain->tail = descr;
chain            1060 drivers/net/ethernet/toshiba/ps3_gelic_net.c 	chain->head = descr->next;
chain             275 drivers/net/ethernet/toshiba/spider_net.c 		      struct spider_net_descr_chain *chain)
chain             279 drivers/net/ethernet/toshiba/spider_net.c 	descr = chain->ring;
chain             284 drivers/net/ethernet/toshiba/spider_net.c 	} while (descr != chain->ring);
chain             286 drivers/net/ethernet/toshiba/spider_net.c 	dma_free_coherent(&card->pdev->dev, chain->num_desc,
chain             287 drivers/net/ethernet/toshiba/spider_net.c 	    chain->hwring, chain->dma_addr);
chain             302 drivers/net/ethernet/toshiba/spider_net.c 		       struct spider_net_descr_chain *chain)
chain             310 drivers/net/ethernet/toshiba/spider_net.c 	alloc_size = chain->num_desc * sizeof(struct spider_net_hw_descr);
chain             312 drivers/net/ethernet/toshiba/spider_net.c 	chain->hwring = dma_alloc_coherent(&card->pdev->dev, alloc_size,
chain             313 drivers/net/ethernet/toshiba/spider_net.c 					   &chain->dma_addr, GFP_KERNEL);
chain             314 drivers/net/ethernet/toshiba/spider_net.c 	if (!chain->hwring)
chain             317 drivers/net/ethernet/toshiba/spider_net.c 	memset(chain->ring, 0, chain->num_desc * sizeof(struct spider_net_descr));
chain             320 drivers/net/ethernet/toshiba/spider_net.c 	descr = chain->ring;
chain             321 drivers/net/ethernet/toshiba/spider_net.c 	hwdescr = chain->hwring;
chain             322 drivers/net/ethernet/toshiba/spider_net.c 	buf = chain->dma_addr;
chain             323 drivers/net/ethernet/toshiba/spider_net.c 	for (i=0; i < chain->num_desc; i++, descr++, hwdescr++) {
chain             335 drivers/net/ethernet/toshiba/spider_net.c 	(descr-1)->next = chain->ring;
chain             336 drivers/net/ethernet/toshiba/spider_net.c 	chain->ring->prev = descr-1;
chain             338 drivers/net/ethernet/toshiba/spider_net.c 	spin_lock_init(&chain->lock);
chain             339 drivers/net/ethernet/toshiba/spider_net.c 	chain->head = chain->ring;
chain             340 drivers/net/ethernet/toshiba/spider_net.c 	chain->tail = chain->ring;
chain             487 drivers/net/ethernet/toshiba/spider_net.c 	struct spider_net_descr_chain *chain = &card->rx_chain;
chain             494 drivers/net/ethernet/toshiba/spider_net.c 	if (!spin_trylock_irqsave(&chain->lock, flags))
chain             497 drivers/net/ethernet/toshiba/spider_net.c 	while (spider_net_get_descr_status(chain->head->hwdescr) ==
chain             499 drivers/net/ethernet/toshiba/spider_net.c 		if (spider_net_prepare_rx_descr(card, chain->head))
chain             501 drivers/net/ethernet/toshiba/spider_net.c 		chain->head = chain->head->next;
chain             504 drivers/net/ethernet/toshiba/spider_net.c 	spin_unlock_irqrestore(&chain->lock, flags);
chain             516 drivers/net/ethernet/toshiba/spider_net.c 	struct spider_net_descr_chain *chain = &card->rx_chain;
chain             517 drivers/net/ethernet/toshiba/spider_net.c 	struct spider_net_descr *start = chain->tail;
chain             529 drivers/net/ethernet/toshiba/spider_net.c 	if (spider_net_prepare_rx_descr(card, chain->head))
chain             532 drivers/net/ethernet/toshiba/spider_net.c 		chain->head = chain->head->next;
chain             646 drivers/net/ethernet/toshiba/spider_net.c 	struct spider_net_descr_chain *chain = &card->tx_chain;
chain             661 drivers/net/ethernet/toshiba/spider_net.c 	spin_lock_irqsave(&chain->lock, flags);
chain             663 drivers/net/ethernet/toshiba/spider_net.c 	if (descr->next == chain->tail->prev) {
chain             664 drivers/net/ethernet/toshiba/spider_net.c 		spin_unlock_irqrestore(&chain->lock, flags);
chain             669 drivers/net/ethernet/toshiba/spider_net.c 	chain->head = descr->next;
chain             679 drivers/net/ethernet/toshiba/spider_net.c 	spin_unlock_irqrestore(&chain->lock, flags);
chain             758 drivers/net/ethernet/toshiba/spider_net.c 	struct spider_net_descr_chain *chain = &card->tx_chain;
chain             767 drivers/net/ethernet/toshiba/spider_net.c 		spin_lock_irqsave(&chain->lock, flags);
chain             768 drivers/net/ethernet/toshiba/spider_net.c 		if (chain->tail == chain->head) {
chain             769 drivers/net/ethernet/toshiba/spider_net.c 			spin_unlock_irqrestore(&chain->lock, flags);
chain             772 drivers/net/ethernet/toshiba/spider_net.c 		descr = chain->tail;
chain             784 drivers/net/ethernet/toshiba/spider_net.c 				spin_unlock_irqrestore(&chain->lock, flags);
chain             805 drivers/net/ethernet/toshiba/spider_net.c 				spin_unlock_irqrestore(&chain->lock, flags);
chain             810 drivers/net/ethernet/toshiba/spider_net.c 		chain->tail = descr->next;
chain             815 drivers/net/ethernet/toshiba/spider_net.c 		spin_unlock_irqrestore(&chain->lock, flags);
chain             980 drivers/net/ethernet/toshiba/spider_net.c 	struct spider_net_descr_chain *chain = &card->rx_chain;
chain             981 drivers/net/ethernet/toshiba/spider_net.c 	struct spider_net_descr *start= chain->tail;
chain             990 drivers/net/ethernet/toshiba/spider_net.c 	int off = start - chain->ring;
chain             994 drivers/net/ethernet/toshiba/spider_net.c 		chain->num_desc);
chain            1005 drivers/net/ethernet/toshiba/spider_net.c 		off = descr - chain->ring;
chain            1008 drivers/net/ethernet/toshiba/spider_net.c 		if (descr == chain->head)
chain            1024 drivers/net/ethernet/toshiba/spider_net.c 			int from = (chain->num_desc + off - cnt) % chain->num_desc;
chain            1025 drivers/net/ethernet/toshiba/spider_net.c 			int to = (chain->num_desc + off - 1) % chain->num_desc;
chain            1047 drivers/net/ethernet/toshiba/spider_net.c 		cnt = descr - chain->ring;
chain            1078 drivers/net/ethernet/toshiba/spider_net.c 	struct spider_net_descr_chain *chain = &card->rx_chain;
chain            1083 drivers/net/ethernet/toshiba/spider_net.c 	descr = chain->head;
chain            1089 drivers/net/ethernet/toshiba/spider_net.c 	spin_lock_irqsave(&chain->lock, flags);
chain            1091 drivers/net/ethernet/toshiba/spider_net.c 	descr = chain->head;
chain            1093 drivers/net/ethernet/toshiba/spider_net.c 	for (i=0; i<chain->num_desc; i++) {
chain            1098 drivers/net/ethernet/toshiba/spider_net.c 	chain->head = descr;
chain            1100 drivers/net/ethernet/toshiba/spider_net.c 	spin_unlock_irqrestore(&chain->lock, flags);
chain            1105 drivers/net/ethernet/toshiba/spider_net.c 	struct spider_net_descr_chain *chain = &card->rx_chain;
chain            1110 drivers/net/ethernet/toshiba/spider_net.c 	descr = chain->tail;
chain            1113 drivers/net/ethernet/toshiba/spider_net.c 	for (i=0; i<chain->num_desc; i++) {
chain            1119 drivers/net/ethernet/toshiba/spider_net.c 	chain->tail = descr;
chain            1121 drivers/net/ethernet/toshiba/spider_net.c 	if ((i == chain->num_desc) || (i == 0))
chain            1141 drivers/net/ethernet/toshiba/spider_net.c 	struct spider_net_descr_chain *chain = &card->rx_chain;
chain            1142 drivers/net/ethernet/toshiba/spider_net.c 	struct spider_net_descr *descr = chain->tail;
chain            1155 drivers/net/ethernet/toshiba/spider_net.c 	chain->tail = descr->next;
chain            1202 drivers/net/wireless/ath/ath9k/ar9003_calib.c static void ar9003_hw_manual_peak_cal(struct ath_hw *ah, u8 chain, bool is_2g)
chain            1215 drivers/net/wireless/ath/ath9k/ar9003_calib.c 	REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_GAINSTAGES(chain),
chain            1217 drivers/net/wireless/ath/ath9k/ar9003_calib.c 	REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_GAINSTAGES(chain),
chain            1222 drivers/net/wireless/ath/ath9k/ar9003_calib.c 			REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_GAINSTAGES(chain),
chain            1225 drivers/net/wireless/ath/ath9k/ar9003_calib.c 			REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_GAINSTAGES(chain),
chain            1232 drivers/net/wireless/ath/ath9k/ar9003_calib.c 	REG_RMW_FIELD(ah, AR_PHY_65NM_RXTX2(chain),
chain            1234 drivers/net/wireless/ath/ath9k/ar9003_calib.c 	REG_RMW_FIELD(ah, AR_PHY_65NM_RXTX2(chain),
chain            1240 drivers/net/wireless/ath/ath9k/ar9003_calib.c 	REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_AGC(chain),
chain            1242 drivers/net/wireless/ath/ath9k/ar9003_calib.c 	REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_AGC(chain),
chain            1244 drivers/net/wireless/ath/ath9k/ar9003_calib.c 	REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_AGC(chain),
chain            1248 drivers/net/wireless/ath/ath9k/ar9003_calib.c 		REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_AGC(chain),
chain            1252 drivers/net/wireless/ath/ath9k/ar9003_calib.c 		REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_AGC(chain),
chain            1256 drivers/net/wireless/ath/ath9k/ar9003_calib.c 		REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_AGC(chain),
chain            1265 drivers/net/wireless/ath/ath9k/ar9003_calib.c 			REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_AGC(chain),
chain            1269 drivers/net/wireless/ath/ath9k/ar9003_calib.c 			REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_AGC(chain),
chain            1273 drivers/net/wireless/ath/ath9k/ar9003_calib.c 		agc_out = REG_READ_FIELD(ah, AR_PHY_65NM_RXRF_AGC(chain),
chain            1280 drivers/net/wireless/ath/ath9k/ar9003_calib.c 		REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_AGC(chain),
chain            1283 drivers/net/wireless/ath/ath9k/ar9003_calib.c 		REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_AGC(chain),
chain            1289 drivers/net/wireless/ath/ath9k/ar9003_calib.c 	REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_GAINSTAGES(chain),
chain            1294 drivers/net/wireless/ath/ath9k/ar9003_calib.c 	REG_RMW_FIELD(ah, AR_PHY_65NM_RXTX2(chain),
chain            1299 drivers/net/wireless/ath/ath9k/ar9003_calib.c 	REG_RMW_FIELD(ah, AR_PHY_65NM_RXRF_AGC(chain),
chain            3637 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c static u16 ar9003_hw_ant_ctrl_chain_get(struct ath_hw *ah, int chain,
chain            3640 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 	__le16 val = ar9003_modal_header(ah, is2ghz)->antCtrlChain[chain];
chain            3648 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 	int chain;
chain            3713 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 	for (chain = 0; chain < AR9300_MAX_CHAINS; chain++) {
chain            3714 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 		if ((ah->rxchainmask & BIT(chain)) ||
chain            3715 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 		    (ah->txchainmask & BIT(chain))) {
chain            3716 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 			value = ar9003_hw_ant_ctrl_chain_get(ah, chain,
chain            3718 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 			REG_RMW_FIELD(ah, switch_chain_reg[chain],
chain            3837 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c static u16 ar9003_hw_atten_chain_get(struct ath_hw *ah, int chain,
chain            3844 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 	if (chain >= 0 && chain < 3) {
chain            3846 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 			return eep->modalHeader2G.xatten1DB[chain];
chain            3847 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 		else if (eep->base_ext2.xatten1DBLow[chain] != 0) {
chain            3848 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 			t[0] = eep->base_ext2.xatten1DBLow[chain];
chain            3850 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 			t[1] = eep->modalHeader5G.xatten1DB[chain];
chain            3852 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 			t[2] = eep->base_ext2.xatten1DBHigh[chain];
chain            3858 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 			return eep->modalHeader5G.xatten1DB[chain];
chain            3865 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c static u16 ar9003_hw_atten_chain_get_margin(struct ath_hw *ah, int chain,
chain            3872 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 	if (chain >= 0 && chain < 3) {
chain            3874 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 			return eep->modalHeader2G.xatten1Margin[chain];
chain            3875 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 		else if (eep->base_ext2.xatten1MarginLow[chain] != 0) {
chain            3876 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 			t[0] = eep->base_ext2.xatten1MarginLow[chain];
chain            3878 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 			t[1] = eep->modalHeader5G.xatten1Margin[chain];
chain            3880 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 			t[2] = eep->base_ext2.xatten1MarginHigh[chain];
chain            3886 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 			return eep->modalHeader5G.xatten1Margin[chain];
chain            4212 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 	int chain;
chain            4223 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 	for (chain = 0; chain < AR9300_MAX_CHAINS; chain++) {
chain            4224 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 		if (!(ah->caps.tx_chainmask & BIT(chain)))
chain            4227 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 		val = ar9003_modal_header(ah, is2ghz)->noiseFloorThreshCh[chain];
chain            4228 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c 		REG_RMW_FIELD(ah, cca_ctrl[chain],
chain             305 drivers/net/wireless/ath/ath9k/ar9003_paprd.c static unsigned int ar9003_get_desired_gain(struct ath_hw *ah, int chain,
chain             333 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 	switch (chain) {
chain             348 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 			"Invalid chainmask: %d\n", chain);
chain             753 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 					int chain)
chain             755 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 	u32 *paprd_table_val = caldata->pa_table[chain];
chain             756 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 	u32 small_signal_gain = caldata->small_signal_gain[chain];
chain             761 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 	if (chain == 0)
chain             763 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 	else if (chain == 1)
chain             765 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 	else if (chain == 2)
chain             773 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 	if (chain == 0)
chain             775 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 	else if (chain == 1)
chain             799 drivers/net/wireless/ath/ath9k/ar9003_paprd.c void ar9003_paprd_setup_gain_table(struct ath_hw *ah, int chain)
chain             804 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 	desired_gain = ar9003_get_desired_gain(ah, chain, train_power);
chain             822 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 				       int chain)
chain             824 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 	u32 *pa_in = caldata->pa_table[chain];
chain             917 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 			      struct ath9k_hw_cal_data *caldata, int chain)
chain             919 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 	u16 *small_signal_gain = &caldata->small_signal_gain[chain];
chain             920 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 	u32 *pa_table = caldata->pa_table[chain];
chain             926 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 	memset(caldata->pa_table[chain], 0, sizeof(caldata->pa_table[chain]));
chain             951 drivers/net/wireless/ath/ath9k/ar9003_paprd.c 	if (ar9003_paprd_retrain_pa_in(ah, caldata, chain))
chain              72 drivers/net/wireless/ath/ath9k/ar9003_rtt.c static void ar9003_hw_rtt_load_hist_entry(struct ath_hw *ah, u8 chain,
chain              78 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	REG_WRITE(ah, AR_PHY_RTT_TABLE_SW_INTF_1_B(chain), val);
chain              83 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	REG_WRITE(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), val);
chain              87 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	REG_WRITE(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), val);
chain              90 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	if (!ath9k_hw_wait(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain),
chain              96 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	REG_WRITE(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), val);
chain              99 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	ath9k_hw_wait(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain),
chain             106 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	int chain, i;
chain             108 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	for (chain = 0; chain < AR9300_MAX_CHAINS; chain++) {
chain             109 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 		if (!(ah->caps.rx_chainmask & (1 << chain)))
chain             112 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 			ar9003_hw_rtt_load_hist_entry(ah, chain, i,
chain             113 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 					      ah->caldata->rtt_table[chain][i]);
chain             116 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 				i, chain, ah->caldata->rtt_table[chain][i]);
chain             121 drivers/net/wireless/ath/ath9k/ar9003_rtt.c static void ar9003_hw_patch_rtt(struct ath_hw *ah, int index, int chain)
chain             128 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	if ((index != 5) || (chain >= 2))
chain             131 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	agc = REG_READ_FIELD(ah, AR_PHY_65NM_RXRF_AGC(chain),
chain             136 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	caldac = ah->caldata->caldac[chain];
chain             137 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	ah->caldata->rtt_table[chain][index] &= 0xFFFF05FF;
chain             139 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	ah->caldata->rtt_table[chain][index] |= (caldac << 4);
chain             142 drivers/net/wireless/ath/ath9k/ar9003_rtt.c static int ar9003_hw_rtt_fill_hist_entry(struct ath_hw *ah, u8 chain, u32 index)
chain             150 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	REG_WRITE(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), val);
chain             154 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	REG_WRITE(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), val);
chain             157 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	if (!ath9k_hw_wait(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain),
chain             162 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	val = MS(REG_READ(ah, AR_PHY_RTT_TABLE_SW_INTF_1_B(chain)),
chain             171 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	int chain, i;
chain             173 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	for (chain = 0; chain < AR9300_MAX_CHAINS; chain++) {
chain             174 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 		if (!(ah->caps.rx_chainmask & (1 << chain)))
chain             177 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 			ah->caldata->rtt_table[chain][i] =
chain             178 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 				ar9003_hw_rtt_fill_hist_entry(ah, chain, i);
chain             180 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 			ar9003_hw_patch_rtt(ah, i, chain);
chain             184 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 				i, chain, ah->caldata->rtt_table[chain][i]);
chain             193 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	int chain, i;
chain             195 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 	for (chain = 0; chain < AR9300_MAX_CHAINS; chain++) {
chain             196 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 		if (!(ah->caps.rx_chainmask & (1 << chain)))
chain             199 drivers/net/wireless/ath/ath9k/ar9003_rtt.c 			ar9003_hw_rtt_load_hist_entry(ah, chain, i, 0);
chain              62 drivers/net/wireless/ath/ath9k/calib.c 				   int chain)
chain              64 drivers/net/wireless/ath/ath9k/calib.c 	s16 calib_nf = ath9k_hw_get_nf_limits(ah, chan)->cal[chain];
chain             313 drivers/net/wireless/ath/ath9k/eeprom_9287.c 					  int32_t txPower, u16 chain)
chain             334 drivers/net/wireless/ath/ath9k/eeprom_9287.c 	if (chain == 0) {
chain             344 drivers/net/wireless/ath/ath9k/eeprom_9287.c 	if (chain == 1) {
chain            1120 drivers/net/wireless/ath/ath9k/hw.h 					int chain);
chain            1122 drivers/net/wireless/ath/ath9k/hw.h 			      struct ath9k_hw_cal_data *caldata, int chain);
chain            1123 drivers/net/wireless/ath/ath9k/hw.h void ar9003_paprd_setup_gain_table(struct ath_hw *ah, int chain);
chain             153 drivers/net/wireless/ath/ath9k/link.c 	int chain;
chain             161 drivers/net/wireless/ath/ath9k/link.c 	for (chain = 0; chain < AR9300_MAX_CHAINS; chain++) {
chain             162 drivers/net/wireless/ath/ath9k/link.c 		if (!(ah->txchainmask & BIT(chain)))
chain             165 drivers/net/wireless/ath/ath9k/link.c 		ar9003_paprd_populate_single_table(ah, caldata, chain);
chain             172 drivers/net/wireless/ath/ath9k/link.c static bool ath_paprd_send_frame(struct ath_softc *sc, struct sk_buff *skb, int chain)
chain             193 drivers/net/wireless/ath/ath9k/link.c 	txctl.paprd = BIT(chain);
chain             207 drivers/net/wireless/ath/ath9k/link.c 			chain);
chain             223 drivers/net/wireless/ath/ath9k/link.c 	int chain;
chain             253 drivers/net/wireless/ath/ath9k/link.c 	for (chain = 0; chain < AR9300_MAX_CHAINS; chain++) {
chain             254 drivers/net/wireless/ath/ath9k/link.c 		if (!(ah->txchainmask & BIT(chain)))
chain             258 drivers/net/wireless/ath/ath9k/link.c 		ar9003_paprd_setup_gain_table(ah, chain);
chain             261 drivers/net/wireless/ath/ath9k/link.c 			"Sending PAPRD training frame on chain %d\n", chain);
chain             262 drivers/net/wireless/ath/ath9k/link.c 		if (!ath_paprd_send_frame(sc, skb, chain))
chain             267 drivers/net/wireless/ath/ath9k/link.c 				"PAPRD not yet done on chain %d\n", chain);
chain             271 drivers/net/wireless/ath/ath9k/link.c 		ret = ar9003_paprd_create_curve(ah, caldata, chain);
chain             275 drivers/net/wireless/ath/ath9k/link.c 				chain);
chain             280 drivers/net/wireless/ath/ath9k/link.c 				chain);
chain            1123 drivers/net/wireless/ath/carl9170/phy.c 	int chain, idx, i;
chain            1155 drivers/net/wireless/ath/carl9170/phy.c 	for (chain = 0; chain < AR5416_MAX_CHAINS; chain++) {
chain            1163 drivers/net/wireless/ath/carl9170/phy.c 					cal_pier_data_2G[chain][idx];
chain            1168 drivers/net/wireless/ath/carl9170/phy.c 					cal_pier_data_5G[chain][idx];
chain            1202 drivers/net/wireless/ath/carl9170/phy.c 				carl9170_regwrite(0x1c6280 + chain * 0x1000 +
chain            1209 drivers/net/wireless/ath/carl9170/phy.c 			carl9170_regwrite(0x1c6280 + chain * 0x1000 + (i << 2),
chain            3490 drivers/net/wireless/broadcom/b43/phy_n.c 	u16 chain = 0x33;
chain            3493 drivers/net/wireless/broadcom/b43/phy_n.c 		chain = 0x11;
chain            3496 drivers/net/wireless/broadcom/b43/phy_n.c 		chain = 0x22;
chain            3502 drivers/net/wireless/broadcom/b43/phy_n.c 			chain);
chain            1004 drivers/net/wireless/intel/iwlwifi/mvm/fw.c 		struct iwl_per_chain_offset *chain =
chain            1012 drivers/net/wireless/intel/iwlwifi/mvm/fw.c 			chain[j].max_tx_power = cpu_to_le16(value[0]);
chain            1013 drivers/net/wireless/intel/iwlwifi/mvm/fw.c 			chain[j].chain_a = value[1];
chain            1014 drivers/net/wireless/intel/iwlwifi/mvm/fw.c 			chain[j].chain_b = value[2];
chain            1300 drivers/net/wireless/mediatek/mt76/mt7615/mac.c static int mt7615_dfs_start_rdd(struct mt7615_dev *dev, int chain)
chain            1304 drivers/net/wireless/mediatek/mt76/mt7615/mac.c 	err = mt7615_mcu_rdd_cmd(dev, RDD_START, chain, MT_RX_SEL0, 0);
chain            1308 drivers/net/wireless/mediatek/mt76/mt7615/mac.c 	return mt7615_mcu_rdd_cmd(dev, RDD_DET_MODE, chain,
chain             697 drivers/net/wireless/mediatek/mt76/mt76x02_mac.c mt76x02_mac_get_rssi(struct mt76x02_dev *dev, s8 rssi, int chain)
chain             701 drivers/net/wireless/mediatek/mt76/mt76x02_mac.c 	rssi += cal->rssi_offset[chain];
chain             193 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c mt76x2_set_rssi_offset(struct mt76x02_dev *dev, int chain, u8 val)
chain             198 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c 		dest[chain] = 0;
chain             202 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c 	dest[chain] = mt76x02_sign_extend_optional(val, 7);
chain             345 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c 			 int chain, int offset)
chain             361 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c 	t->chain[chain].tssi_slope = data[0];
chain             362 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c 	t->chain[chain].tssi_offset = data[1];
chain             363 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c 	t->chain[chain].target_power = data[2];
chain             364 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c 	t->chain[chain].delta =
chain             375 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c 			 int chain, int offset)
chain             413 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c 	t->chain[chain].tssi_slope = data[0];
chain             414 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c 	t->chain[chain].tssi_offset = data[1];
chain             415 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c 	t->chain[chain].target_power = data[2];
chain             416 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c 	t->chain[chain].delta =
chain             449 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.c 		t->target_power = t->chain[0].target_power;
chain              32 drivers/net/wireless/mediatek/mt76/mt76x2/eeprom.h 	} chain[MT_MAX_CHAINS];
chain             160 drivers/net/wireless/mediatek/mt76/mt76x2/phy.c 	txp_0 = txp.chain[0].target_power + txp.chain[0].delta + delta;
chain             161 drivers/net/wireless/mediatek/mt76/mt76x2/phy.c 	txp_1 = txp.chain[1].target_power + txp.chain[1].delta + delta;
chain             176 drivers/net/wireless/mediatek/mt76/mt76x2/phy.c 	dev->target_power_delta[0] = txp_0 - txp.chain[0].target_power;
chain             177 drivers/net/wireless/mediatek/mt76/mt76x2/phy.c 	dev->target_power_delta[1] = txp_1 - txp.chain[0].target_power;
chain             228 drivers/net/wireless/mediatek/mt76/mt76x2/phy.c 		t.slope0 = txp.chain[0].tssi_slope;
chain             229 drivers/net/wireless/mediatek/mt76/mt76x2/phy.c 		t.offset0 = txp.chain[0].tssi_offset;
chain             230 drivers/net/wireless/mediatek/mt76/mt76x2/phy.c 		t.slope1 = txp.chain[1].tssi_slope;
chain             231 drivers/net/wireless/mediatek/mt76/mt76x2/phy.c 		t.offset1 = txp.chain[1].tssi_offset;
chain            3870 drivers/net/wireless/ralink/rt2x00/rt2800lib.c 	u8 chain, reg;
chain            3872 drivers/net/wireless/ralink/rt2x00/rt2800lib.c 	for (chain = 0; chain < rt2x00dev->default_ant.rx_chain_num; chain++) {
chain            3874 drivers/net/wireless/ralink/rt2x00/rt2800lib.c 		rt2x00_set_field8(&reg,  BBP27_RX_CHAIN_SEL, chain);
chain              67 drivers/s390/cio/crw.c 	unsigned int chain;
chain              74 drivers/s390/cio/crw.c 	chain = 0;
chain              78 drivers/s390/cio/crw.c 		if (unlikely(chain > 1)) {
chain              91 drivers/s390/cio/crw.c 			       "chain\n", __func__, chain);
chain              94 drivers/s390/cio/crw.c 			chain = tmp_crw.chn ? chain + 1 : 0;
chain              97 drivers/s390/cio/crw.c 		ccode = stcrw(&crw[chain]);
chain             102 drivers/s390/cio/crw.c 		       crw[chain].slct, crw[chain].oflw, crw[chain].chn,
chain             103 drivers/s390/cio/crw.c 		       crw[chain].rsc, crw[chain].anc, crw[chain].erc,
chain             104 drivers/s390/cio/crw.c 		       crw[chain].rsid);
chain             106 drivers/s390/cio/crw.c 		if (crw[chain].oflw) {
chain             116 drivers/s390/cio/crw.c 			chain = 0;
chain             119 drivers/s390/cio/crw.c 		if (crw[0].chn && !chain) {
chain             120 drivers/s390/cio/crw.c 			chain++;
chain             124 drivers/s390/cio/crw.c 		handler = crw_handlers[crw[chain].rsc];
chain             126 drivers/s390/cio/crw.c 			handler(&crw[0], chain ? &crw[1] : NULL, 0);
chain             129 drivers/s390/cio/crw.c 		chain = crw[chain].chn ? chain + 1 : 0;
chain             315 drivers/s390/cio/vfio_ccw_cp.c 	struct ccwchain *chain;
chain             320 drivers/s390/cio/vfio_ccw_cp.c 	size = ((sizeof(*chain) + 7L) & -8L) +
chain             321 drivers/s390/cio/vfio_ccw_cp.c 		sizeof(*chain->ch_ccw) * len +
chain             322 drivers/s390/cio/vfio_ccw_cp.c 		sizeof(*chain->ch_pa) * len;
chain             323 drivers/s390/cio/vfio_ccw_cp.c 	chain = kzalloc(size, GFP_DMA | GFP_KERNEL);
chain             324 drivers/s390/cio/vfio_ccw_cp.c 	if (!chain)
chain             327 drivers/s390/cio/vfio_ccw_cp.c 	data = (u8 *)chain + ((sizeof(*chain) + 7L) & -8L);
chain             328 drivers/s390/cio/vfio_ccw_cp.c 	chain->ch_ccw = (struct ccw1 *)data;
chain             330 drivers/s390/cio/vfio_ccw_cp.c 	data = (u8 *)(chain->ch_ccw) + sizeof(*chain->ch_ccw) * len;
chain             331 drivers/s390/cio/vfio_ccw_cp.c 	chain->ch_pa = (struct pfn_array *)data;
chain             333 drivers/s390/cio/vfio_ccw_cp.c 	chain->ch_len = len;
chain             335 drivers/s390/cio/vfio_ccw_cp.c 	list_add_tail(&chain->next, &cp->ccwchain_list);
chain             337 drivers/s390/cio/vfio_ccw_cp.c 	return chain;
chain             340 drivers/s390/cio/vfio_ccw_cp.c static void ccwchain_free(struct ccwchain *chain)
chain             342 drivers/s390/cio/vfio_ccw_cp.c 	list_del(&chain->next);
chain             343 drivers/s390/cio/vfio_ccw_cp.c 	kfree(chain);
chain             347 drivers/s390/cio/vfio_ccw_cp.c static void ccwchain_cda_free(struct ccwchain *chain, int idx)
chain             349 drivers/s390/cio/vfio_ccw_cp.c 	struct ccw1 *ccw = chain->ch_ccw + idx;
chain             408 drivers/s390/cio/vfio_ccw_cp.c 	struct ccwchain *chain;
chain             411 drivers/s390/cio/vfio_ccw_cp.c 	list_for_each_entry(chain, &cp->ccwchain_list, next) {
chain             412 drivers/s390/cio/vfio_ccw_cp.c 		ccw_head = chain->ch_iova;
chain             413 drivers/s390/cio/vfio_ccw_cp.c 		if (is_cpa_within_range(tic->cda, ccw_head, chain->ch_len))
chain             420 drivers/s390/cio/vfio_ccw_cp.c static int ccwchain_loop_tic(struct ccwchain *chain,
chain             425 drivers/s390/cio/vfio_ccw_cp.c 	struct ccwchain *chain;
chain             444 drivers/s390/cio/vfio_ccw_cp.c 	chain = ccwchain_alloc(cp, len);
chain             445 drivers/s390/cio/vfio_ccw_cp.c 	if (!chain)
chain             447 drivers/s390/cio/vfio_ccw_cp.c 	chain->ch_iova = cda;
chain             450 drivers/s390/cio/vfio_ccw_cp.c 	memcpy(chain->ch_ccw, cp->guest_cp, len * sizeof(struct ccw1));
chain             453 drivers/s390/cio/vfio_ccw_cp.c 	ret = ccwchain_loop_tic(chain, cp);
chain             456 drivers/s390/cio/vfio_ccw_cp.c 		ccwchain_free(chain);
chain             462 drivers/s390/cio/vfio_ccw_cp.c static int ccwchain_loop_tic(struct ccwchain *chain, struct channel_program *cp)
chain             467 drivers/s390/cio/vfio_ccw_cp.c 	for (i = 0; i < chain->ch_len; i++) {
chain             468 drivers/s390/cio/vfio_ccw_cp.c 		tic = chain->ch_ccw + i;
chain             486 drivers/s390/cio/vfio_ccw_cp.c static int ccwchain_fetch_tic(struct ccwchain *chain,
chain             490 drivers/s390/cio/vfio_ccw_cp.c 	struct ccw1 *ccw = chain->ch_ccw + idx;
chain             506 drivers/s390/cio/vfio_ccw_cp.c static int ccwchain_fetch_direct(struct ccwchain *chain,
chain             519 drivers/s390/cio/vfio_ccw_cp.c 	ccw = chain->ch_ccw + idx;
chain             550 drivers/s390/cio/vfio_ccw_cp.c 	pa = chain->ch_pa + idx;
chain             606 drivers/s390/cio/vfio_ccw_cp.c static int ccwchain_fetch_one(struct ccwchain *chain,
chain             610 drivers/s390/cio/vfio_ccw_cp.c 	struct ccw1 *ccw = chain->ch_ccw + idx;
chain             613 drivers/s390/cio/vfio_ccw_cp.c 		return ccwchain_fetch_tic(chain, idx, cp);
chain             615 drivers/s390/cio/vfio_ccw_cp.c 	return ccwchain_fetch_direct(chain, idx, cp);
chain             676 drivers/s390/cio/vfio_ccw_cp.c 	struct ccwchain *chain, *temp;
chain             683 drivers/s390/cio/vfio_ccw_cp.c 	list_for_each_entry_safe(chain, temp, &cp->ccwchain_list, next) {
chain             684 drivers/s390/cio/vfio_ccw_cp.c 		for (i = 0; i < chain->ch_len; i++) {
chain             685 drivers/s390/cio/vfio_ccw_cp.c 			pfn_array_unpin_free(chain->ch_pa + i, cp->mdev);
chain             686 drivers/s390/cio/vfio_ccw_cp.c 			ccwchain_cda_free(chain, i);
chain             688 drivers/s390/cio/vfio_ccw_cp.c 		ccwchain_free(chain);
chain             731 drivers/s390/cio/vfio_ccw_cp.c 	struct ccwchain *chain;
chain             738 drivers/s390/cio/vfio_ccw_cp.c 	list_for_each_entry(chain, &cp->ccwchain_list, next) {
chain             739 drivers/s390/cio/vfio_ccw_cp.c 		len = chain->ch_len;
chain             741 drivers/s390/cio/vfio_ccw_cp.c 			ret = ccwchain_fetch_one(chain, idx, cp);
chain             750 drivers/s390/cio/vfio_ccw_cp.c 	chain->ch_len = idx;
chain             751 drivers/s390/cio/vfio_ccw_cp.c 	list_for_each_entry_continue(chain, &cp->ccwchain_list, next) {
chain             752 drivers/s390/cio/vfio_ccw_cp.c 		chain->ch_len = 0;
chain             770 drivers/s390/cio/vfio_ccw_cp.c 	struct ccwchain *chain;
chain             786 drivers/s390/cio/vfio_ccw_cp.c 	chain = list_first_entry(&cp->ccwchain_list, struct ccwchain, next);
chain             787 drivers/s390/cio/vfio_ccw_cp.c 	cpa = chain->ch_ccw;
chain             809 drivers/s390/cio/vfio_ccw_cp.c 	struct ccwchain *chain;
chain             822 drivers/s390/cio/vfio_ccw_cp.c 	list_for_each_entry(chain, &cp->ccwchain_list, next) {
chain             823 drivers/s390/cio/vfio_ccw_cp.c 		ccw_head = (u32)(u64)chain->ch_ccw;
chain             828 drivers/s390/cio/vfio_ccw_cp.c 		if (is_cpa_within_range(cpa, ccw_head, chain->ch_len + 1)) {
chain             835 drivers/s390/cio/vfio_ccw_cp.c 			cpa = chain->ch_iova + (cpa - ccw_head);
chain             853 drivers/s390/cio/vfio_ccw_cp.c 	struct ccwchain *chain;
chain             859 drivers/s390/cio/vfio_ccw_cp.c 	list_for_each_entry(chain, &cp->ccwchain_list, next) {
chain             860 drivers/s390/cio/vfio_ccw_cp.c 		for (i = 0; i < chain->ch_len; i++)
chain             861 drivers/s390/cio/vfio_ccw_cp.c 			if (pfn_array_iova_pinned(chain->ch_pa + i, iova))
chain             791 drivers/s390/scsi/zfcp_fc.c 	int chain, max_entries, buf_num, max_bytes;
chain             795 drivers/s390/scsi/zfcp_fc.c 	chain = adapter->adapter_features & FSF_FEATURE_ELS_CT_CHAINED_SBALS;
chain             796 drivers/s390/scsi/zfcp_fc.c 	buf_num = chain ? ZFCP_FC_GPN_FT_NUM_BUFS : 1;
chain             797 drivers/s390/scsi/zfcp_fc.c 	max_entries = chain ? ZFCP_FC_GPN_FT_MAX_ENT : ZFCP_FC_GPN_FT_ENT_PAGE;
chain             798 drivers/s390/scsi/zfcp_fc.c 	max_bytes = chain ? ZFCP_FC_GPN_FT_MAX_SIZE : ZFCP_FC_CT_SIZE_PAGE;
chain              69 drivers/scsi/aha1542.c 	struct chain *chain;
chain             248 drivers/scsi/aha1542.c 	size_t len = scsi_sg_count(cmd) * sizeof(struct chain);
chain             250 drivers/scsi/aha1542.c 	if (acmd->chain) {
chain             252 drivers/scsi/aha1542.c 		kfree(acmd->chain);
chain             255 drivers/scsi/aha1542.c 	acmd->chain = NULL;
chain             425 drivers/scsi/aha1542.c 		size_t len = sg_count * sizeof(struct chain);
chain             427 drivers/scsi/aha1542.c 		acmd->chain = kmalloc(len, GFP_DMA);
chain             428 drivers/scsi/aha1542.c 		if (!acmd->chain)
chain             430 drivers/scsi/aha1542.c 		acmd->chain_handle = dma_map_single(sh->dma_dev, acmd->chain,
chain             485 drivers/scsi/aha1542.c 			any2scsi(acmd->chain[i].dataptr, sg_dma_address(sg));
chain             486 drivers/scsi/aha1542.c 			any2scsi(acmd->chain[i].datalen, sg_dma_len(sg));
chain             488 drivers/scsi/aha1542.c 		any2scsi(ccb[mbo].datalen, sg_count * sizeof(struct chain));
chain             491 drivers/scsi/aha1542.c 		shost_printk(KERN_DEBUG, sh, "cptr %p: ", acmd->chain);
chain             492 drivers/scsi/aha1542.c 		print_hex_dump_bytes("cptr: ", DUMP_PREFIX_NONE, acmd->chain, 18);
chain             514 drivers/scsi/aha1542.c 	kfree(acmd->chain);
chain             515 drivers/scsi/aha1542.c 	acmd->chain = NULL;
chain             611 drivers/scsi/esas2r/esas2r.h 			struct atto_vda_sge *chain;
chain             615 drivers/scsi/esas2r/esas2r.h 			struct atto_physical_region_description *chain;
chain            1196 drivers/scsi/esas2r/esas2r.h 	sgc->sge.a64.chain = NULL;
chain             268 drivers/scsi/esas2r/esas2r_io.c 			if (sgc->sge.a64.chain) {
chain             269 drivers/scsi/esas2r/esas2r_io.c 				sgc->sge.a64.chain->length |=
chain             299 drivers/scsi/esas2r/esas2r_io.c 			sgc->sge.a64.chain = sgc->sge.a64.last;
chain             334 drivers/scsi/esas2r/esas2r_io.c 	if (sgc->sge.a64.chain) {
chain             335 drivers/scsi/esas2r/esas2r_io.c 		sgc->sge.a64.chain->length |= cpu_to_le32(
chain             432 drivers/scsi/esas2r/esas2r_io.c 			if (sgc->sge.prd.chain) {
chain             439 drivers/scsi/esas2r/esas2r_io.c 				sgc->sge.prd.chain->ctl_len |= cpu_to_le32(
chain             467 drivers/scsi/esas2r/esas2r_io.c 			sgc->sge.prd.chain = sgc->sge.prd.curr;
chain             469 drivers/scsi/esas2r/esas2r_io.c 			sgc->sge.prd.chain->ctl_len = cpu_to_le32(PRD_CHAIN);
chain             470 drivers/scsi/esas2r/esas2r_io.c 			sgc->sge.prd.chain->address =
chain             513 drivers/scsi/esas2r/esas2r_io.c 		if (sgc->sge.prd.chain) {
chain             514 drivers/scsi/esas2r/esas2r_io.c 			sgc->sge.prd.chain->ctl_len |=
chain             624 drivers/scsi/esas2r/esas2r_io.c 		sgc->sge.prd.chain = NULL;
chain            2388 drivers/scsi/mpt3sas/mpt3sas_base.c 	void *sg_local, *chain;
chain            2449 drivers/scsi/mpt3sas/mpt3sas_base.c 	chain = chain_req->chain_buffer;
chain            2465 drivers/scsi/mpt3sas/mpt3sas_base.c 		sg_local = chain;
chain            2489 drivers/scsi/mpt3sas/mpt3sas_base.c 		chain = chain_req->chain_buffer;
chain            2533 drivers/scsi/mpt3sas/mpt3sas_base.c 	void *sg_local, *chain;
chain            2592 drivers/scsi/mpt3sas/mpt3sas_base.c 	chain = chain_req->chain_buffer;
chain            2606 drivers/scsi/mpt3sas/mpt3sas_base.c 		sg_local = chain;
chain            2623 drivers/scsi/mpt3sas/mpt3sas_base.c 		chain = chain_req->chain_buffer;
chain             801 drivers/staging/exfat/exfat.h void exfat_chain_cont_cluster(struct super_block *sb, u32 chain, s32 len);
chain             488 drivers/staging/exfat/exfat_core.c void exfat_chain_cont_cluster(struct super_block *sb, u32 chain, s32 len)
chain             494 drivers/staging/exfat/exfat_core.c 		if (FAT_write(sb, chain, chain + 1) < 0)
chain             496 drivers/staging/exfat/exfat_core.c 		chain++;
chain             499 drivers/staging/exfat/exfat_core.c 	FAT_write(sb, chain, CLUSTER_32(~0));
chain             544 drivers/usb/cdns3/gadget.c 		u8 chain;
chain             547 drivers/usb/cdns3/gadget.c 		chain = !!(priv_req->flags & REQUEST_INTERNAL_CH);
chain             557 drivers/usb/cdns3/gadget.c 		if (!chain)
chain              35 drivers/usb/dwc3/ep0.c 		dma_addr_t buf_dma, u32 len, u32 type, bool chain)
chain              43 drivers/usb/dwc3/ep0.c 	if (chain)
chain              54 drivers/usb/dwc3/ep0.c 	if (chain)
chain             911 drivers/usb/dwc3/gadget.c 		dma_addr_t dma, unsigned length, unsigned chain, unsigned node,
chain             999 drivers/usb/dwc3/gadget.c 	if ((!no_interrupt && !chain) ||
chain            1003 drivers/usb/dwc3/gadget.c 	if (chain)
chain            1024 drivers/usb/dwc3/gadget.c 		struct dwc3_request *req, unsigned chain, unsigned node)
chain            1051 drivers/usb/dwc3/gadget.c 	__dwc3_prepare_one_trb(dep, trb, dma, length, chain, node,
chain            1069 drivers/usb/dwc3/gadget.c 		unsigned chain = true;
chain            1079 drivers/usb/dwc3/gadget.c 			chain = false;
chain            1081 drivers/usb/dwc3/gadget.c 		if (rem && usb_endpoint_dir_out(dep->endpoint.desc) && !chain) {
chain            1099 drivers/usb/dwc3/gadget.c 			dwc3_prepare_one_trb(dep, req, chain, i);
chain            1109 drivers/usb/dwc3/gadget.c 		if (chain)
chain            2407 drivers/usb/dwc3/gadget.c 		const struct dwc3_event_depevt *event, int status, int chain)
chain            2426 drivers/usb/dwc3/gadget.c 	if (chain && (trb->ctrl & DWC3_TRB_CTRL_HWO))
chain            2459 drivers/usb/dwc3/gadget.c 	if (event->status & DEPEVT_STATUS_SHORT && !chain)
chain             208 drivers/usb/gadget/udc/mv_u3d.h 	u32	chain:1;	/* associate this TRB with the
chain             314 drivers/usb/gadget/udc/mv_u3d.h 	unsigned		chain;	   /* TRB chain or not */
chain             192 drivers/usb/gadget/udc/mv_u3d_core.c 	if (!req->chain)
chain             327 drivers/usb/gadget/udc/mv_u3d_core.c 	trb_hw->ctrl.chain = 0;
chain             385 drivers/usb/gadget/udc/mv_u3d_core.c 		trb->trb_hw->ctrl.chain = 0;
chain             387 drivers/usb/gadget/udc/mv_u3d_core.c 		trb->trb_hw->ctrl.chain = 1;
chain             424 drivers/usb/gadget/udc/mv_u3d_core.c 		req->chain = 0;
chain             469 drivers/usb/gadget/udc/mv_u3d_core.c 		req->chain = 1;
chain             207 drivers/usb/host/xhci-ring.c 	u32 chain;
chain             210 drivers/usb/host/xhci-ring.c 	chain = le32_to_cpu(ring->enqueue->generic.field[3]) & TRB_CHAIN;
chain             226 drivers/usb/host/xhci-ring.c 		if (!chain && !more_trbs_coming)
chain             237 drivers/usb/host/xhci-ring.c 			next->link.control |= cpu_to_le32(chain);
chain              47 drivers/video/fbdev/via/via_aux.c 	list_for_each_entry_safe(pos, n, &bus->drivers, chain) {
chain              51 drivers/video/fbdev/via/via_aux.c 		list_del(&pos->chain);
chain              67 drivers/video/fbdev/via/via_aux.c 	list_for_each_entry(pos, &bus->drivers, chain) {
chain              24 drivers/video/fbdev/via/via_aux.h 	struct list_head chain;		/* chain to support multiple drivers */
chain              51 drivers/video/fbdev/via/via_aux.h 	list_add_tail(&data->chain, &data->bus->drivers);
chain             391 fs/affs/inode.c 		__be32 chain;
chain             392 fs/affs/inode.c 	       	chain = AFFS_TAIL(sb, inode_bh)->link_chain;
chain             394 fs/affs/inode.c 		AFFS_TAIL(sb, bh)->link_chain = chain;
chain             396 fs/affs/inode.c 		affs_adjust_checksum(inode_bh, block - be32_to_cpu(chain));
chain             237 fs/ext2/inode.c 				 Indirect chain[4],
chain             241 fs/ext2/inode.c 	Indirect *p = chain;
chain             246 fs/ext2/inode.c 	add_chain (chain, NULL, EXT2_I(inode)->i_data + *offsets);
chain             254 fs/ext2/inode.c 		if (!verify_chain(chain, p))
chain             630 fs/ext2/inode.c 	Indirect chain[4];
chain             647 fs/ext2/inode.c 	partial = ext2_get_branch(inode, depth, offsets, chain, &err);
chain             650 fs/ext2/inode.c 		first_block = le32_to_cpu(chain[depth - 1].key);
chain             656 fs/ext2/inode.c 			if (!verify_chain(chain, chain + depth - 1)) {
chain             665 fs/ext2/inode.c 				partial = chain + depth - 1;
chain             668 fs/ext2/inode.c 			blk = le32_to_cpu(*(chain[depth-1].p + count));
chain             695 fs/ext2/inode.c 	if (err == -EAGAIN || !verify_chain(chain, partial)) {
chain             696 fs/ext2/inode.c 		while (partial > chain) {
chain             700 fs/ext2/inode.c 		partial = ext2_get_branch(inode, depth, offsets, chain, &err);
chain             723 fs/ext2/inode.c 	indirect_blks = (chain + depth) - partial - 1;
chain             734 fs/ext2/inode.c 				offsets + (partial - chain), partial);
chain             747 fs/ext2/inode.c 				   le32_to_cpu(chain[depth-1].key),
chain             755 fs/ext2/inode.c 				le32_to_cpu(chain[depth-1].key), count,
chain             771 fs/ext2/inode.c 	partial = chain + depth - 1;	/* the whole chain */
chain             773 fs/ext2/inode.c 	while (partial > chain) {
chain             778 fs/ext2/inode.c 		*bno = le32_to_cpu(chain[depth-1].key);
chain            1051 fs/ext2/inode.c 				Indirect chain[4],
chain            1060 fs/ext2/inode.c 	partial = ext2_get_branch(inode, k, offsets, chain, &err);
chain            1062 fs/ext2/inode.c 		partial = chain + k-1;
chain            1072 fs/ext2/inode.c 	for (p=partial; p>chain && all_zeroes((__le32*)p->bh->b_data,p->p); p--)
chain            1080 fs/ext2/inode.c 	if (p == chain + k - 1 && p > chain) {
chain            1189 fs/ext2/inode.c 	Indirect chain[4];
chain            1218 fs/ext2/inode.c 	partial = ext2_find_shared(inode, n, offsets, chain, &nr);
chain            1221 fs/ext2/inode.c 		if (partial == chain)
chain            1225 fs/ext2/inode.c 		ext2_free_branches(inode, &nr, &nr+1, (chain+n-1) - partial);
chain            1228 fs/ext2/inode.c 	while (partial > chain) {
chain            1232 fs/ext2/inode.c 				   (chain+n-1) - partial);
chain             146 fs/ext4/indirect.c 				 Indirect chain[4], int *err)
chain             149 fs/ext4/indirect.c 	Indirect *p = chain;
chain             155 fs/ext4/indirect.c 	add_chain(chain, NULL, EXT4_I(inode)->i_data + *offsets);
chain             516 fs/ext4/indirect.c 	Indirect chain[4];
chain             533 fs/ext4/indirect.c 	partial = ext4_get_branch(inode, depth, offsets, chain, &err);
chain             537 fs/ext4/indirect.c 		first_block = le32_to_cpu(chain[depth - 1].key);
chain             543 fs/ext4/indirect.c 			blk = le32_to_cpu(*(chain[depth-1].p + count));
chain             565 fs/ext4/indirect.c 		for (i = partial - chain + 1; i < depth; i++)
chain             601 fs/ext4/indirect.c 	indirect_blks = (chain + depth) - partial - 1;
chain             614 fs/ext4/indirect.c 				offsets + (partial - chain), partial);
chain             634 fs/ext4/indirect.c 	map->m_pblk = le32_to_cpu(chain[depth-1].key);
chain             640 fs/ext4/indirect.c 	partial = chain + depth - 1;	/* the whole chain */
chain             642 fs/ext4/indirect.c 	while (partial > chain) {
chain             764 fs/ext4/indirect.c 				  ext4_lblk_t offsets[4], Indirect chain[4],
chain             774 fs/ext4/indirect.c 	partial = ext4_get_branch(inode, k, offsets, chain, &err);
chain             777 fs/ext4/indirect.c 		partial = chain + k-1;
chain             785 fs/ext4/indirect.c 	for (p = partial; (p > chain) && all_zeroes((__le32 *) p->bh->b_data, p->p); p--)
chain             793 fs/ext4/indirect.c 	if (p == chain + k - 1 && p > chain) {
chain            1101 fs/ext4/indirect.c 	Indirect chain[4];
chain            1142 fs/ext4/indirect.c 	partial = ext4_find_shared(inode, n, offsets, chain, &nr);
chain            1145 fs/ext4/indirect.c 		if (partial == chain) {
chain            1148 fs/ext4/indirect.c 					   &nr, &nr+1, (chain+n-1) - partial);
chain            1159 fs/ext4/indirect.c 					partial->p+1, (chain+n-1) - partial);
chain            1163 fs/ext4/indirect.c 	while (partial > chain) {
chain            1166 fs/ext4/indirect.c 				   (chain+n-1) - partial);
chain            1217 fs/ext4/indirect.c 	Indirect chain[4], chain2[4];
chain            1261 fs/ext4/indirect.c 		partial = p = ext4_find_shared(inode, n, offsets, chain, &nr);
chain            1263 fs/ext4/indirect.c 			if (partial == chain) {
chain            1266 fs/ext4/indirect.c 					   &nr, &nr+1, (chain+n-1) - partial);
chain            1273 fs/ext4/indirect.c 					partial->p+1, (chain+n-1) - partial);
chain            1281 fs/ext4/indirect.c 		while (partial > chain) {
chain            1285 fs/ext4/indirect.c 				(chain+n-1) - partial);
chain            1326 fs/ext4/indirect.c 	partial = p = ext4_find_shared(inode, n, offsets, chain, &nr);
chain            1331 fs/ext4/indirect.c 		int level = min(partial - chain, partial2 - chain2);
chain            1343 fs/ext4/indirect.c 			if (partial == chain) {
chain            1347 fs/ext4/indirect.c 						   (chain+n-1) - partial);
chain            1355 fs/ext4/indirect.c 						   (chain+n-1) - partial);
chain            1370 fs/ext4/indirect.c 	while (partial > chain || partial2 > chain2) {
chain            1371 fs/ext4/indirect.c 		int depth = (chain+n-1) - partial;
chain            1374 fs/ext4/indirect.c 		if (partial > chain && partial2 > chain2 &&
chain            1383 fs/ext4/indirect.c 					   (chain+n-1) - partial);
chain            1394 fs/ext4/indirect.c 		if (partial > chain && depth <= depth2) {
chain            1398 fs/ext4/indirect.c 					   (chain+n-1) - partial);
chain            1411 fs/ext4/indirect.c 	while (p && p > chain) {
chain              37 fs/lockd/host.c #define for_each_host(host, chain, table) \
chain              38 fs/lockd/host.c 	for ((chain) = (table); \
chain              39 fs/lockd/host.c 	     (chain) < (table) + NLM_HOST_NRHASH; ++(chain)) \
chain              40 fs/lockd/host.c 		hlist_for_each_entry((host), (chain), h_hash)
chain              42 fs/lockd/host.c #define for_each_host_safe(host, next, chain, table) \
chain              43 fs/lockd/host.c 	for ((chain) = (table); \
chain              44 fs/lockd/host.c 	     (chain) < (table) + NLM_HOST_NRHASH; ++(chain)) \
chain              46 fs/lockd/host.c 						(chain), h_hash)
chain             237 fs/lockd/host.c 	struct hlist_head *chain;
chain             248 fs/lockd/host.c 	chain = &nlm_client_hosts[nlm_hash_address(sap)];
chain             249 fs/lockd/host.c 	hlist_for_each_entry(host, chain, h_hash) {
chain             274 fs/lockd/host.c 	hlist_add_head(&host->h_hash, chain);
chain             332 fs/lockd/host.c 	struct hlist_head *chain;
chain             359 fs/lockd/host.c 	chain = &nlm_server_hosts[nlm_hash_address(ni.sap)];
chain             360 fs/lockd/host.c 	hlist_for_each_entry(host, chain, h_hash) {
chain             379 fs/lockd/host.c 		hlist_add_head(&host->h_hash, chain);
chain             393 fs/lockd/host.c 	hlist_add_head(&host->h_hash, chain);
chain             527 fs/lockd/host.c 	struct hlist_head *chain;
chain             530 fs/lockd/host.c 	for_each_host(host, chain, cache) {
chain             582 fs/lockd/host.c 	struct hlist_head *chain;
chain             601 fs/lockd/host.c 	for_each_host(host, chain, nlm_server_hosts) {
chain             613 fs/lockd/host.c 	struct hlist_head *chain;
chain             621 fs/lockd/host.c 	for_each_host(host, chain, nlm_server_hosts) {
chain             656 fs/lockd/host.c 	struct hlist_head *chain;
chain             662 fs/lockd/host.c 	for_each_host(host, chain, nlm_server_hosts) {
chain             671 fs/lockd/host.c 	for_each_host_safe(host, next, chain, nlm_server_hosts) {
chain              33 fs/minix/itree_common.c 					Indirect chain[DEPTH],
chain              37 fs/minix/itree_common.c 	Indirect *p = chain;
chain              42 fs/minix/itree_common.c 	add_chain (chain, NULL, i_data(inode) + *offsets);
chain              50 fs/minix/itree_common.c 		if (!verify_chain(chain, p))
chain             110 fs/minix/itree_common.c 				     Indirect chain[DEPTH],
chain             119 fs/minix/itree_common.c 	if (!verify_chain(chain, where-1) || *where->p)
chain             151 fs/minix/itree_common.c 	Indirect chain[DEPTH];
chain             160 fs/minix/itree_common.c 	partial = get_branch(inode, depth, offsets, chain, &err);
chain             165 fs/minix/itree_common.c 		map_bh(bh, inode->i_sb, block_to_cpu(chain[depth-1].key));
chain             167 fs/minix/itree_common.c 		partial = chain+depth-1; /* the whole chain */
chain             174 fs/minix/itree_common.c 		while (partial > chain) {
chain             190 fs/minix/itree_common.c 	left = (chain + depth) - partial;
chain             191 fs/minix/itree_common.c 	err = alloc_branch(inode, left, offsets+(partial-chain), partial);
chain             195 fs/minix/itree_common.c 	if (splice_branch(inode, chain, partial, left) < 0)
chain             202 fs/minix/itree_common.c 	while (partial > chain) {
chain             220 fs/minix/itree_common.c 				Indirect chain[DEPTH],
chain             229 fs/minix/itree_common.c 	partial = get_branch(inode, k, offsets, chain, &err);
chain             233 fs/minix/itree_common.c 		partial = chain + k-1;
chain             238 fs/minix/itree_common.c 	for (p=partial;p>chain && all_zeroes((block_t*)p->bh->b_data,p->p);p--)
chain             240 fs/minix/itree_common.c 	if (p == chain + k - 1 && p > chain) {
chain             299 fs/minix/itree_common.c 	Indirect chain[DEPTH];
chain             320 fs/minix/itree_common.c 	partial = find_shared(inode, n, offsets, chain, &nr);
chain             322 fs/minix/itree_common.c 		if (partial == chain)
chain             326 fs/minix/itree_common.c 		free_branches(inode, &nr, &nr+1, (chain+n-1) - partial);
chain             329 fs/minix/itree_common.c 	while (partial > chain) {
chain             331 fs/minix/itree_common.c 				(chain+n-1) - partial);
chain             688 fs/namespace.c 	struct hlist_head *chain = mp_hash(dentry);
chain             691 fs/namespace.c 	hlist_for_each_entry(mp, chain, m_hash) {
chain              54 fs/ocfs2/ocfs2_ioctl.h 	__u16 chain;		/* Chain for this group */
chain             797 fs/ocfs2/ocfs2_trace.h 	TP_PROTO(unsigned long long i_blkno, unsigned int chain,
chain             800 fs/ocfs2/ocfs2_trace.h 	TP_ARGS(i_blkno, chain, bg_blkno, prev_blkno),
chain             803 fs/ocfs2/ocfs2_trace.h 		__field(unsigned int, chain)
chain             809 fs/ocfs2/ocfs2_trace.h 		__entry->chain = chain;
chain             814 fs/ocfs2/ocfs2_trace.h 		  __entry->i_blkno, __entry->chain, __entry->bg_blkno,
chain              92 fs/ocfs2/resize.c 	u16 chain, num_bits, backups = 0;
chain             137 fs/ocfs2/resize.c 	chain = le16_to_cpu(group->bg_chain);
chain             138 fs/ocfs2/resize.c 	cr = (&cl->cl_recs[chain]);
chain             386 fs/ocfs2/resize.c 	if (le16_to_cpu(gd->bg_chain) != input->chain)
chain             390 fs/ocfs2/resize.c 		     le16_to_cpu(gd->bg_chain), input->chain);
chain             423 fs/ocfs2/resize.c 	else if (input->chain >= cl_count)
chain             425 fs/ocfs2/resize.c 	else if (next_free != cl_count && next_free != input->chain)
chain             510 fs/ocfs2/resize.c 			       input->chain, input->clusters, input->frees);
chain             521 fs/ocfs2/resize.c 	cr = &cl->cl_recs[input->chain];
chain             543 fs/ocfs2/resize.c 	if (input->chain == le16_to_cpu(cl->cl_next_free_rec)) {
chain             105 fs/ocfs2/suballoc.c 				    u16 chain);
chain            1405 fs/ocfs2/suballoc.c 				    u16 chain)
chain            1421 fs/ocfs2/suballoc.c 		(unsigned long long)le64_to_cpu(fe->i_blkno), chain,
chain            1442 fs/ocfs2/suballoc.c 	bg->bg_next_group = fe->id2.i_chain.cl_recs[chain].c_blkno;
chain            1450 fs/ocfs2/suballoc.c 	fe->id2.i_chain.cl_recs[chain].c_blkno = bg->bg_blkno;
chain            1580 fs/ocfs2/suballoc.c 				       u16 chain)
chain            1596 fs/ocfs2/suballoc.c 	le32_add_cpu(&cl->cl_recs[chain].c_free, -num_bits);
chain            1606 fs/ocfs2/suballoc.c 				       u16 chain)
chain            1615 fs/ocfs2/suballoc.c 	le32_add_cpu(&cl->cl_recs[chain].c_free, num_bits);
chain            1742 fs/ocfs2/suballoc.c 	u16 chain;
chain            1751 fs/ocfs2/suballoc.c 	chain = ac->ac_chain;
chain            1754 fs/ocfs2/suballoc.c 		bits_wanted, chain);
chain            1757 fs/ocfs2/suballoc.c 					     le64_to_cpu(cl->cl_recs[chain].c_blkno),
chain            1828 fs/ocfs2/suballoc.c 						  prev_group_bh, chain);
chain            1840 fs/ocfs2/suballoc.c 						  chain);
chain            1854 fs/ocfs2/suballoc.c 					ac->ac_bh, res->sr_bits, chain);
chain            2128 fs/ocfs2/suballoc.c 	u16 chain;
chain            2150 fs/ocfs2/suballoc.c 	chain = le16_to_cpu(bg->bg_chain);
chain            2154 fs/ocfs2/suballoc.c 					       chain);
chain            2168 fs/ocfs2/suballoc.c 					       ac->ac_bh, res->sr_bits, chain);
chain              79 fs/ocfs2/suballoc.h 			 u16 chain);
chain              83 fs/ocfs2/suballoc.h 			 u16 chain);
chain              91 fs/sysv/itree.c 			    Indirect chain[],
chain              95 fs/sysv/itree.c 	Indirect *p = chain;
chain              99 fs/sysv/itree.c 	add_chain(chain, NULL, SYSV_I(inode)->i_data + *offsets);
chain             107 fs/sysv/itree.c 		if (!verify_chain(chain, p))
chain             169 fs/sysv/itree.c 				Indirect chain[],
chain             177 fs/sysv/itree.c 	if (!verify_chain(chain, where-1) || *where->p)
chain             207 fs/sysv/itree.c 	Indirect chain[DEPTH];
chain             218 fs/sysv/itree.c 	partial = get_branch(inode, depth, offsets, chain, &err);
chain             225 fs/sysv/itree.c 					chain[depth-1].key));
chain             227 fs/sysv/itree.c 		partial = chain+depth-1; /* the whole chain */
chain             234 fs/sysv/itree.c 		while (partial > chain) {
chain             250 fs/sysv/itree.c 	left = (chain + depth) - partial;
chain             251 fs/sysv/itree.c 	err = alloc_branch(inode, left, offsets+(partial-chain), partial);
chain             255 fs/sysv/itree.c 	if (splice_branch(inode, chain, partial, left) < 0)
chain             262 fs/sysv/itree.c 	while (partial > chain) {
chain             280 fs/sysv/itree.c 				Indirect chain[],
chain             291 fs/sysv/itree.c 	partial = get_branch(inode, k, offsets, chain, &err);
chain             293 fs/sysv/itree.c 		partial = chain + k-1;
chain             302 fs/sysv/itree.c 	for (p=partial; p>chain && all_zeroes((sysv_zone_t*)p->bh->b_data,p->p); p--)
chain             310 fs/sysv/itree.c 	if (p == chain + k - 1 && p > chain) {
chain             368 fs/sysv/itree.c 	Indirect chain[DEPTH];
chain             394 fs/sysv/itree.c 	partial = find_shared(inode, n, offsets, chain, &nr);
chain             397 fs/sysv/itree.c 		if (partial == chain)
chain             401 fs/sysv/itree.c 		free_branches(inode, &nr, &nr+1, (chain+n-1) - partial);
chain             404 fs/sysv/itree.c 	while (partial > chain) {
chain             406 fs/sysv/itree.c 				(chain+n-1) - partial);
chain             131 fs/ufs/inode.c 	Indirect chain[4], *q = chain;
chain             149 fs/ufs/inode.c 	if (!grow_chain32(ufsi, NULL, &ufsi->i_u1.i_data[*p++], chain, q))
chain             163 fs/ufs/inode.c 		if (!grow_chain32(ufsi, bh, ptr, chain, ++q))
chain             172 fs/ufs/inode.c 	if (!grow_chain64(ufsi, NULL, &ufsi->i_u1.u2_i_data[*p++], chain, q))
chain             187 fs/ufs/inode.c 		if (!grow_chain64(ufsi, bh, ptr, chain, ++q))
chain             196 fs/ufs/inode.c 	while (q > chain) {
chain             203 fs/ufs/inode.c 	while (q > chain) {
chain             117 include/drm/drm_syncobj.h 			   struct dma_fence_chain *chain,
chain              68 include/linux/dma-fence-chain.h void dma_fence_chain_init(struct dma_fence_chain *chain,
chain              57 include/linux/platform_data/dma-iop32x.h 	struct list_head chain;
chain             285 include/linux/skbuff.h 	__u32 chain;
chain              39 include/net/inet_hashtables.h 	struct hlist_nulls_head chain;
chain             103 include/net/inet_hashtables.h 	struct hlist_head	chain;
chain             110 include/net/ip6_fib.h 	struct hlist_head	chain;
chain              73 include/net/ip_fib.h 	struct fib_nh_exception __rcu	*chain;
chain              79 include/net/netfilter/nf_tables.h 	struct nft_chain		*chain;
chain             172 include/net/netfilter/nf_tables.h 	struct nft_chain		*chain;
chain             489 include/net/netfilter/nf_tables.h 	const struct nft_chain		*chain;
chain             924 include/net/netfilter/nf_tables.h int nft_chain_validate(const struct nft_ctx *ctx, const struct nft_chain *chain);
chain             956 include/net/netfilter/nf_tables.h int nft_chain_validate_dependency(const struct nft_chain *chain,
chain             958 include/net/netfilter/nf_tables.h int nft_chain_validate_hooks(const struct nft_chain *chain,
chain             984 include/net/netfilter/nf_tables.h 	struct nft_chain		chain;
chain             989 include/net/netfilter/nf_tables.h static inline struct nft_base_chain *nft_base_chain(const struct nft_chain *chain)
chain             991 include/net/netfilter/nf_tables.h 	return container_of(chain, struct nft_base_chain, chain);
chain             994 include/net/netfilter/nf_tables.h static inline bool nft_is_base_chain(const struct nft_chain *chain)
chain             996 include/net/netfilter/nf_tables.h 	return chain->flags & NFT_BASE_CHAIN;
chain            1209 include/net/netfilter/nf_tables.h 	const struct nft_chain		*chain;
chain              41 include/net/pkt_cls.h void tcf_chain_put_by_act(struct tcf_chain *chain);
chain              43 include/net/pkt_cls.h 				     struct tcf_chain *chain);
chain              44 include/net/pkt_cls.h struct tcf_proto *tcf_get_next_proto(struct tcf_chain *chain,
chain             158 include/net/pkt_cls.h 	struct Qdisc *q = tp->chain->block->q;
chain             182 include/net/pkt_cls.h 	struct Qdisc *q = tp->chain->block->q;
chain             634 include/net/pkt_cls.h 	cls_common->chain_index = tp->chain->index;
chain             324 include/net/sch_generic.h 						struct tcf_chain *chain,
chain             364 include/net/sch_generic.h 	struct tcf_chain	*chain;
chain             422 include/net/sch_generic.h 		struct tcf_chain *chain;
chain             431 include/net/sch_generic.h static inline bool lockdep_tcf_chain_is_locked(struct tcf_chain *chain)
chain             433 include/net/sch_generic.h 	return lockdep_is_held(&chain->filter_chain_lock);
chain             441 include/net/sch_generic.h static inline bool lockdep_tcf_chain_is_locked(struct tcf_block *chain)
chain             452 include/net/sch_generic.h #define tcf_chain_dereference(p, chain)					\
chain             453 include/net/sch_generic.h 	rcu_dereference_protected(p, lockdep_tcf_chain_is_locked(chain))
chain              94 include/net/sctp/structs.h 	struct hlist_head	chain;
chain             100 include/net/sctp/structs.h 	struct hlist_head	chain;
chain             377 include/rdma/uverbs_ioctl.h 		const struct uapi_definition *chain;
chain             453 include/rdma/uverbs_ioctl.h 		.kind = UAPI_DEF_CHAIN, .chain = _def_var,                     \
chain             212 include/uapi/linux/virtio_crypto.h 		struct virtio_crypto_alg_chain_session_req chain;
chain             378 include/uapi/linux/virtio_crypto.h 		struct virtio_crypto_alg_chain_data_req chain;
chain             256 kernel/futex.c 	struct plist_head chain;
chain             793 kernel/futex.c 	plist_for_each_entry(this, &hb->chain, list) {
chain            1530 kernel/futex.c 	plist_del(&q->list, &hb->chain);
chain            1695 kernel/futex.c 	plist_for_each_entry_safe(this, next, &hb->chain, list) {
chain            1825 kernel/futex.c 	plist_for_each_entry_safe(this, next, &hb1->chain, list) {
chain            1839 kernel/futex.c 		plist_for_each_entry_safe(this, next, &hb2->chain, list) {
chain            1880 kernel/futex.c 	if (likely(&hb1->chain != &hb2->chain)) {
chain            1881 kernel/futex.c 		plist_del(&q->list, &hb1->chain);
chain            1884 kernel/futex.c 		plist_add(&q->list, &hb2->chain);
chain            2199 kernel/futex.c 	plist_for_each_entry_safe(this, next, &hb1->chain, list) {
chain            2361 kernel/futex.c 	plist_add(&q->list, &hb->chain);
chain            3258 kernel/futex.c 		plist_del(&q->list, &hb->chain);
chain            4193 kernel/futex.c 		plist_head_init(&futex_queues[i].chain);
chain             353 kernel/locking/lockdep.c #define __chainhashfn(chain)	hash_long(chain, CHAINHASH_BITS)
chain             354 kernel/locking/lockdep.c #define chainhashentry(chain)	(chainhash_table + __chainhashfn((chain)))
chain             943 kernel/locking/lockdep.c static bool check_lock_chain_key(struct lock_chain *chain)
chain             949 kernel/locking/lockdep.c 	for (i = chain->base; i < chain->base + chain->depth; i++)
chain             955 kernel/locking/lockdep.c 	if (chain->chain_key != chain_key) {
chain             957 kernel/locking/lockdep.c 		       (unsigned long long)(chain - lock_chains),
chain             958 kernel/locking/lockdep.c 		       (unsigned long long)chain->chain_key,
chain             982 kernel/locking/lockdep.c 	struct lock_chain *chain;
chain            1011 kernel/locking/lockdep.c 		hlist_for_each_entry_rcu(chain, head, entry) {
chain            1012 kernel/locking/lockdep.c 			if (!check_lock_chain_key(chain))
chain            2632 kernel/locking/lockdep.c struct lock_class *lock_chain_get_class(struct lock_chain *chain, int i)
chain            2634 kernel/locking/lockdep.c 	return lock_classes + chain_hlocks[chain->base + i];
chain            2691 kernel/locking/lockdep.c static void print_chain_keys_chain(struct lock_chain *chain)
chain            2697 kernel/locking/lockdep.c 	printk("depth: %u\n", chain->depth);
chain            2698 kernel/locking/lockdep.c 	for (i = 0; i < chain->depth; i++) {
chain            2699 kernel/locking/lockdep.c 		class_id = chain_hlocks[chain->base + i];
chain            2709 kernel/locking/lockdep.c 			struct lock_chain *chain)
chain            2723 kernel/locking/lockdep.c 	print_chain_keys_chain(chain);
chain            2738 kernel/locking/lockdep.c 			struct lock_chain *chain)
chain            2745 kernel/locking/lockdep.c 	if (DEBUG_LOCKS_WARN_ON(chain->depth != curr->lockdep_depth - (i - 1))) {
chain            2746 kernel/locking/lockdep.c 		print_collision(curr, hlock, chain);
chain            2750 kernel/locking/lockdep.c 	for (j = 0; j < chain->depth - 1; j++, i++) {
chain            2753 kernel/locking/lockdep.c 		if (DEBUG_LOCKS_WARN_ON(chain_hlocks[chain->base + j] != id)) {
chain            2754 kernel/locking/lockdep.c 			print_collision(curr, hlock, chain);
chain            2802 kernel/locking/lockdep.c 	struct lock_chain *chain;
chain            2813 kernel/locking/lockdep.c 	chain = alloc_lock_chain();
chain            2814 kernel/locking/lockdep.c 	if (!chain) {
chain            2822 kernel/locking/lockdep.c 	chain->chain_key = chain_key;
chain            2823 kernel/locking/lockdep.c 	chain->irq_context = hlock->irq_context;
chain            2825 kernel/locking/lockdep.c 	chain->depth = curr->lockdep_depth + 1 - i;
chain            2831 kernel/locking/lockdep.c 	if (likely(nr_chain_hlocks + chain->depth <= MAX_LOCKDEP_CHAIN_HLOCKS)) {
chain            2832 kernel/locking/lockdep.c 		chain->base = nr_chain_hlocks;
chain            2833 kernel/locking/lockdep.c 		for (j = 0; j < chain->depth - 1; j++, i++) {
chain            2835 kernel/locking/lockdep.c 			chain_hlocks[chain->base + j] = lock_id;
chain            2837 kernel/locking/lockdep.c 		chain_hlocks[chain->base + j] = class - lock_classes;
chain            2838 kernel/locking/lockdep.c 		nr_chain_hlocks += chain->depth;
chain            2848 kernel/locking/lockdep.c 	hlist_add_head_rcu(&chain->entry, hash_head);
chain            2862 kernel/locking/lockdep.c 	struct lock_chain *chain;
chain            2864 kernel/locking/lockdep.c 	hlist_for_each_entry_rcu(chain, hash_head, entry) {
chain            2865 kernel/locking/lockdep.c 		if (READ_ONCE(chain->chain_key) == chain_key) {
chain            2867 kernel/locking/lockdep.c 			return chain;
chain            2884 kernel/locking/lockdep.c 	struct lock_chain *chain = lookup_chain_cache(chain_key);
chain            2886 kernel/locking/lockdep.c 	if (chain) {
chain            2888 kernel/locking/lockdep.c 		if (!check_no_collision(curr, hlock, chain))
chain            2912 kernel/locking/lockdep.c 	chain = lookup_chain_cache(chain_key);
chain            2913 kernel/locking/lockdep.c 	if (chain) {
chain            4774 kernel/locking/lockdep.c 					 struct lock_chain *chain,
chain            4782 kernel/locking/lockdep.c 	for (i = chain->base; i < chain->base + chain->depth; i++) {
chain            4786 kernel/locking/lockdep.c 		if (--chain->depth > 0) {
chain            4788 kernel/locking/lockdep.c 				(chain->base + chain->depth - i) *
chain            4802 kernel/locking/lockdep.c 	for (i = chain->base; i < chain->base + chain->depth; i++)
chain            4804 kernel/locking/lockdep.c 	if (chain->depth && chain->chain_key == chain_key)
chain            4807 kernel/locking/lockdep.c 	WRITE_ONCE(chain->chain_key, chain_key);
chain            4812 kernel/locking/lockdep.c 	hlist_del_rcu(&chain->entry);
chain            4813 kernel/locking/lockdep.c 	__set_bit(chain - lock_chains, pf->lock_chains_being_freed);
chain            4814 kernel/locking/lockdep.c 	if (chain->depth == 0)
chain            4827 kernel/locking/lockdep.c 	*new_chain = *chain;
chain            4836 kernel/locking/lockdep.c 	struct lock_chain *chain;
chain            4842 kernel/locking/lockdep.c 		hlist_for_each_entry_rcu(chain, head, entry) {
chain            4843 kernel/locking/lockdep.c 			remove_class_from_lock_chain(pf, chain, class);
chain             124 kernel/locking/lockdep_internals.h struct lock_class *lock_chain_get_class(struct lock_chain *chain, int i);
chain             128 kernel/locking/lockdep_proc.c 	struct lock_chain *chain = v;
chain             139 kernel/locking/lockdep_proc.c 	seq_printf(m, "irq_context: %d\n", chain->irq_context);
chain             141 kernel/locking/lockdep_proc.c 	for (i = 0; i < chain->depth; i++) {
chain             142 kernel/locking/lockdep_proc.c 		class = lock_chain_get_class(chain, i);
chain             259 kernel/power/snapshot.c 	struct linked_page *chain;	/* the chain */
chain             269 kernel/power/snapshot.c 	ca->chain = NULL;
chain             287 kernel/power/snapshot.c 		lp->next = ca->chain;
chain             288 kernel/power/snapshot.c 		ca->chain = lp;
chain             291 kernel/power/snapshot.c 	ret = ca->chain->data + ca->used_space;
chain             670 kernel/power/snapshot.c 	bm->p_list = ca.chain;
chain             677 kernel/power/snapshot.c 	bm->p_list = ca.chain;
chain             446 mm/dmapool.c   		unsigned int chain = page->offset;
chain             447 mm/dmapool.c   		while (chain < pool->allocation) {
chain             448 mm/dmapool.c   			if (chain != offset) {
chain             449 mm/dmapool.c   				chain = *(int *)(page->vaddr + chain);
chain             338 mm/ksm.c       static __always_inline bool is_stable_node_chain(struct stable_node *chain)
chain             340 mm/ksm.c       	return chain->rmap_hlist_len == STABLE_NODE_CHAIN;
chain             349 mm/ksm.c       					     struct stable_node *chain)
chain             353 mm/ksm.c       	VM_BUG_ON(!is_stable_node_chain(chain));
chain             354 mm/ksm.c       	hlist_add_head(&dup->hlist_dup, &chain->hlist);
chain             593 mm/ksm.c       	struct stable_node *chain = alloc_stable_node();
chain             595 mm/ksm.c       	if (likely(chain)) {
chain             596 mm/ksm.c       		INIT_HLIST_HEAD(&chain->hlist);
chain             597 mm/ksm.c       		chain->chain_prune_time = jiffies;
chain             598 mm/ksm.c       		chain->rmap_hlist_len = STABLE_NODE_CHAIN;
chain             600 mm/ksm.c       		chain->nid = NUMA_NO_NODE; /* debug */
chain             609 mm/ksm.c       		rb_replace_node(&dup->node, &chain->node, root);
chain             618 mm/ksm.c       		stable_node_chain_add_dup(dup, chain);
chain             620 mm/ksm.c       	return chain;
chain             623 mm/ksm.c       static inline void free_stable_node_chain(struct stable_node *chain,
chain             626 mm/ksm.c       	rb_erase(&chain->node, root);
chain             627 mm/ksm.c       	free_stable_node(chain);
chain            1827 mm/ksm.c       		tree_page = chain(&stable_node_dup, stable_node, root);
chain              64 net/batman-adv/fragmentation.c 	struct batadv_frag_table_entry *chain;
chain              68 net/batman-adv/fragmentation.c 		chain = &orig_node->fragments[i];
chain              69 net/batman-adv/fragmentation.c 		spin_lock_bh(&chain->lock);
chain              71 net/batman-adv/fragmentation.c 		if (!check_cb || check_cb(chain)) {
chain              72 net/batman-adv/fragmentation.c 			batadv_frag_clear_chain(&chain->fragment_list, true);
chain              73 net/batman-adv/fragmentation.c 			chain->size = 0;
chain              76 net/batman-adv/fragmentation.c 		spin_unlock_bh(&chain->lock);
chain             108 net/batman-adv/fragmentation.c static bool batadv_frag_init_chain(struct batadv_frag_table_entry *chain,
chain             111 net/batman-adv/fragmentation.c 	lockdep_assert_held(&chain->lock);
chain             113 net/batman-adv/fragmentation.c 	if (chain->seqno == seqno)
chain             116 net/batman-adv/fragmentation.c 	if (!hlist_empty(&chain->fragment_list))
chain             117 net/batman-adv/fragmentation.c 		batadv_frag_clear_chain(&chain->fragment_list, true);
chain             119 net/batman-adv/fragmentation.c 	chain->size = 0;
chain             120 net/batman-adv/fragmentation.c 	chain->seqno = seqno;
chain             142 net/batman-adv/fragmentation.c 	struct batadv_frag_table_entry *chain;
chain             172 net/batman-adv/fragmentation.c 	chain = &orig_node->fragments[bucket];
chain             173 net/batman-adv/fragmentation.c 	spin_lock_bh(&chain->lock);
chain             174 net/batman-adv/fragmentation.c 	if (batadv_frag_init_chain(chain, seqno)) {
chain             175 net/batman-adv/fragmentation.c 		hlist_add_head(&frag_entry_new->list, &chain->fragment_list);
chain             176 net/batman-adv/fragmentation.c 		chain->size = skb->len - hdr_size;
chain             177 net/batman-adv/fragmentation.c 		chain->timestamp = jiffies;
chain             178 net/batman-adv/fragmentation.c 		chain->total_size = ntohs(frag_packet->total_size);
chain             184 net/batman-adv/fragmentation.c 	hlist_for_each_entry(frag_entry_curr, &chain->fragment_list, list) {
chain             193 net/batman-adv/fragmentation.c 			chain->size += skb->len - hdr_size;
chain             194 net/batman-adv/fragmentation.c 			chain->timestamp = jiffies;
chain             206 net/batman-adv/fragmentation.c 		chain->size += skb->len - hdr_size;
chain             207 net/batman-adv/fragmentation.c 		chain->timestamp = jiffies;
chain             212 net/batman-adv/fragmentation.c 	if (chain->size > batadv_frag_size_limit() ||
chain             213 net/batman-adv/fragmentation.c 	    chain->total_size != ntohs(frag_packet->total_size) ||
chain             214 net/batman-adv/fragmentation.c 	    chain->total_size > batadv_frag_size_limit()) {
chain             219 net/batman-adv/fragmentation.c 		batadv_frag_clear_chain(&chain->fragment_list, true);
chain             220 net/batman-adv/fragmentation.c 		chain->size = 0;
chain             221 net/batman-adv/fragmentation.c 	} else if (ntohs(frag_packet->total_size) == chain->size) {
chain             223 net/batman-adv/fragmentation.c 		hlist_move_list(&chain->fragment_list, chain_out);
chain             224 net/batman-adv/fragmentation.c 		chain->size = 0;
chain             228 net/batman-adv/fragmentation.c 	spin_unlock_bh(&chain->lock);
chain             249 net/batman-adv/fragmentation.c batadv_frag_merge_packets(struct hlist_head *chain)
chain             260 net/batman-adv/fragmentation.c 	entry = hlist_entry(chain->first, struct batadv_frag_list_entry, list);
chain             287 net/batman-adv/fragmentation.c 	hlist_for_each_entry(entry, chain, list) {
chain             294 net/batman-adv/fragmentation.c 	batadv_frag_clear_chain(chain, dropped);
chain             761 net/bridge/netfilter/ebtables.c static int check_chainloops(const struct ebt_entries *chain, struct ebt_cl_stack *cl_s,
chain             764 net/bridge/netfilter/ebtables.c 	int i, chain_nr = -1, pos = 0, nentries = chain->nentries, verdict;
chain             765 net/bridge/netfilter/ebtables.c 	const struct ebt_entry *e = (struct ebt_entry *)chain->data;
chain             777 net/bridge/netfilter/ebtables.c 				nentries = chain->nentries;
chain             363 net/bridge/netfilter/nft_reject_bridge.c 	return nft_chain_validate_hooks(ctx->chain, (1 << NF_BR_PRE_ROUTING) |
chain            2926 net/core/neighbour.c 	int chain;
chain            2933 net/core/neighbour.c 	for (chain = 0; chain < (1 << nht->hash_shift); chain++) {
chain            2936 net/core/neighbour.c 		for (n = rcu_dereference_bh(nht->hash_buckets[chain]);
chain            2950 net/core/neighbour.c 	int chain;
chain            2955 net/core/neighbour.c 	for (chain = 0; chain < (1 << nht->hash_shift); chain++) {
chain            2959 net/core/neighbour.c 		np = &nht->hash_buckets[chain];
chain            1184 net/dccp/proto.c 		INIT_HLIST_NULLS_HEAD(&dccp_hashinfo.ehash[i].chain, i);
chain            1208 net/dccp/proto.c 		INIT_HLIST_HEAD(&dccp_hashinfo.bhash[i].chain);
chain              89 net/decnet/dn_route.c 	struct dn_route __rcu *chain;
chain             188 net/decnet/dn_route.c 		rtp = &dn_rt_hash_table[i].chain;
chain             223 net/decnet/dn_route.c 		rtp = &dn_rt_hash_table[i].chain;
chain             323 net/decnet/dn_route.c 	rthp = &dn_rt_hash_table[hash].chain;
chain             332 net/decnet/dn_route.c 					   dn_rt_hash_table[hash].chain);
chain             333 net/decnet/dn_route.c 			rcu_assign_pointer(dn_rt_hash_table[hash].chain, rth);
chain             345 net/decnet/dn_route.c 	rcu_assign_pointer(rt->dn_next, dn_rt_hash_table[hash].chain);
chain             346 net/decnet/dn_route.c 	rcu_assign_pointer(dn_rt_hash_table[hash].chain, rt);
chain             362 net/decnet/dn_route.c 		if ((rt = xchg((struct dn_route **)&dn_rt_hash_table[i].chain, NULL)) == NULL)
chain            1249 net/decnet/dn_route.c 		for (rt = rcu_dereference_bh(dn_rt_hash_table[hash].chain); rt;
chain            1527 net/decnet/dn_route.c 	for(rt = rcu_dereference(dn_rt_hash_table[hash].chain); rt != NULL;
chain            1746 net/decnet/dn_route.c 		for(rt = rcu_dereference_bh(dn_rt_hash_table[h].chain), idx = 0;
chain            1782 net/decnet/dn_route.c 		rt = rcu_dereference_bh(dn_rt_hash_table[s->bucket].chain);
chain            1800 net/decnet/dn_route.c 		rt = rcu_dereference_bh(dn_rt_hash_table[s->bucket].chain);
chain            1896 net/decnet/dn_route.c 		dn_rt_hash_table[i].chain = NULL;
chain             173 net/ipv4/fib_semantics.c 		fnhe = rcu_dereference_protected(hash[i].chain, 1);
chain            1886 net/ipv4/fib_semantics.c 		for (fnhe = rcu_dereference_protected(bucket[i].chain, 1);
chain             224 net/ipv4/inet_connection_sock.c 		inet_bind_bucket_for_each(tb, &head->chain)
chain             315 net/ipv4/inet_connection_sock.c 	inet_bind_bucket_for_each(tb, &head->chain)
chain             967 net/ipv4/inet_diag.c 		if (hlist_nulls_empty(&head->chain))
chain             977 net/ipv4/inet_diag.c 		sk_nulls_for_each(sk, node, &head->chain) {
chain              76 net/ipv4/inet_hashtables.c 		hlist_add_head(&tb->node, &head->chain);
chain             152 net/ipv4/inet_hashtables.c 		inet_bind_bucket_for_each(tb, &head->chain) {
chain             364 net/ipv4/inet_hashtables.c 	sk_nulls_for_each_rcu(sk, node, &head->chain) {
chain             418 net/ipv4/inet_hashtables.c 	sk_nulls_for_each(sk2, node, &head->chain) {
chain             440 net/ipv4/inet_hashtables.c 	__sk_nulls_add_node_rcu(sk, &head->chain);
chain             485 net/ipv4/inet_hashtables.c 	list = &head->chain;
chain             679 net/ipv4/inet_hashtables.c 		inet_bind_bucket_for_each(tb, &head->chain) {
chain             123 net/ipv4/inet_timewait_sock.c 	inet_twsk_add_node_rcu(tw, &ehead->chain);
chain             270 net/ipv4/inet_timewait_sock.c 		sk_nulls_for_each_rcu(sk, node, &head->chain) {
chain             609 net/ipv4/route.c 	oldest = rcu_dereference(hash->chain);
chain             670 net/ipv4/route.c 	for (fnhe = rcu_dereference(hash->chain); fnhe;
chain             702 net/ipv4/route.c 			fnhe->fnhe_next = hash->chain;
chain             703 net/ipv4/route.c 			rcu_assign_pointer(hash->chain, fnhe);
chain            1337 net/ipv4/route.c 	fnhe_p = &hash->chain;
chain            1371 net/ipv4/route.c 	for (fnhe = rcu_dereference(hash[hval].chain); fnhe;
chain            2880 net/ipv4/route.c 		for (fnhe = rcu_dereference(bucket[i].chain); fnhe;
chain            3993 net/ipv4/tcp.c 		INIT_HLIST_NULLS_HEAD(&tcp_hashinfo.ehash[i].chain, i);
chain            4010 net/ipv4/tcp.c 		INIT_HLIST_HEAD(&tcp_hashinfo.bhash[i].chain);
chain            2200 net/ipv4/tcp_ipv4.c 	return hlist_nulls_empty(&tcp_hashinfo.ehash[st->bucket].chain);
chain            2225 net/ipv4/tcp_ipv4.c 		sk_nulls_for_each(sk, node, &tcp_hashinfo.ehash[st->bucket].chain) {
chain              85 net/ipv4/tcp_metrics.c 	struct tcp_metrics_block __rcu	*chain;
chain             174 net/ipv4/tcp_metrics.c 		oldest = deref_locked(tcp_metrics_hash[hash].chain);
chain             193 net/ipv4/tcp_metrics.c 		tm->tcpm_next = tcp_metrics_hash[hash].chain;
chain             194 net/ipv4/tcp_metrics.c 		rcu_assign_pointer(tcp_metrics_hash[hash].chain, tm);
chain             218 net/ipv4/tcp_metrics.c 	for (tm = rcu_dereference(tcp_metrics_hash[hash].chain); tm;
chain             260 net/ipv4/tcp_metrics.c 	for (tm = rcu_dereference(tcp_metrics_hash[hash].chain); tm;
chain             752 net/ipv4/tcp_metrics.c 		for (col = 0, tm = rcu_dereference(hb->chain); tm;
chain             846 net/ipv4/tcp_metrics.c 	for (tm = rcu_dereference(tcp_metrics_hash[hash].chain); tm;
chain             882 net/ipv4/tcp_metrics.c 		pp = &hb->chain;
chain             922 net/ipv4/tcp_metrics.c 	pp = &hb->chain;
chain              69 net/ipv6/inet6_hashtables.c 	sk_nulls_for_each_rcu(sk, node, &head->chain) {
chain             222 net/ipv6/inet6_hashtables.c 	sk_nulls_for_each(sk2, node, &head->chain) {
chain             244 net/ipv6/inet6_hashtables.c 	__sk_nulls_add_node_rcu(sk, &head->chain);
chain            1492 net/ipv6/route.c 	hlist_for_each_entry(rt6_ex, &bucket->chain, hlist) {
chain            1534 net/ipv6/route.c 	hlist_for_each_entry(rt6_ex, &(*bucket)->chain, hlist) {
chain            1569 net/ipv6/route.c 	hlist_for_each_entry_rcu(rt6_ex, &(*bucket)->chain, hlist) {
chain            1717 net/ipv6/route.c 	hlist_add_head_rcu(&rt6_ex->hlist, &bucket->chain);
chain            1756 net/ipv6/route.c 		hlist_for_each_entry_safe(rt6_ex, tmp, &bucket->chain, hlist) {
chain            2026 net/ipv6/route.c 		hlist_for_each_entry(rt6_ex, &bucket->chain, hlist) {
chain            2059 net/ipv6/route.c 						  &bucket->chain, hlist) {
chain            2138 net/ipv6/route.c 						  &bucket->chain, hlist) {
chain            5623 net/ipv6/route.c 		hlist_for_each_entry(rt6_ex, &bucket->chain, hlist) {
chain             302 net/mac80211/rx.c 	int mpdulen, chain;
chain             348 net/mac80211/rx.c 	for_each_set_bit(chain, &chains, IEEE80211_MAX_CHAINS) {
chain             679 net/mac80211/rx.c 	for_each_set_bit(chain, &chains, IEEE80211_MAX_CHAINS) {
chain             680 net/mac80211/rx.c 		*pos++ = status->chain_signal[chain];
chain             681 net/mac80211/rx.c 		*pos++ = chain;
chain              92 net/netfilter/nf_tables_api.c 			 struct nft_chain *chain,
chain              99 net/netfilter/nf_tables_api.c 	ctx->chain	= chain;
chain             158 net/netfilter/nf_tables_api.c 				   struct nft_chain *chain)
chain             164 net/netfilter/nf_tables_api.c 	    !nft_is_base_chain(chain))
chain             167 net/netfilter/nf_tables_api.c 	basechain = nft_base_chain(chain);
chain             178 net/netfilter/nf_tables_api.c 				      struct nft_chain *chain)
chain             184 net/netfilter/nf_tables_api.c 	    !nft_is_base_chain(chain))
chain             186 net/netfilter/nf_tables_api.c 	basechain = nft_base_chain(chain);
chain             231 net/netfilter/nf_tables_api.c 		nft_activate_next(ctx->net, ctx->chain);
chain             246 net/netfilter/nf_tables_api.c 	nft_deactivate_next(ctx->net, ctx->chain);
chain             286 net/netfilter/nf_tables_api.c 		ctx->chain->use--;
chain             335 net/netfilter/nf_tables_api.c 	list_for_each_entry(rule, &ctx->chain->rules, list) {
chain             758 net/netfilter/nf_tables_api.c 	struct nft_chain *chain;
chain             761 net/netfilter/nf_tables_api.c 	list_for_each_entry(chain, &table->chains, list) {
chain             762 net/netfilter/nf_tables_api.c 		if (!nft_is_active_next(net, chain))
chain             764 net/netfilter/nf_tables_api.c 		if (!nft_is_base_chain(chain))
chain             770 net/netfilter/nf_tables_api.c 		nf_unregister_net_hook(net, &nft_base_chain(chain)->ops);
chain             776 net/netfilter/nf_tables_api.c 	struct nft_chain *chain;
chain             779 net/netfilter/nf_tables_api.c 	list_for_each_entry(chain, &table->chains, list) {
chain             780 net/netfilter/nf_tables_api.c 		if (!nft_is_active_next(net, chain))
chain             782 net/netfilter/nf_tables_api.c 		if (!nft_is_base_chain(chain))
chain             785 net/netfilter/nf_tables_api.c 		err = nf_register_net_hook(net, &nft_base_chain(chain)->ops);
chain             855 net/netfilter/nf_tables_api.c 	const struct nft_chain *chain = data;
chain             857 net/netfilter/nf_tables_api.c 	return nft_chain_hash(chain->name, 0, seed);
chain             863 net/netfilter/nf_tables_api.c 	const struct nft_chain *chain = ptr;
chain             866 net/netfilter/nf_tables_api.c 	return strcmp(chain->name, name);
chain             976 net/netfilter/nf_tables_api.c 	struct nft_chain *chain, *nc;
chain             981 net/netfilter/nf_tables_api.c 	list_for_each_entry(chain, &ctx->table->chains, list) {
chain             982 net/netfilter/nf_tables_api.c 		if (!nft_is_active_next(ctx->net, chain))
chain             985 net/netfilter/nf_tables_api.c 		ctx->chain = chain;
chain            1023 net/netfilter/nf_tables_api.c 	list_for_each_entry_safe(chain, nc, &ctx->table->chains, list) {
chain            1024 net/netfilter/nf_tables_api.c 		if (!nft_is_active_next(ctx->net, chain))
chain            1027 net/netfilter/nf_tables_api.c 		ctx->chain = chain;
chain            1145 net/netfilter/nf_tables_api.c 	struct nft_chain *chain;
chain            1147 net/netfilter/nf_tables_api.c 	list_for_each_entry(chain, &table->chains, list) {
chain            1148 net/netfilter/nf_tables_api.c 		if (chain->handle == handle &&
chain            1149 net/netfilter/nf_tables_api.c 		    nft_active_genmask(chain, genmask))
chain            1150 net/netfilter/nf_tables_api.c 			return chain;
chain            1171 net/netfilter/nf_tables_api.c 	struct nft_chain *chain;
chain            1181 net/netfilter/nf_tables_api.c 	chain = ERR_PTR(-ENOENT);
chain            1187 net/netfilter/nf_tables_api.c 	rhl_for_each_entry_rcu(chain, tmp, list, rhlhead) {
chain            1188 net/netfilter/nf_tables_api.c 		if (nft_active_genmask(chain, genmask))
chain            1191 net/netfilter/nf_tables_api.c 	chain = ERR_PTR(-ENOENT);
chain            1194 net/netfilter/nf_tables_api.c 	return chain;
chain            1260 net/netfilter/nf_tables_api.c 				     const struct nft_chain *chain)
chain            1277 net/netfilter/nf_tables_api.c 	if (nla_put_be64(skb, NFTA_CHAIN_HANDLE, cpu_to_be64(chain->handle),
chain            1280 net/netfilter/nf_tables_api.c 	if (nla_put_string(skb, NFTA_CHAIN_NAME, chain->name))
chain            1283 net/netfilter/nf_tables_api.c 	if (nft_is_base_chain(chain)) {
chain            1284 net/netfilter/nf_tables_api.c 		const struct nft_base_chain *basechain = nft_base_chain(chain);
chain            1313 net/netfilter/nf_tables_api.c 		if ((chain->flags & NFT_CHAIN_HW_OFFLOAD) &&
chain            1319 net/netfilter/nf_tables_api.c 	if (nla_put_be32(skb, NFTA_CHAIN_USE, htonl(chain->use)))
chain            1345 net/netfilter/nf_tables_api.c 					ctx->chain);
chain            1363 net/netfilter/nf_tables_api.c 	const struct nft_chain *chain;
chain            1375 net/netfilter/nf_tables_api.c 		list_for_each_entry_rcu(chain, &table->chains, list) {
chain            1381 net/netfilter/nf_tables_api.c 			if (!nft_is_active(net, chain))
chain            1389 net/netfilter/nf_tables_api.c 						      chain) < 0)
chain            1411 net/netfilter/nf_tables_api.c 	const struct nft_chain *chain;
chain            1432 net/netfilter/nf_tables_api.c 	chain = nft_chain_lookup(net, table, nla[NFTA_CHAIN_NAME], genmask);
chain            1433 net/netfilter/nf_tables_api.c 	if (IS_ERR(chain)) {
chain            1435 net/netfilter/nf_tables_api.c 		return PTR_ERR(chain);
chain            1444 net/netfilter/nf_tables_api.c 					family, table, chain);
chain            1493 net/netfilter/nf_tables_api.c 	struct nft_base_chain *chain = nft_base_chain(trans->ctx.chain);
chain            1498 net/netfilter/nf_tables_api.c 	rcu_swap_protected(chain->stats, nft_trans_chain_stats(trans),
chain            1505 net/netfilter/nf_tables_api.c static void nf_tables_chain_free_chain_rules(struct nft_chain *chain)
chain            1507 net/netfilter/nf_tables_api.c 	struct nft_rule **g0 = rcu_dereference_raw(chain->rules_gen_0);
chain            1508 net/netfilter/nf_tables_api.c 	struct nft_rule **g1 = rcu_dereference_raw(chain->rules_gen_1);
chain            1515 net/netfilter/nf_tables_api.c 	WARN_ON_ONCE(chain->rules_next);
chain            1516 net/netfilter/nf_tables_api.c 	kvfree(chain->rules_next);
chain            1521 net/netfilter/nf_tables_api.c 	struct nft_chain *chain = ctx->chain;
chain            1523 net/netfilter/nf_tables_api.c 	if (WARN_ON(chain->use > 0))
chain            1527 net/netfilter/nf_tables_api.c 	nf_tables_chain_free_chain_rules(chain);
chain            1529 net/netfilter/nf_tables_api.c 	if (nft_is_base_chain(chain)) {
chain            1530 net/netfilter/nf_tables_api.c 		struct nft_base_chain *basechain = nft_base_chain(chain);
chain            1537 net/netfilter/nf_tables_api.c 		kfree(chain->name);
chain            1540 net/netfilter/nf_tables_api.c 		kfree(chain->name);
chain            1541 net/netfilter/nf_tables_api.c 		kfree(chain);
chain            1634 net/netfilter/nf_tables_api.c static struct nft_rule **nf_tables_chain_alloc_rules(const struct nft_chain *chain,
chain            1659 net/netfilter/nf_tables_api.c 	struct nft_chain *chain;
chain            1695 net/netfilter/nf_tables_api.c 		chain = &basechain->chain;
chain            1701 net/netfilter/nf_tables_api.c 		ops->priv	= chain;
chain            1705 net/netfilter/nf_tables_api.c 		chain->flags |= NFT_BASE_CHAIN | flags;
chain            1707 net/netfilter/nf_tables_api.c 		if (chain->flags & NFT_CHAIN_HW_OFFLOAD &&
chain            1713 net/netfilter/nf_tables_api.c 		chain = kzalloc(sizeof(*chain), GFP_KERNEL);
chain            1714 net/netfilter/nf_tables_api.c 		if (chain == NULL)
chain            1717 net/netfilter/nf_tables_api.c 	ctx->chain = chain;
chain            1719 net/netfilter/nf_tables_api.c 	INIT_LIST_HEAD(&chain->rules);
chain            1720 net/netfilter/nf_tables_api.c 	chain->handle = nf_tables_alloc_handle(table);
chain            1721 net/netfilter/nf_tables_api.c 	chain->table = table;
chain            1722 net/netfilter/nf_tables_api.c 	chain->name = nla_strdup(nla[NFTA_CHAIN_NAME], GFP_KERNEL);
chain            1723 net/netfilter/nf_tables_api.c 	if (!chain->name) {
chain            1728 net/netfilter/nf_tables_api.c 	rules = nf_tables_chain_alloc_rules(chain, 0);
chain            1735 net/netfilter/nf_tables_api.c 	rcu_assign_pointer(chain->rules_gen_0, rules);
chain            1736 net/netfilter/nf_tables_api.c 	rcu_assign_pointer(chain->rules_gen_1, rules);
chain            1738 net/netfilter/nf_tables_api.c 	err = nf_tables_register_hook(net, table, chain);
chain            1742 net/netfilter/nf_tables_api.c 	err = rhltable_insert_key(&table->chains_ht, chain->name,
chain            1743 net/netfilter/nf_tables_api.c 				  &chain->rhlhead, nft_chain_ht_params);
chain            1750 net/netfilter/nf_tables_api.c 		rhltable_remove(&table->chains_ht, &chain->rhlhead,
chain            1756 net/netfilter/nf_tables_api.c 	if (nft_is_base_chain(chain))
chain            1760 net/netfilter/nf_tables_api.c 	list_add_tail_rcu(&chain->list, &table->chains);
chain            1764 net/netfilter/nf_tables_api.c 	nf_tables_unregister_hook(net, table, chain);
chain            1776 net/netfilter/nf_tables_api.c 	struct nft_chain *chain = ctx->chain;
chain            1784 net/netfilter/nf_tables_api.c 	if (chain->flags ^ flags)
chain            1788 net/netfilter/nf_tables_api.c 		if (!nft_is_base_chain(chain))
chain            1796 net/netfilter/nf_tables_api.c 		basechain = nft_base_chain(chain);
chain            1823 net/netfilter/nf_tables_api.c 		if (!nft_is_base_chain(chain))
chain            1888 net/netfilter/nf_tables_api.c 	struct nft_chain *chain;
chain            1902 net/netfilter/nf_tables_api.c 	chain = NULL;
chain            1907 net/netfilter/nf_tables_api.c 		chain = nft_chain_lookup_byhandle(table, handle, genmask);
chain            1908 net/netfilter/nf_tables_api.c 		if (IS_ERR(chain)) {
chain            1910 net/netfilter/nf_tables_api.c 			return PTR_ERR(chain);
chain            1914 net/netfilter/nf_tables_api.c 		chain = nft_chain_lookup(net, table, attr, genmask);
chain            1915 net/netfilter/nf_tables_api.c 		if (IS_ERR(chain)) {
chain            1916 net/netfilter/nf_tables_api.c 			if (PTR_ERR(chain) != -ENOENT) {
chain            1918 net/netfilter/nf_tables_api.c 				return PTR_ERR(chain);
chain            1920 net/netfilter/nf_tables_api.c 			chain = NULL;
chain            1925 net/netfilter/nf_tables_api.c 		if (chain != NULL &&
chain            1926 net/netfilter/nf_tables_api.c 		    !nft_is_base_chain(chain)) {
chain            1931 net/netfilter/nf_tables_api.c 		if (chain == NULL &&
chain            1949 net/netfilter/nf_tables_api.c 	else if (chain)
chain            1950 net/netfilter/nf_tables_api.c 		flags = chain->flags;
chain            1952 net/netfilter/nf_tables_api.c 	nft_ctx_init(&ctx, net, skb, nlh, family, table, chain, nla);
chain            1954 net/netfilter/nf_tables_api.c 	if (chain != NULL) {
chain            1962 net/netfilter/nf_tables_api.c 		flags |= chain->flags & NFT_BASE_CHAIN;
chain            1979 net/netfilter/nf_tables_api.c 	struct nft_chain *chain;
chain            1995 net/netfilter/nf_tables_api.c 		chain = nft_chain_lookup_byhandle(table, handle, genmask);
chain            1998 net/netfilter/nf_tables_api.c 		chain = nft_chain_lookup(net, table, attr, genmask);
chain            2000 net/netfilter/nf_tables_api.c 	if (IS_ERR(chain)) {
chain            2002 net/netfilter/nf_tables_api.c 		return PTR_ERR(chain);
chain            2006 net/netfilter/nf_tables_api.c 	    chain->use > 0)
chain            2009 net/netfilter/nf_tables_api.c 	nft_ctx_init(&ctx, net, skb, nlh, family, table, chain, nla);
chain            2011 net/netfilter/nf_tables_api.c 	use = chain->use;
chain            2012 net/netfilter/nf_tables_api.c 	list_for_each_entry(rule, &chain->rules, list) {
chain            2302 net/netfilter/nf_tables_api.c static struct nft_rule *__nft_rule_lookup(const struct nft_chain *chain,
chain            2308 net/netfilter/nf_tables_api.c 	list_for_each_entry_rcu(rule, &chain->rules, list) {
chain            2316 net/netfilter/nf_tables_api.c static struct nft_rule *nft_rule_lookup(const struct nft_chain *chain,
chain            2322 net/netfilter/nf_tables_api.c 	return __nft_rule_lookup(chain, be64_to_cpu(nla_get_be64(nla)));
chain            2344 net/netfilter/nf_tables_api.c 				    const struct nft_chain *chain,
chain            2365 net/netfilter/nf_tables_api.c 	if (nla_put_string(skb, NFTA_RULE_CHAIN, chain->name))
chain            2418 net/netfilter/nf_tables_api.c 				       ctx->chain, rule, NULL);
chain            2433 net/netfilter/nf_tables_api.c 	char *chain;
chain            2440 net/netfilter/nf_tables_api.c 				  const struct nft_chain *chain)
chain            2447 net/netfilter/nf_tables_api.c 	list_for_each_entry_rcu(rule, &chain->rules, list) {
chain            2461 net/netfilter/nf_tables_api.c 					table, chain, rule, prule) < 0)
chain            2479 net/netfilter/nf_tables_api.c 	const struct nft_chain *chain;
chain            2494 net/netfilter/nf_tables_api.c 		if (ctx && ctx->table && ctx->chain) {
chain            2497 net/netfilter/nf_tables_api.c 			list = rhltable_lookup(&table->chains_ht, ctx->chain,
chain            2502 net/netfilter/nf_tables_api.c 			rhl_for_each_entry_rcu(chain, tmp, list, rhlhead) {
chain            2503 net/netfilter/nf_tables_api.c 				if (!nft_is_active(net, chain))
chain            2506 net/netfilter/nf_tables_api.c 						       cb, table, chain);
chain            2512 net/netfilter/nf_tables_api.c 		list_for_each_entry_rcu(chain, &table->chains, list) {
chain            2513 net/netfilter/nf_tables_api.c 			if (__nf_tables_dump_rules(skb, &idx, cb, table, chain))
chain            2546 net/netfilter/nf_tables_api.c 			ctx->chain = nla_strdup(nla[NFTA_RULE_CHAIN],
chain            2548 net/netfilter/nf_tables_api.c 			if (!ctx->chain) {
chain            2566 net/netfilter/nf_tables_api.c 		kfree(ctx->chain);
chain            2580 net/netfilter/nf_tables_api.c 	const struct nft_chain *chain;
chain            2605 net/netfilter/nf_tables_api.c 	chain = nft_chain_lookup(net, table, nla[NFTA_RULE_CHAIN], genmask);
chain            2606 net/netfilter/nf_tables_api.c 	if (IS_ERR(chain)) {
chain            2608 net/netfilter/nf_tables_api.c 		return PTR_ERR(chain);
chain            2611 net/netfilter/nf_tables_api.c 	rule = nft_rule_lookup(chain, nla[NFTA_RULE_HANDLE]);
chain            2623 net/netfilter/nf_tables_api.c 				       family, table, chain, rule, NULL);
chain            2659 net/netfilter/nf_tables_api.c int nft_chain_validate(const struct nft_ctx *ctx, const struct nft_chain *chain)
chain            2669 net/netfilter/nf_tables_api.c 	list_for_each_entry(rule, &chain->rules, list) {
chain            2689 net/netfilter/nf_tables_api.c 	struct nft_chain *chain;
chain            2696 net/netfilter/nf_tables_api.c 	list_for_each_entry(chain, &table->chains, list) {
chain            2697 net/netfilter/nf_tables_api.c 		if (!nft_is_base_chain(chain))
chain            2700 net/netfilter/nf_tables_api.c 		ctx.chain = chain;
chain            2701 net/netfilter/nf_tables_api.c 		err = nft_chain_validate(&ctx, chain);
chain            2725 net/netfilter/nf_tables_api.c 	struct nft_chain *chain;
chain            2744 net/netfilter/nf_tables_api.c 	chain = nft_chain_lookup(net, table, nla[NFTA_RULE_CHAIN], genmask);
chain            2745 net/netfilter/nf_tables_api.c 	if (IS_ERR(chain)) {
chain            2747 net/netfilter/nf_tables_api.c 		return PTR_ERR(chain);
chain            2752 net/netfilter/nf_tables_api.c 		rule = __nft_rule_lookup(chain, handle);
chain            2772 net/netfilter/nf_tables_api.c 		if (chain->use == UINT_MAX)
chain            2777 net/netfilter/nf_tables_api.c 			old_rule = __nft_rule_lookup(chain, pos_handle);
chain            2791 net/netfilter/nf_tables_api.c 	nft_ctx_init(&ctx, net, skb, nlh, family, table, chain, nla);
chain            2880 net/netfilter/nf_tables_api.c 				list_add_tail_rcu(&rule->list, &chain->rules);
chain            2885 net/netfilter/nf_tables_api.c 				list_add_rcu(&rule->list, &chain->rules);
chain            2889 net/netfilter/nf_tables_api.c 	chain->use++;
chain            2894 net/netfilter/nf_tables_api.c 	if (chain->flags & NFT_CHAIN_HW_OFFLOAD) {
chain            2941 net/netfilter/nf_tables_api.c 	struct nft_chain *chain = NULL;
chain            2953 net/netfilter/nf_tables_api.c 		chain = nft_chain_lookup(net, table, nla[NFTA_RULE_CHAIN],
chain            2955 net/netfilter/nf_tables_api.c 		if (IS_ERR(chain)) {
chain            2957 net/netfilter/nf_tables_api.c 			return PTR_ERR(chain);
chain            2961 net/netfilter/nf_tables_api.c 	nft_ctx_init(&ctx, net, skb, nlh, family, table, chain, nla);
chain            2963 net/netfilter/nf_tables_api.c 	if (chain) {
chain            2965 net/netfilter/nf_tables_api.c 			rule = nft_rule_lookup(chain, nla[NFTA_RULE_HANDLE]);
chain            2984 net/netfilter/nf_tables_api.c 		list_for_each_entry(chain, &table->chains, list) {
chain            2985 net/netfilter/nf_tables_api.c 			if (!nft_is_active_next(net, chain))
chain            2988 net/netfilter/nf_tables_api.c 			ctx.chain = chain;
chain            3862 net/netfilter/nf_tables_api.c 			    i->chain == binding->chain)
chain            3877 net/netfilter/nf_tables_api.c 	binding->chain = ctx->chain;
chain            4614 net/netfilter/nf_tables_api.c 				.chain	= (struct nft_chain *)binding->chain,
chain            4779 net/netfilter/nf_tables_api.c 			data->verdict.chain->use++;
chain            6499 net/netfilter/nf_tables_api.c 	if (!nft_is_base_chain(trans->ctx.chain))
chain            6502 net/netfilter/nf_tables_api.c 	basechain = nft_base_chain(trans->ctx.chain);
chain            6512 net/netfilter/nf_tables_api.c 				&trans->ctx.chain->rhlhead,
chain            6514 net/netfilter/nf_tables_api.c 		swap(trans->ctx.chain->name, nft_trans_chain_name(trans));
chain            6516 net/netfilter/nf_tables_api.c 				    trans->ctx.chain->name,
chain            6517 net/netfilter/nf_tables_api.c 				    &trans->ctx.chain->rhlhead,
chain            6521 net/netfilter/nf_tables_api.c 	if (!nft_is_base_chain(trans->ctx.chain))
chain            6526 net/netfilter/nf_tables_api.c 	basechain = nft_base_chain(trans->ctx.chain);
chain            6608 net/netfilter/nf_tables_api.c static int nf_tables_commit_chain_prepare(struct net *net, struct nft_chain *chain)
chain            6615 net/netfilter/nf_tables_api.c 	if (chain->rules_next || !nft_is_active_next(net, chain))
chain            6618 net/netfilter/nf_tables_api.c 	rule = list_entry(&chain->rules, struct nft_rule, list);
chain            6621 net/netfilter/nf_tables_api.c 	list_for_each_entry_continue(rule, &chain->rules, list) {
chain            6626 net/netfilter/nf_tables_api.c 	chain->rules_next = nf_tables_chain_alloc_rules(chain, alloc);
chain            6627 net/netfilter/nf_tables_api.c 	if (!chain->rules_next)
chain            6630 net/netfilter/nf_tables_api.c 	list_for_each_entry_continue(rule, &chain->rules, list) {
chain            6632 net/netfilter/nf_tables_api.c 			chain->rules_next[i++] = rule;
chain            6635 net/netfilter/nf_tables_api.c 	chain->rules_next[i] = NULL;
chain            6644 net/netfilter/nf_tables_api.c 		struct nft_chain *chain = trans->ctx.chain;
chain            6648 net/netfilter/nf_tables_api.c 			kvfree(chain->rules_next);
chain            6649 net/netfilter/nf_tables_api.c 			chain->rules_next = NULL;
chain            6676 net/netfilter/nf_tables_api.c static void nf_tables_commit_chain(struct net *net, struct nft_chain *chain)
chain            6683 net/netfilter/nf_tables_api.c 	g0 = rcu_dereference_protected(chain->rules_gen_0,
chain            6685 net/netfilter/nf_tables_api.c 	g1 = rcu_dereference_protected(chain->rules_gen_1,
chain            6689 net/netfilter/nf_tables_api.c 	if (chain->rules_next == NULL) {
chain            6698 net/netfilter/nf_tables_api.c 			rcu_assign_pointer(chain->rules_gen_1, g0);
chain            6701 net/netfilter/nf_tables_api.c 			rcu_assign_pointer(chain->rules_gen_0, g1);
chain            6709 net/netfilter/nf_tables_api.c 		rcu_assign_pointer(chain->rules_gen_1, chain->rules_next);
chain            6711 net/netfilter/nf_tables_api.c 		rcu_assign_pointer(chain->rules_gen_0, chain->rules_next);
chain            6713 net/netfilter/nf_tables_api.c 	chain->rules_next = NULL;
chain            6730 net/netfilter/nf_tables_api.c static void nft_chain_del(struct nft_chain *chain)
chain            6732 net/netfilter/nf_tables_api.c 	struct nft_table *table = chain->table;
chain            6734 net/netfilter/nf_tables_api.c 	WARN_ON_ONCE(rhltable_remove(&table->chains_ht, &chain->rhlhead,
chain            6736 net/netfilter/nf_tables_api.c 	list_del_rcu(&chain->list);
chain            6788 net/netfilter/nf_tables_api.c 	struct nft_chain *chain;
chain            6811 net/netfilter/nf_tables_api.c 			chain = trans->ctx.chain;
chain            6813 net/netfilter/nf_tables_api.c 			ret = nf_tables_commit_chain_prepare(net, chain);
chain            6823 net/netfilter/nf_tables_api.c 		list_for_each_entry(chain, &table->chains, list)
chain            6824 net/netfilter/nf_tables_api.c 			nf_tables_commit_chain(net, chain);
chain            6862 net/netfilter/nf_tables_api.c 				nft_clear(net, trans->ctx.chain);
chain            6868 net/netfilter/nf_tables_api.c 			nft_chain_del(trans->ctx.chain);
chain            6872 net/netfilter/nf_tables_api.c 						  trans->ctx.chain);
chain            7045 net/netfilter/nf_tables_api.c 				nft_chain_del(trans->ctx.chain);
chain            7048 net/netfilter/nf_tables_api.c 							  trans->ctx.chain);
chain            7053 net/netfilter/nf_tables_api.c 			nft_clear(trans->ctx.net, trans->ctx.chain);
chain            7057 net/netfilter/nf_tables_api.c 			trans->ctx.chain->use--;
chain            7064 net/netfilter/nf_tables_api.c 			trans->ctx.chain->use++;
chain            7184 net/netfilter/nf_tables_api.c int nft_chain_validate_dependency(const struct nft_chain *chain,
chain            7189 net/netfilter/nf_tables_api.c 	if (nft_is_base_chain(chain)) {
chain            7190 net/netfilter/nf_tables_api.c 		basechain = nft_base_chain(chain);
chain            7198 net/netfilter/nf_tables_api.c int nft_chain_validate_hooks(const struct nft_chain *chain,
chain            7203 net/netfilter/nf_tables_api.c 	if (nft_is_base_chain(chain)) {
chain            7204 net/netfilter/nf_tables_api.c 		basechain = nft_base_chain(chain);
chain            7226 net/netfilter/nf_tables_api.c 				 const struct nft_chain *chain);
chain            7244 net/netfilter/nf_tables_api.c 		return nf_tables_check_loops(ctx, data->verdict.chain);
chain            7251 net/netfilter/nf_tables_api.c 				 const struct nft_chain *chain)
chain            7259 net/netfilter/nf_tables_api.c 	if (ctx->chain == chain)
chain            7262 net/netfilter/nf_tables_api.c 	list_for_each_entry(rule, &chain->rules, list) {
chain            7280 net/netfilter/nf_tables_api.c 							data->verdict.chain);
chain            7298 net/netfilter/nf_tables_api.c 			    binding->chain != chain)
chain            7437 net/netfilter/nf_tables_api.c 			err = nf_tables_check_loops(ctx, data->verdict.chain);
chain            7470 net/netfilter/nf_tables_api.c 	struct nft_chain *chain;
chain            7501 net/netfilter/nf_tables_api.c 		chain = nft_chain_lookup(ctx->net, ctx->table,
chain            7503 net/netfilter/nf_tables_api.c 		if (IS_ERR(chain))
chain            7504 net/netfilter/nf_tables_api.c 			return PTR_ERR(chain);
chain            7505 net/netfilter/nf_tables_api.c 		if (nft_is_base_chain(chain))
chain            7508 net/netfilter/nf_tables_api.c 		chain->use++;
chain            7509 net/netfilter/nf_tables_api.c 		data->verdict.chain = chain;
chain            7523 net/netfilter/nf_tables_api.c 		data->verdict.chain->use--;
chain            7543 net/netfilter/nf_tables_api.c 				   v->chain->name))
chain            7671 net/netfilter/nf_tables_api.c 	if (WARN_ON(!nft_is_base_chain(ctx->chain)))
chain            7674 net/netfilter/nf_tables_api.c 	nf_tables_unregister_hook(ctx->net, ctx->chain->table, ctx->chain);
chain            7675 net/netfilter/nf_tables_api.c 	list_for_each_entry_safe(rule, nr, &ctx->chain->rules, list) {
chain            7677 net/netfilter/nf_tables_api.c 		ctx->chain->use--;
chain            7680 net/netfilter/nf_tables_api.c 	nft_chain_del(ctx->chain);
chain            7692 net/netfilter/nf_tables_api.c 	struct nft_chain *chain, *nc;
chain            7704 net/netfilter/nf_tables_api.c 		list_for_each_entry(chain, &table->chains, list)
chain            7705 net/netfilter/nf_tables_api.c 			nf_tables_unregister_hook(net, table, chain);
chain            7708 net/netfilter/nf_tables_api.c 		list_for_each_entry(chain, &table->chains, list) {
chain            7709 net/netfilter/nf_tables_api.c 			ctx.chain = chain;
chain            7710 net/netfilter/nf_tables_api.c 			list_for_each_entry_safe(rule, nr, &chain->rules, list) {
chain            7712 net/netfilter/nf_tables_api.c 				chain->use--;
chain            7731 net/netfilter/nf_tables_api.c 		list_for_each_entry_safe(chain, nc, &table->chains, list) {
chain            7732 net/netfilter/nf_tables_api.c 			ctx.chain = chain;
chain            7733 net/netfilter/nf_tables_api.c 			nft_chain_del(chain);
chain              25 net/netfilter/nf_tables_core.c 					const struct nft_chain *chain,
chain              33 net/netfilter/nf_tables_core.c 	info->chain = chain;
chain              40 net/netfilter/nf_tables_core.c 				    const struct nft_chain *chain,
chain              46 net/netfilter/nf_tables_core.c 		__nft_trace_packet(info, chain, type);
chain              95 net/netfilter/nf_tables_core.c static noinline void nft_update_chain_stats(const struct nft_chain *chain,
chain             102 net/netfilter/nf_tables_core.c 	base_chain = nft_base_chain(chain);
chain             119 net/netfilter/nf_tables_core.c 	const struct nft_chain	*chain;
chain             151 net/netfilter/nf_tables_core.c 	const struct nft_chain *chain = priv, *basechain = chain;
chain             167 net/netfilter/nf_tables_core.c 		rules = rcu_dereference(chain->rules_gen_1);
chain             169 net/netfilter/nf_tables_core.c 		rules = rcu_dereference(chain->rules_gen_0);
chain             192 net/netfilter/nf_tables_core.c 			nft_trace_packet(&info, chain, rule,
chain             204 net/netfilter/nf_tables_core.c 		nft_trace_packet(&info, chain, rule,
chain             213 net/netfilter/nf_tables_core.c 		jumpstack[stackptr].chain = chain;
chain             218 net/netfilter/nf_tables_core.c 		nft_trace_packet(&info, chain, rule,
chain             221 net/netfilter/nf_tables_core.c 		chain = regs.verdict.chain;
chain             225 net/netfilter/nf_tables_core.c 		nft_trace_packet(&info, chain, rule,
chain             234 net/netfilter/nf_tables_core.c 		chain = jumpstack[stackptr].chain;
chain             161 net/netfilter/nf_tables_offload.c static int nft_flow_offload_rule(struct nft_chain *chain,
chain             171 net/netfilter/nf_tables_offload.c 	if (!nft_is_base_chain(chain))
chain             174 net/netfilter/nf_tables_offload.c 	basechain = nft_base_chain(chain);
chain             230 net/netfilter/nf_tables_offload.c static int nft_block_offload_cmd(struct nft_base_chain *chain,
chain             239 net/netfilter/nf_tables_offload.c 	bo.block = &chain->flow_block;
chain             249 net/netfilter/nf_tables_offload.c 	return nft_block_setup(chain, &bo, cmd);
chain             253 net/netfilter/nf_tables_offload.c 				   struct nft_base_chain *chain,
chain             261 net/netfilter/nf_tables_offload.c 	if (!chain)
chain             265 net/netfilter/nf_tables_offload.c 	bo.block = &chain->flow_block;
chain             273 net/netfilter/nf_tables_offload.c 	nft_block_setup(chain, &bo, cmd);
chain             276 net/netfilter/nf_tables_offload.c static int nft_indr_block_offload_cmd(struct nft_base_chain *chain,
chain             284 net/netfilter/nf_tables_offload.c 	bo.block = &chain->flow_block;
chain             295 net/netfilter/nf_tables_offload.c 	return nft_block_setup(chain, &bo, cmd);
chain             300 net/netfilter/nf_tables_offload.c static int nft_flow_offload_chain(struct nft_chain *chain,
chain             308 net/netfilter/nf_tables_offload.c 	if (!nft_is_base_chain(chain))
chain             311 net/netfilter/nf_tables_offload.c 	basechain = nft_base_chain(chain);
chain             340 net/netfilter/nf_tables_offload.c 			if (!(trans->ctx.chain->flags & NFT_CHAIN_HW_OFFLOAD) ||
chain             345 net/netfilter/nf_tables_offload.c 			err = nft_flow_offload_chain(trans->ctx.chain, &policy,
chain             349 net/netfilter/nf_tables_offload.c 			if (!(trans->ctx.chain->flags & NFT_CHAIN_HW_OFFLOAD))
chain             353 net/netfilter/nf_tables_offload.c 			err = nft_flow_offload_chain(trans->ctx.chain, &policy,
chain             357 net/netfilter/nf_tables_offload.c 			if (!(trans->ctx.chain->flags & NFT_CHAIN_HW_OFFLOAD))
chain             365 net/netfilter/nf_tables_offload.c 			err = nft_flow_offload_rule(trans->ctx.chain,
chain             371 net/netfilter/nf_tables_offload.c 			if (!(trans->ctx.chain->flags & NFT_CHAIN_HW_OFFLOAD))
chain             374 net/netfilter/nf_tables_offload.c 			err = nft_flow_offload_rule(trans->ctx.chain,
chain             391 net/netfilter/nf_tables_offload.c 			if (!(trans->ctx.chain->flags & NFT_CHAIN_HW_OFFLOAD))
chain             409 net/netfilter/nf_tables_offload.c 	struct nft_chain *chain;
chain             415 net/netfilter/nf_tables_offload.c 		list_for_each_entry(chain, &table->chains, list) {
chain             416 net/netfilter/nf_tables_offload.c 			if (!nft_is_base_chain(chain) ||
chain             417 net/netfilter/nf_tables_offload.c 			    !(chain->flags & NFT_CHAIN_HW_OFFLOAD))
chain             420 net/netfilter/nf_tables_offload.c 			basechain = nft_base_chain(chain);
chain             424 net/netfilter/nf_tables_offload.c 			return chain;
chain             436 net/netfilter/nf_tables_offload.c 	struct nft_chain *chain;
chain             439 net/netfilter/nf_tables_offload.c 	chain = __nft_offload_get_chain(dev);
chain             440 net/netfilter/nf_tables_offload.c 	if (chain && chain->flags & NFT_CHAIN_HW_OFFLOAD) {
chain             443 net/netfilter/nf_tables_offload.c 		basechain = nft_base_chain(chain);
chain             449 net/netfilter/nf_tables_offload.c static void nft_offload_chain_clean(struct nft_chain *chain)
chain             453 net/netfilter/nf_tables_offload.c 	list_for_each_entry(rule, &chain->rules, list) {
chain             454 net/netfilter/nf_tables_offload.c 		nft_flow_offload_rule(chain, rule,
chain             458 net/netfilter/nf_tables_offload.c 	nft_flow_offload_chain(chain, NULL, FLOW_BLOCK_UNBIND);
chain             466 net/netfilter/nf_tables_offload.c 	struct nft_chain *chain;
chain             472 net/netfilter/nf_tables_offload.c 	chain = __nft_offload_get_chain(dev);
chain             473 net/netfilter/nf_tables_offload.c 	if (chain)
chain             474 net/netfilter/nf_tables_offload.c 		nft_offload_chain_clean(chain);
chain             196 net/netfilter/nf_tables_trace.c 		nla_total_size(strlen(info->chain->table->name)) +
chain             197 net/netfilter/nf_tables_trace.c 		nla_total_size(strlen(info->chain->name)) +
chain             215 net/netfilter/nf_tables_trace.c 		size += nla_total_size(strlen(info->verdict->chain->name)); /* jump target */
chain             240 net/netfilter/nf_tables_trace.c 	if (nla_put_string(skb, NFTA_TRACE_CHAIN, info->chain->name))
chain             243 net/netfilter/nf_tables_trace.c 	if (nla_put_string(skb, NFTA_TRACE_TABLE, info->chain->table->name))
chain             289 net/netfilter/nf_tables_trace.c 		    const struct nft_chain *chain)
chain             291 net/netfilter/nf_tables_trace.c 	info->basechain = nft_base_chain(chain);
chain             289 net/netfilter/nft_chain_filter.c 	struct nft_base_chain *basechain = nft_base_chain(ctx->chain);
chain             319 net/netfilter/nft_chain_filter.c 	struct nft_chain *chain, *nr;
chain             335 net/netfilter/nft_chain_filter.c 		list_for_each_entry_safe(chain, nr, &table->chains, list) {
chain             336 net/netfilter/nft_chain_filter.c 			if (!nft_is_base_chain(chain))
chain             339 net/netfilter/nft_chain_filter.c 			ctx.chain = chain;
chain              34 net/netfilter/nft_compat.c 	const struct nft_chain *chain = ctx->chain;
chain              38 net/netfilter/nft_compat.c 	    !nft_is_base_chain(chain))
chain              41 net/netfilter/nft_compat.c 	basechain = nft_base_chain(chain);
chain             164 net/netfilter/nft_compat.c 	if (nft_is_base_chain(ctx->chain)) {
chain             166 net/netfilter/nft_compat.c 						nft_base_chain(ctx->chain);
chain             312 net/netfilter/nft_compat.c 	if (nft_is_base_chain(ctx->chain)) {
chain             314 net/netfilter/nft_compat.c 						nft_base_chain(ctx->chain);
chain             408 net/netfilter/nft_compat.c 	if (nft_is_base_chain(ctx->chain)) {
chain             410 net/netfilter/nft_compat.c 						nft_base_chain(ctx->chain);
chain             553 net/netfilter/nft_compat.c 	if (nft_is_base_chain(ctx->chain)) {
chain             555 net/netfilter/nft_compat.c 						nft_base_chain(ctx->chain);
chain              60 net/netfilter/nft_fib.c 	return nft_chain_validate_hooks(ctx->chain, hooks);
chain             150 net/netfilter/nft_flow_offload.c 	return nft_chain_validate_hooks(ctx->chain, hook_mask);
chain             200 net/netfilter/nft_fwd_netdev.c 	return nft_chain_validate_hooks(ctx->chain, (1 << NF_NETDEV_INGRESS));
chain             116 net/netfilter/nft_immediate.c 		err = nft_chain_validate(ctx, data->verdict.chain);
chain             182 net/netfilter/nft_lookup.c 		err = nft_chain_validate(ctx, data->verdict.chain);
chain              34 net/netfilter/nft_masq.c 	err = nft_chain_validate_dependency(ctx->chain, NFT_CHAIN_T_NAT);
chain              38 net/netfilter/nft_masq.c 	return nft_chain_validate_hooks(ctx->chain,
chain             415 net/netfilter/nft_meta.c 	return nft_chain_validate_hooks(ctx->chain, hooks);
chain             447 net/netfilter/nft_meta.c 	return nft_chain_validate_hooks(ctx->chain, hooks);
chain              91 net/netfilter/nft_nat.c 	err = nft_chain_validate_dependency(ctx->chain, NFT_CHAIN_T_NAT);
chain              97 net/netfilter/nft_nat.c 		err = nft_chain_validate_hooks(ctx->chain,
chain             102 net/netfilter/nft_nat.c 		err = nft_chain_validate_hooks(ctx->chain,
chain             113 net/netfilter/nft_osf.c 	return nft_chain_validate_hooks(ctx->chain, (1 << NF_INET_LOCAL_IN) |
chain              34 net/netfilter/nft_redir.c 	err = nft_chain_validate_dependency(ctx->chain, NFT_CHAIN_T_NAT);
chain              38 net/netfilter/nft_redir.c 	return nft_chain_validate_hooks(ctx->chain,
chain              30 net/netfilter/nft_reject.c 	return nft_chain_validate_hooks(ctx->chain,
chain             185 net/netfilter/nft_rt.c 	return nft_chain_validate_hooks(ctx->chain, hooks);
chain             254 net/netfilter/nft_synproxy.c 	return nft_chain_validate_hooks(ctx->chain, (1 << NF_INET_LOCAL_IN) |
chain             253 net/netfilter/nft_xfrm.c 	return nft_chain_validate_hooks(ctx->chain, hooks);
chain             884 net/openvswitch/flow.c 		key->recirc_id = tc_ext ? tc_ext->chain : 0;
chain              28 net/sched/act_api.c 	const struct tcf_chain *chain = rcu_dereference_bh(a->goto_chain);
chain              30 net/sched/act_api.c 	res->goto_tp = rcu_dereference_bh(chain->filter_chain);
chain              75 net/sched/act_api.c 		*newchain = tcf_chain_get_by_act(tp->chain->block, chain_index);
chain             103 net/sched/act_api.c 	struct tcf_chain *chain = rcu_dereference_protected(p->goto_chain, 1);
chain             110 net/sched/act_api.c 	if (chain)
chain             111 net/sched/act_api.c 		tcf_chain_put_by_act(chain);
chain              53 net/sched/cls_api.c 	return jhash_3words(tp->chain->index, tp->prio,
chain              57 net/sched/cls_api.c static void tcf_proto_signal_destroying(struct tcf_chain *chain,
chain              60 net/sched/cls_api.c 	struct tcf_block *block = chain->block;
chain              71 net/sched/cls_api.c 	return tp1->chain->index == tp2->chain->index &&
chain              76 net/sched/cls_api.c static bool tcf_proto_exists_destroying(struct tcf_chain *chain,
chain              84 net/sched/cls_api.c 	hash_for_each_possible_rcu(chain->block->proto_destroy_ht, iter,
chain              97 net/sched/cls_api.c tcf_proto_signal_destroyed(struct tcf_chain *chain, struct tcf_proto *tp)
chain              99 net/sched/cls_api.c 	struct tcf_block *block = chain->block;
chain             251 net/sched/cls_api.c 					  u32 prio, struct tcf_chain *chain,
chain             270 net/sched/cls_api.c 	tp->chain = chain;
chain             291 net/sched/cls_api.c static void tcf_chain_put(struct tcf_chain *chain);
chain             298 net/sched/cls_api.c 		tcf_proto_signal_destroyed(tp->chain, tp);
chain             299 net/sched/cls_api.c 	tcf_chain_put(tp->chain);
chain             350 net/sched/cls_api.c 	struct tcf_chain *chain;
chain             354 net/sched/cls_api.c 	chain = kzalloc(sizeof(*chain), GFP_KERNEL);
chain             355 net/sched/cls_api.c 	if (!chain)
chain             357 net/sched/cls_api.c 	list_add_tail(&chain->list, &block->chain_list);
chain             358 net/sched/cls_api.c 	mutex_init(&chain->filter_chain_lock);
chain             359 net/sched/cls_api.c 	chain->block = block;
chain             360 net/sched/cls_api.c 	chain->index = chain_index;
chain             361 net/sched/cls_api.c 	chain->refcnt = 1;
chain             362 net/sched/cls_api.c 	if (!chain->index)
chain             363 net/sched/cls_api.c 		block->chain0.chain = chain;
chain             364 net/sched/cls_api.c 	return chain;
chain             374 net/sched/cls_api.c static void tcf_chain0_head_change(struct tcf_chain *chain,
chain             378 net/sched/cls_api.c 	struct tcf_block *block = chain->block;
chain             380 net/sched/cls_api.c 	if (chain->index)
chain             391 net/sched/cls_api.c static bool tcf_chain_detach(struct tcf_chain *chain)
chain             393 net/sched/cls_api.c 	struct tcf_block *block = chain->block;
chain             397 net/sched/cls_api.c 	list_del(&chain->list);
chain             398 net/sched/cls_api.c 	if (!chain->index)
chain             399 net/sched/cls_api.c 		block->chain0.chain = NULL;
chain             415 net/sched/cls_api.c static void tcf_chain_destroy(struct tcf_chain *chain, bool free_block)
chain             417 net/sched/cls_api.c 	struct tcf_block *block = chain->block;
chain             419 net/sched/cls_api.c 	mutex_destroy(&chain->filter_chain_lock);
chain             420 net/sched/cls_api.c 	kfree_rcu(chain, rcu);
chain             425 net/sched/cls_api.c static void tcf_chain_hold(struct tcf_chain *chain)
chain             427 net/sched/cls_api.c 	ASSERT_BLOCK_LOCKED(chain->block);
chain             429 net/sched/cls_api.c 	++chain->refcnt;
chain             432 net/sched/cls_api.c static bool tcf_chain_held_by_acts_only(struct tcf_chain *chain)
chain             434 net/sched/cls_api.c 	ASSERT_BLOCK_LOCKED(chain->block);
chain             439 net/sched/cls_api.c 	return chain->refcnt == chain->action_refcnt;
chain             445 net/sched/cls_api.c 	struct tcf_chain *chain;
chain             449 net/sched/cls_api.c 	list_for_each_entry(chain, &block->chain_list, list) {
chain             450 net/sched/cls_api.c 		if (chain->index == chain_index)
chain             451 net/sched/cls_api.c 			return chain;
chain             456 net/sched/cls_api.c static int tc_chain_notify(struct tcf_chain *chain, struct sk_buff *oskb,
chain             463 net/sched/cls_api.c 	struct tcf_chain *chain = NULL;
chain             467 net/sched/cls_api.c 	chain = tcf_chain_lookup(block, chain_index);
chain             468 net/sched/cls_api.c 	if (chain) {
chain             469 net/sched/cls_api.c 		tcf_chain_hold(chain);
chain             473 net/sched/cls_api.c 		chain = tcf_chain_create(block, chain_index);
chain             474 net/sched/cls_api.c 		if (!chain)
chain             479 net/sched/cls_api.c 		++chain->action_refcnt;
chain             480 net/sched/cls_api.c 	is_first_reference = chain->refcnt - chain->action_refcnt == 1;
chain             489 net/sched/cls_api.c 		tc_chain_notify(chain, NULL, 0, NLM_F_CREATE | NLM_F_EXCL,
chain             492 net/sched/cls_api.c 	return chain;
chain             496 net/sched/cls_api.c 	return chain;
chain             518 net/sched/cls_api.c static void __tcf_chain_put(struct tcf_chain *chain, bool by_act,
chain             521 net/sched/cls_api.c 	struct tcf_block *block = chain->block;
chain             529 net/sched/cls_api.c 		if (!chain->explicitly_created) {
chain             533 net/sched/cls_api.c 		chain->explicitly_created = false;
chain             537 net/sched/cls_api.c 		chain->action_refcnt--;
chain             543 net/sched/cls_api.c 	refcnt = --chain->refcnt;
chain             544 net/sched/cls_api.c 	tmplt_ops = chain->tmplt_ops;
chain             545 net/sched/cls_api.c 	tmplt_priv = chain->tmplt_priv;
chain             548 net/sched/cls_api.c 	if (refcnt - chain->action_refcnt == 0 && !by_act) {
chain             549 net/sched/cls_api.c 		tc_chain_notify_delete(tmplt_ops, tmplt_priv, chain->index,
chain             552 net/sched/cls_api.c 		chain->flushing = false;
chain             556 net/sched/cls_api.c 		free_block = tcf_chain_detach(chain);
chain             561 net/sched/cls_api.c 		tcf_chain_destroy(chain, free_block);
chain             565 net/sched/cls_api.c static void tcf_chain_put(struct tcf_chain *chain)
chain             567 net/sched/cls_api.c 	__tcf_chain_put(chain, false, false);
chain             570 net/sched/cls_api.c void tcf_chain_put_by_act(struct tcf_chain *chain)
chain             572 net/sched/cls_api.c 	__tcf_chain_put(chain, true, false);
chain             576 net/sched/cls_api.c static void tcf_chain_put_explicitly_created(struct tcf_chain *chain)
chain             578 net/sched/cls_api.c 	__tcf_chain_put(chain, false, true);
chain             581 net/sched/cls_api.c static void tcf_chain_flush(struct tcf_chain *chain, bool rtnl_held)
chain             585 net/sched/cls_api.c 	mutex_lock(&chain->filter_chain_lock);
chain             586 net/sched/cls_api.c 	tp = tcf_chain_dereference(chain->filter_chain, chain);
chain             589 net/sched/cls_api.c 		tcf_proto_signal_destroying(chain, tp);
chain             592 net/sched/cls_api.c 	tp = tcf_chain_dereference(chain->filter_chain, chain);
chain             593 net/sched/cls_api.c 	RCU_INIT_POINTER(chain->filter_chain, NULL);
chain             594 net/sched/cls_api.c 	tcf_chain0_head_change(chain, NULL);
chain             595 net/sched/cls_api.c 	chain->flushing = true;
chain             596 net/sched/cls_api.c 	mutex_unlock(&chain->filter_chain_lock);
chain             811 net/sched/cls_api.c 	chain0 = block->chain0.chain;
chain             849 net/sched/cls_api.c 			if (block->chain0.chain)
chain             944 net/sched/cls_api.c __tcf_get_next_chain(struct tcf_block *block, struct tcf_chain *chain)
chain             947 net/sched/cls_api.c 	if (chain)
chain             948 net/sched/cls_api.c 		chain = list_is_last(&chain->list, &block->chain_list) ?
chain             949 net/sched/cls_api.c 			NULL : list_next_entry(chain, list);
chain             951 net/sched/cls_api.c 		chain = list_first_entry_or_null(&block->chain_list,
chain             955 net/sched/cls_api.c 	while (chain && tcf_chain_held_by_acts_only(chain))
chain             956 net/sched/cls_api.c 		chain = list_is_last(&chain->list, &block->chain_list) ?
chain             957 net/sched/cls_api.c 			NULL : list_next_entry(chain, list);
chain             959 net/sched/cls_api.c 	if (chain)
chain             960 net/sched/cls_api.c 		tcf_chain_hold(chain);
chain             963 net/sched/cls_api.c 	return chain;
chain             976 net/sched/cls_api.c tcf_get_next_chain(struct tcf_block *block, struct tcf_chain *chain)
chain             978 net/sched/cls_api.c 	struct tcf_chain *chain_next = __tcf_get_next_chain(block, chain);
chain             980 net/sched/cls_api.c 	if (chain)
chain             981 net/sched/cls_api.c 		tcf_chain_put(chain);
chain             988 net/sched/cls_api.c __tcf_get_next_proto(struct tcf_chain *chain, struct tcf_proto *tp)
chain             993 net/sched/cls_api.c 	mutex_lock(&chain->filter_chain_lock);
chain             996 net/sched/cls_api.c 		tp = tcf_chain_dereference(chain->filter_chain, chain);
chain            1003 net/sched/cls_api.c 		tp = tcf_chain_dereference(chain->filter_chain, chain);
chain            1005 net/sched/cls_api.c 		for (; tp; tp = tcf_chain_dereference(tp->next, chain))
chain            1009 net/sched/cls_api.c 		tp = tcf_chain_dereference(tp->next, chain);
chain            1015 net/sched/cls_api.c 	mutex_unlock(&chain->filter_chain_lock);
chain            1029 net/sched/cls_api.c tcf_get_next_proto(struct tcf_chain *chain, struct tcf_proto *tp,
chain            1032 net/sched/cls_api.c 	struct tcf_proto *tp_next = __tcf_get_next_proto(chain, tp);
chain            1043 net/sched/cls_api.c 	struct tcf_chain *chain;
chain            1048 net/sched/cls_api.c 	for (chain = tcf_get_next_chain(block, NULL);
chain            1049 net/sched/cls_api.c 	     chain;
chain            1050 net/sched/cls_api.c 	     chain = tcf_get_next_chain(block, chain)) {
chain            1051 net/sched/cls_api.c 		tcf_chain_put_explicitly_created(chain);
chain            1052 net/sched/cls_api.c 		tcf_chain_flush(chain, rtnl_held);
chain            1439 net/sched/cls_api.c 	struct tcf_chain *chain, *chain_prev;
chain            1445 net/sched/cls_api.c 	for (chain = __tcf_get_next_chain(block, NULL);
chain            1446 net/sched/cls_api.c 	     chain;
chain            1447 net/sched/cls_api.c 	     chain_prev = chain,
chain            1448 net/sched/cls_api.c 		     chain = __tcf_get_next_chain(block, chain),
chain            1450 net/sched/cls_api.c 		for (tp = __tcf_get_next_proto(chain, NULL); tp;
chain            1452 net/sched/cls_api.c 			     tp = __tcf_get_next_proto(chain, tp),
chain            1471 net/sched/cls_api.c 	tcf_chain_put(chain);
chain            1597 net/sched/cls_api.c 				ext->chain = err & TC_ACT_EXT_VAL_MASK;
chain            1612 net/sched/cls_api.c 				       tp->chain->block->index,
chain            1629 net/sched/cls_api.c static struct tcf_proto *tcf_chain_tp_prev(struct tcf_chain *chain,
chain            1632 net/sched/cls_api.c 	return tcf_chain_dereference(*chain_info->pprev, chain);
chain            1635 net/sched/cls_api.c static int tcf_chain_tp_insert(struct tcf_chain *chain,
chain            1639 net/sched/cls_api.c 	if (chain->flushing)
chain            1642 net/sched/cls_api.c 	if (*chain_info->pprev == chain->filter_chain)
chain            1643 net/sched/cls_api.c 		tcf_chain0_head_change(chain, tp);
chain            1645 net/sched/cls_api.c 	RCU_INIT_POINTER(tp->next, tcf_chain_tp_prev(chain, chain_info));
chain            1651 net/sched/cls_api.c static void tcf_chain_tp_remove(struct tcf_chain *chain,
chain            1655 net/sched/cls_api.c 	struct tcf_proto *next = tcf_chain_dereference(chain_info->next, chain);
chain            1658 net/sched/cls_api.c 	if (tp == chain->filter_chain)
chain            1659 net/sched/cls_api.c 		tcf_chain0_head_change(chain, next);
chain            1663 net/sched/cls_api.c static struct tcf_proto *tcf_chain_tp_find(struct tcf_chain *chain,
chain            1673 net/sched/cls_api.c static struct tcf_proto *tcf_chain_tp_insert_unique(struct tcf_chain *chain,
chain            1682 net/sched/cls_api.c 	mutex_lock(&chain->filter_chain_lock);
chain            1684 net/sched/cls_api.c 	if (tcf_proto_exists_destroying(chain, tp_new)) {
chain            1685 net/sched/cls_api.c 		mutex_unlock(&chain->filter_chain_lock);
chain            1690 net/sched/cls_api.c 	tp = tcf_chain_tp_find(chain, &chain_info,
chain            1693 net/sched/cls_api.c 		err = tcf_chain_tp_insert(chain, &chain_info, tp_new);
chain            1694 net/sched/cls_api.c 	mutex_unlock(&chain->filter_chain_lock);
chain            1707 net/sched/cls_api.c static void tcf_chain_tp_delete_empty(struct tcf_chain *chain,
chain            1716 net/sched/cls_api.c 	mutex_lock(&chain->filter_chain_lock);
chain            1719 net/sched/cls_api.c 	for (pprev = &chain->filter_chain;
chain            1720 net/sched/cls_api.c 	     (tp_iter = tcf_chain_dereference(*pprev, chain));
chain            1734 net/sched/cls_api.c 		mutex_unlock(&chain->filter_chain_lock);
chain            1738 net/sched/cls_api.c 	tcf_proto_signal_destroying(chain, tp);
chain            1739 net/sched/cls_api.c 	next = tcf_chain_dereference(chain_info.next, chain);
chain            1740 net/sched/cls_api.c 	if (tp == chain->filter_chain)
chain            1741 net/sched/cls_api.c 		tcf_chain0_head_change(chain, next);
chain            1743 net/sched/cls_api.c 	mutex_unlock(&chain->filter_chain_lock);
chain            1748 net/sched/cls_api.c static struct tcf_proto *tcf_chain_tp_find(struct tcf_chain *chain,
chain            1757 net/sched/cls_api.c 	for (pprev = &chain->filter_chain;
chain            1758 net/sched/cls_api.c 	     (tp = tcf_chain_dereference(*pprev, chain));
chain            1808 net/sched/cls_api.c 	if (nla_put_u32(skb, TCA_CHAIN, tp->chain->index))
chain            1902 net/sched/cls_api.c 				 struct tcf_chain *chain, int event,
chain            1907 net/sched/cls_api.c 	for (tp = tcf_get_next_proto(chain, NULL, rtnl_held);
chain            1908 net/sched/cls_api.c 	     tp; tp = tcf_get_next_proto(chain, tp, rtnl_held))
chain            1933 net/sched/cls_api.c 	struct tcf_chain *chain = NULL;
chain            2016 net/sched/cls_api.c 	chain = tcf_chain_get(block, chain_index, true);
chain            2017 net/sched/cls_api.c 	if (!chain) {
chain            2023 net/sched/cls_api.c 	mutex_lock(&chain->filter_chain_lock);
chain            2024 net/sched/cls_api.c 	tp = tcf_chain_tp_find(chain, &chain_info, protocol,
chain            2035 net/sched/cls_api.c 		if (chain->flushing) {
chain            2055 net/sched/cls_api.c 			prio = tcf_auto_prio(tcf_chain_tp_prev(chain,
chain            2058 net/sched/cls_api.c 		mutex_unlock(&chain->filter_chain_lock);
chain            2059 net/sched/cls_api.c 		tp_new = tcf_proto_create(name, protocol, prio, chain,
chain            2067 net/sched/cls_api.c 		tp = tcf_chain_tp_insert_unique(chain, tp_new, protocol, prio,
chain            2074 net/sched/cls_api.c 		mutex_unlock(&chain->filter_chain_lock);
chain            2098 net/sched/cls_api.c 	if (chain->tmplt_ops && chain->tmplt_ops != tp->ops) {
chain            2118 net/sched/cls_api.c 		tcf_chain_tp_delete_empty(chain, tp, rtnl_held, NULL);
chain            2120 net/sched/cls_api.c 	if (chain) {
chain            2124 net/sched/cls_api.c 			tcf_chain_put(chain);
chain            2142 net/sched/cls_api.c 	mutex_unlock(&chain->filter_chain_lock);
chain            2159 net/sched/cls_api.c 	struct tcf_chain *chain = NULL;
chain            2224 net/sched/cls_api.c 	chain = tcf_chain_get(block, chain_index, false);
chain            2225 net/sched/cls_api.c 	if (!chain) {
chain            2240 net/sched/cls_api.c 				     chain, RTM_DELTFILTER, rtnl_held);
chain            2241 net/sched/cls_api.c 		tcf_chain_flush(chain, rtnl_held);
chain            2246 net/sched/cls_api.c 	mutex_lock(&chain->filter_chain_lock);
chain            2247 net/sched/cls_api.c 	tp = tcf_chain_tp_find(chain, &chain_info, protocol,
chain            2258 net/sched/cls_api.c 		tcf_proto_signal_destroying(chain, tp);
chain            2259 net/sched/cls_api.c 		tcf_chain_tp_remove(chain, &chain_info, tp);
chain            2260 net/sched/cls_api.c 		mutex_unlock(&chain->filter_chain_lock);
chain            2268 net/sched/cls_api.c 	mutex_unlock(&chain->filter_chain_lock);
chain            2285 net/sched/cls_api.c 			tcf_chain_tp_delete_empty(chain, tp, rtnl_held, extack);
chain            2289 net/sched/cls_api.c 	if (chain) {
chain            2292 net/sched/cls_api.c 		tcf_chain_put(chain);
chain            2302 net/sched/cls_api.c 	mutex_unlock(&chain->filter_chain_lock);
chain            2319 net/sched/cls_api.c 	struct tcf_chain *chain = NULL;
chain            2380 net/sched/cls_api.c 	chain = tcf_chain_get(block, chain_index, false);
chain            2381 net/sched/cls_api.c 	if (!chain) {
chain            2387 net/sched/cls_api.c 	mutex_lock(&chain->filter_chain_lock);
chain            2388 net/sched/cls_api.c 	tp = tcf_chain_tp_find(chain, &chain_info, protocol,
chain            2390 net/sched/cls_api.c 	mutex_unlock(&chain->filter_chain_lock);
chain            2415 net/sched/cls_api.c 	if (chain) {
chain            2418 net/sched/cls_api.c 		tcf_chain_put(chain);
chain            2448 net/sched/cls_api.c static bool tcf_chain_dump(struct tcf_chain *chain, struct Qdisc *q, u32 parent,
chain            2453 net/sched/cls_api.c 	struct tcf_block *block = chain->block;
chain            2458 net/sched/cls_api.c 	for (tp = __tcf_get_next_proto(chain, NULL);
chain            2461 net/sched/cls_api.c 		     tp = __tcf_get_next_proto(chain, tp),
chain            2511 net/sched/cls_api.c 	struct tcf_chain *chain, *chain_prev;
chain            2578 net/sched/cls_api.c 	for (chain = __tcf_get_next_chain(block, NULL);
chain            2579 net/sched/cls_api.c 	     chain;
chain            2580 net/sched/cls_api.c 	     chain_prev = chain,
chain            2581 net/sched/cls_api.c 		     chain = __tcf_get_next_chain(block, chain),
chain            2584 net/sched/cls_api.c 		    nla_get_u32(tca[TCA_CHAIN]) != chain->index)
chain            2586 net/sched/cls_api.c 		if (!tcf_chain_dump(chain, q, parent, skb, cb,
chain            2588 net/sched/cls_api.c 			tcf_chain_put(chain);
chain            2655 net/sched/cls_api.c static int tc_chain_notify(struct tcf_chain *chain, struct sk_buff *oskb,
chain            2659 net/sched/cls_api.c 	struct tcf_block *block = chain->block;
chain            2668 net/sched/cls_api.c 	if (tc_chain_fill_node(chain->tmplt_ops, chain->tmplt_priv,
chain            2669 net/sched/cls_api.c 			       chain->index, net, skb, block, portid,
chain            2711 net/sched/cls_api.c static int tc_chain_tmplt_add(struct tcf_chain *chain, struct net *net,
chain            2736 net/sched/cls_api.c 	tmplt_priv = ops->tmplt_create(net, chain, tca, extack);
chain            2741 net/sched/cls_api.c 	chain->tmplt_ops = ops;
chain            2742 net/sched/cls_api.c 	chain->tmplt_priv = tmplt_priv;
chain            2768 net/sched/cls_api.c 	struct tcf_chain *chain = NULL;
chain            2800 net/sched/cls_api.c 	chain = tcf_chain_lookup(block, chain_index);
chain            2802 net/sched/cls_api.c 		if (chain) {
chain            2803 net/sched/cls_api.c 			if (tcf_chain_held_by_acts_only(chain)) {
chain            2807 net/sched/cls_api.c 				tcf_chain_hold(chain);
chain            2819 net/sched/cls_api.c 			chain = tcf_chain_create(block, chain_index);
chain            2820 net/sched/cls_api.c 			if (!chain) {
chain            2827 net/sched/cls_api.c 		if (!chain || tcf_chain_held_by_acts_only(chain)) {
chain            2832 net/sched/cls_api.c 		tcf_chain_hold(chain);
chain            2841 net/sched/cls_api.c 		tcf_chain_hold(chain);
chain            2842 net/sched/cls_api.c 		chain->explicitly_created = true;
chain            2848 net/sched/cls_api.c 		err = tc_chain_tmplt_add(chain, net, tca, extack);
chain            2850 net/sched/cls_api.c 			tcf_chain_put_explicitly_created(chain);
chain            2854 net/sched/cls_api.c 		tc_chain_notify(chain, NULL, 0, NLM_F_CREATE | NLM_F_EXCL,
chain            2859 net/sched/cls_api.c 				     chain, RTM_DELTFILTER, true);
chain            2861 net/sched/cls_api.c 		tcf_chain_flush(chain, true);
chain            2865 net/sched/cls_api.c 		tcf_chain_put_explicitly_created(chain);
chain            2868 net/sched/cls_api.c 		err = tc_chain_notify(chain, skb, n->nlmsg_seq,
chain            2880 net/sched/cls_api.c 	tcf_chain_put(chain);
chain            2901 net/sched/cls_api.c 	struct tcf_chain *chain;
chain            2965 net/sched/cls_api.c 	list_for_each_entry(chain, &block->chain_list, list) {
chain            2967 net/sched/cls_api.c 		     nla_get_u32(tca[TCA_CHAIN]) != chain->index))
chain            2973 net/sched/cls_api.c 		if (tcf_chain_held_by_acts_only(chain))
chain            2975 net/sched/cls_api.c 		err = tc_chain_fill_node(chain->tmplt_ops, chain->tmplt_priv,
chain            2976 net/sched/cls_api.c 					 chain->index, net, skb, block,
chain             148 net/sched/cls_bpf.c 	struct tcf_block *block = tp->chain->block;
chain             229 net/sched/cls_bpf.c 	struct tcf_block *block = tp->chain->block;
chain             403 net/sched/cls_bpf.c 		tcf_block_netif_keep_dst(tp->chain->block);
chain             669 net/sched/cls_bpf.c 	struct tcf_block *block = tp->chain->block;
chain             503 net/sched/cls_flow.c 			struct Qdisc *q = tcf_block_q(tp->chain->block);
chain             518 net/sched/cls_flow.c 	tcf_block_netif_keep_dst(tp->chain->block);
chain              90 net/sched/cls_flower.c 	struct tcf_chain *chain;
chain             418 net/sched/cls_flower.c 	struct tcf_block *block = tp->chain->block;
chain             434 net/sched/cls_flower.c 	struct tcf_block *block = tp->chain->block;
chain             481 net/sched/cls_flower.c 	struct tcf_block *block = tp->chain->block;
chain            1591 net/sched/cls_flower.c 			   tp->chain->tmplt_priv, rtnl_held, extack);
chain            1787 net/sched/cls_flower.c 	struct tcf_block *block = tp->chain->block;
chain            1871 net/sched/cls_flower.c static int fl_hw_create_tmplt(struct tcf_chain *chain,
chain            1875 net/sched/cls_flower.c 	struct tcf_block *block = chain->block;
chain            1881 net/sched/cls_flower.c 	cls_flower.common.chain_index = chain->index;
chain            1897 net/sched/cls_flower.c static void fl_hw_destroy_tmplt(struct tcf_chain *chain,
chain            1901 net/sched/cls_flower.c 	struct tcf_block *block = chain->block;
chain            1903 net/sched/cls_flower.c 	cls_flower.common.chain_index = chain->index;
chain            1910 net/sched/cls_flower.c static void *fl_tmplt_create(struct net *net, struct tcf_chain *chain,
chain            1934 net/sched/cls_flower.c 	tmplt->chain = chain;
chain            1941 net/sched/cls_flower.c 	err = fl_hw_create_tmplt(chain, tmplt);
chain            1959 net/sched/cls_flower.c 	fl_hw_destroy_tmplt(tmplt->chain, tmplt);
chain              75 net/sched/cls_fw.c 		struct Qdisc *q = tcf_block_q(tp->chain->block);
chain              72 net/sched/cls_matchall.c 	struct tcf_block *block = tp->chain->block;
chain              88 net/sched/cls_matchall.c 	struct tcf_block *block = tp->chain->block;
chain             290 net/sched/cls_matchall.c 	struct tcf_block *block = tp->chain->block;
chain             332 net/sched/cls_matchall.c 	struct tcf_block *block = tp->chain->block;
chain             525 net/sched/cls_route.c 	tcf_block_netif_keep_dst(tp->chain->block);
chain             114 net/sched/cls_tcindex.c 		struct Qdisc *q = tcf_block_q(tp->chain->block);
chain             321 net/sched/cls_u32.c 	struct tcf_block *block = tp->chain->block;
chain             474 net/sched/cls_u32.c 	struct tcf_block *block = tp->chain->block;
chain             489 net/sched/cls_u32.c 	struct tcf_block *block = tp->chain->block;
chain             518 net/sched/cls_u32.c 	struct tcf_block *block = tp->chain->block;
chain             533 net/sched/cls_u32.c 	struct tcf_block *block = tp->chain->block;
chain            1177 net/sched/cls_u32.c 	struct tcf_block *block = tp->chain->block;
chain             177 net/sched/ematch.c 	struct net *net = tp->chain->block->net;
chain            1904 net/sched/sch_api.c 		struct Qdisc *q = tcf_block_q(tp->chain->block);
chain            1926 net/sched/sch_api.c 	struct tcf_chain *chain;
chain            1931 net/sched/sch_api.c 	for (chain = tcf_get_next_chain(block, NULL);
chain            1932 net/sched/sch_api.c 	     chain;
chain            1933 net/sched/sch_api.c 	     chain = tcf_get_next_chain(block, chain)) {
chain            1936 net/sched/sch_api.c 		for (tp = tcf_get_next_proto(chain, NULL, true);
chain            1937 net/sched/sch_api.c 		     tp; tp = tcf_get_next_proto(chain, tp, true)) {
chain             738 net/sctp/input.c 		sctp_for_each_hentry(epb2, &head->chain) {
chain             766 net/sctp/input.c 	hlist_add_head(&epb->node, &head->chain);
chain             843 net/sctp/input.c 	sctp_for_each_hentry(epb, &head->chain) {
chain             174 net/sctp/proc.c 	sctp_for_each_hentry(epb, &head->chain) {
chain            1462 net/sctp/protocol.c 		INIT_HLIST_HEAD(&sctp_ep_hashtable[i].chain);
chain            1496 net/sctp/protocol.c 		INIT_HLIST_HEAD(&sctp_port_hashtable[i].chain);
chain            5364 net/sctp/socket.c 		sctp_for_each_hentry(epb, &head->chain) {
chain            8200 net/sctp/socket.c 			sctp_for_each_hentry(pp, &head->chain)
chain            8228 net/sctp/socket.c 		sctp_for_each_hentry(pp, &head->chain) {
chain            8545 net/sctp/socket.c 		hlist_add_head(&pp->node, &head->chain);
chain             423 net/switchdev/switchdev.c 	struct blocking_notifier_head *chain = &switchdev_blocking_notif_chain;
chain             425 net/switchdev/switchdev.c 	return blocking_notifier_chain_register(chain, nb);
chain             431 net/switchdev/switchdev.c 	struct blocking_notifier_head *chain = &switchdev_blocking_notif_chain;
chain             433 net/switchdev/switchdev.c 	return blocking_notifier_chain_unregister(chain, nb);
chain             177 net/xfrm/xfrm_policy.c xfrm_policy_insert_list(struct hlist_head *chain, struct xfrm_policy *policy,
chain             179 net/xfrm/xfrm_policy.c static void xfrm_policy_insert_inexact_list(struct hlist_head *chain,
chain            1176 net/xfrm/xfrm_policy.c 	struct hlist_head *chain;
chain            1186 net/xfrm/xfrm_policy.c 	chain = xfrm_policy_inexact_alloc_chain(bin, policy, dir);
chain            1187 net/xfrm/xfrm_policy.c 	if (!chain) {
chain            1192 net/xfrm/xfrm_policy.c 	delpol = xfrm_policy_insert_list(chain, policy, excl);
chain            1198 net/xfrm/xfrm_policy.c 	chain = &net->xfrm.policy_inexact[dir];
chain            1199 net/xfrm/xfrm_policy.c 	xfrm_policy_insert_inexact_list(chain, policy);
chain            1214 net/xfrm/xfrm_policy.c 	struct hlist_head *chain;
chain            1320 net/xfrm/xfrm_policy.c 		chain = policy_hash_bysel(net, &policy->selector,
chain            1323 net/xfrm/xfrm_policy.c 		if (!chain) {
chain            1330 net/xfrm/xfrm_policy.c 		hlist_for_each_entry(pol, chain, bydst) {
chain            1339 net/xfrm/xfrm_policy.c 			hlist_add_head_rcu(&policy->bydst, chain);
chain            1492 net/xfrm/xfrm_policy.c static void xfrm_policy_insert_inexact_list(struct hlist_head *chain,
chain            1499 net/xfrm/xfrm_policy.c 	hlist_for_each_entry(pol, chain, bydst_inexact_list) {
chain            1520 net/xfrm/xfrm_policy.c 		hlist_add_head_rcu(&policy->bydst_inexact_list, chain);
chain            1522 net/xfrm/xfrm_policy.c 	hlist_for_each_entry(pol, chain, bydst_inexact_list) {
chain            1528 net/xfrm/xfrm_policy.c static struct xfrm_policy *xfrm_policy_insert_list(struct hlist_head *chain,
chain            1534 net/xfrm/xfrm_policy.c 	hlist_for_each_entry(pol, chain, bydst) {
chain            1557 net/xfrm/xfrm_policy.c 		hlist_add_head_rcu(&policy->bydst, chain);
chain            1566 net/xfrm/xfrm_policy.c 	struct hlist_head *chain;
chain            1569 net/xfrm/xfrm_policy.c 	chain = policy_hash_bysel(net, &policy->selector, policy->family, dir);
chain            1570 net/xfrm/xfrm_policy.c 	if (chain)
chain            1571 net/xfrm/xfrm_policy.c 		delpol = xfrm_policy_insert_list(chain, policy, excl);
chain            1610 net/xfrm/xfrm_policy.c __xfrm_policy_bysel_ctx(struct hlist_head *chain, u32 mark, u32 if_id,
chain            1617 net/xfrm/xfrm_policy.c 	if (!chain)
chain            1620 net/xfrm/xfrm_policy.c 	hlist_for_each_entry(pol, chain, bydst) {
chain            1640 net/xfrm/xfrm_policy.c 	struct hlist_head *chain;
chain            1644 net/xfrm/xfrm_policy.c 	chain = policy_hash_bysel(net, sel, sel->family, dir);
chain            1645 net/xfrm/xfrm_policy.c 	if (!chain) {
chain            1677 net/xfrm/xfrm_policy.c 		pol = __xfrm_policy_bysel_ctx(chain, mark, if_id, type, dir,
chain            1708 net/xfrm/xfrm_policy.c 	struct hlist_head *chain;
chain            1716 net/xfrm/xfrm_policy.c 	chain = net->xfrm.policy_byidx + idx_hash(net, id);
chain            1718 net/xfrm/xfrm_policy.c 	hlist_for_each_entry(pol, chain, byidx) {
chain            2008 net/xfrm/xfrm_policy.c __xfrm_policy_eval_candidates(struct hlist_head *chain,
chain            2016 net/xfrm/xfrm_policy.c 	if (!chain)
chain            2019 net/xfrm/xfrm_policy.c 	hlist_for_each_entry_rcu(pol, chain, bydst) {
chain            2080 net/xfrm/xfrm_policy.c 	struct hlist_head *chain;
chain            2093 net/xfrm/xfrm_policy.c 		chain = policy_hash_direct(net, daddr, saddr, family, dir);
chain            2097 net/xfrm/xfrm_policy.c 	hlist_for_each_entry_rcu(pol, chain, bydst) {
chain            4252 net/xfrm/xfrm_policy.c 	struct hlist_head *chain;
chain            4256 net/xfrm/xfrm_policy.c 	chain = policy_hash_direct(net, &sel->daddr, &sel->saddr, sel->family, dir);
chain            4257 net/xfrm/xfrm_policy.c 	hlist_for_each_entry(pol, chain, bydst) {
chain            4265 net/xfrm/xfrm_policy.c 	chain = &net->xfrm.policy_inexact[dir];
chain            4266 net/xfrm/xfrm_policy.c 	hlist_for_each_entry(pol, chain, bydst_inexact_list) {
chain             353 sound/sound_core.c 	const int chain = unit % SOUND_STEP;
chain             358 sound/sound_core.c 	switch (chain) {
chain             404 sound/sound_core.c 			sprintf(_name, "unknown%d", chain);
chain             411 sound/sound_core.c 	return sound_insert_unit(&chains[chain], fops, -1, unit, max_unit,
chain             522 sound/sound_core.c static struct sound_unit *__look_for_unit(int chain, int unit)
chain             526 sound/sound_core.c 	s=chains[chain];
chain             538 sound/sound_core.c 	int chain;
chain             543 sound/sound_core.c 	chain=unit&0x0F;
chain             544 sound/sound_core.c 	if(chain==4 || chain==5)	/* dsp/audio/dsp16 */
chain             548 sound/sound_core.c 		chain=3;
chain             552 sound/sound_core.c 	s = __look_for_unit(chain, unit);
chain             566 sound/sound_core.c 		request_module("sound-service-%i-%i", unit>>4, chain);
chain             579 sound/sound_core.c 		s = __look_for_unit(chain, unit);
chain             242 tools/perf/arch/powerpc/util/skip-callchain-idx.c int arch_skip_callchain_idx(struct thread *thread, struct ip_callchain *chain)
chain             250 tools/perf/arch/powerpc/util/skip-callchain-idx.c 	if (!chain || chain->nr < 3)
chain             253 tools/perf/arch/powerpc/util/skip-callchain-idx.c 	ip = chain->ips[1];
chain            2748 tools/perf/builtin-sched.c 	struct callchain_list *chain;
chain            2759 tools/perf/builtin-sched.c 	list_for_each_entry(chain, &node->val, list) {
chain            2760 tools/perf/builtin-sched.c 		if (chain->ip >= PERF_CONTEXT_MAX)
chain            2762 tools/perf/builtin-sched.c 		if (chain->ms.sym && chain->ms.sym->ignore)
chain            2765 tools/perf/builtin-sched.c 			       callchain_list__sym_name(chain, bf, sizeof(bf),
chain            2777 tools/perf/builtin-sched.c 	struct callchain_node *chain;
chain            2785 tools/perf/builtin-sched.c 		chain = rb_entry(rb_node, struct callchain_node, rb_node);
chain            2789 tools/perf/builtin-sched.c 		print_sched_time(chain->hit, 12);
chain            2791 tools/perf/builtin-sched.c 		ret += fprintf(fp, " %8d  ", chain->count);
chain            2792 tools/perf/builtin-sched.c 		ret += callchain__fprintf_folded(fp, chain);
chain             483 tools/perf/builtin-timechart.c 	struct ip_callchain *chain = sample->callchain;
chain             491 tools/perf/builtin-timechart.c 	if (!chain)
chain             500 tools/perf/builtin-timechart.c 	for (i = 0; i < chain->nr; i++) {
chain             504 tools/perf/builtin-timechart.c 			ip = chain->ips[i];
chain             506 tools/perf/builtin-timechart.c 			ip = chain->ips[chain->nr - i - 1];
chain             180 tools/perf/ui/browsers/hists.c 		struct callchain_list *chain;
chain             183 tools/perf/ui/browsers/hists.c 		list_for_each_entry(chain, &child->val, list) {
chain             187 tools/perf/ui/browsers/hists.c 			folded_sign = callchain_list__folded(chain);
chain             201 tools/perf/ui/browsers/hists.c 	struct callchain_list *chain;
chain             205 tools/perf/ui/browsers/hists.c 	list_for_each_entry(chain, &node->parent_val, list) {
chain             208 tools/perf/ui/browsers/hists.c 			folded_sign = callchain_list__folded(chain);
chain             215 tools/perf/ui/browsers/hists.c 	list_for_each_entry(chain, &node->val, list) {
chain             218 tools/perf/ui/browsers/hists.c 			folded_sign = callchain_list__folded(chain);
chain             235 tools/perf/ui/browsers/hists.c 	struct callchain_list *chain;
chain             244 tools/perf/ui/browsers/hists.c 	list_for_each_entry(chain, &node->val, list) {
chain             247 tools/perf/ui/browsers/hists.c 		unfolded = chain->unfolded;
chain             256 tools/perf/ui/browsers/hists.c static int callchain__count_rows(struct rb_root *chain)
chain             261 tools/perf/ui/browsers/hists.c 	for (nd = rb_first(chain); nd; nd = rb_next(nd)) {
chain             331 tools/perf/ui/browsers/hists.c 		struct callchain_list *chain;
chain             334 tools/perf/ui/browsers/hists.c 		list_for_each_entry(chain, &child->val, list) {
chain             337 tools/perf/ui/browsers/hists.c 				chain->has_children = chain->list.next != &child->val ||
chain             340 tools/perf/ui/browsers/hists.c 				chain->has_children = chain->list.next == &child->val &&
chain             351 tools/perf/ui/browsers/hists.c 	struct callchain_list *chain;
chain             353 tools/perf/ui/browsers/hists.c 	chain = list_entry(node->val.next, struct callchain_list, list);
chain             354 tools/perf/ui/browsers/hists.c 	chain->has_children = has_sibling;
chain             357 tools/perf/ui/browsers/hists.c 		chain = list_entry(node->val.prev, struct callchain_list, list);
chain             358 tools/perf/ui/browsers/hists.c 		chain->has_children = !RB_EMPTY_ROOT(&node->rb_root);
chain             468 tools/perf/ui/browsers/hists.c 		struct callchain_list *chain;
chain             471 tools/perf/ui/browsers/hists.c 		list_for_each_entry(chain, &child->val, list) {
chain             473 tools/perf/ui/browsers/hists.c 			callchain_list__set_folding(chain, unfold);
chain             474 tools/perf/ui/browsers/hists.c 			has_children = chain->has_children;
chain             486 tools/perf/ui/browsers/hists.c 	struct callchain_list *chain;
chain             490 tools/perf/ui/browsers/hists.c 	list_for_each_entry(chain, &node->val, list) {
chain             492 tools/perf/ui/browsers/hists.c 		callchain_list__set_folding(chain, unfold);
chain             493 tools/perf/ui/browsers/hists.c 		has_children = chain->has_children;
chain             502 tools/perf/ui/browsers/hists.c static int callchain__set_folding(struct rb_root *chain, bool unfold)
chain             507 tools/perf/ui/browsers/hists.c 	for (nd = rb_first(chain); nd; nd = rb_next(nd)) {
chain             732 tools/perf/ui/browsers/hists.c 					 struct callchain_list *chain,
chain             738 tools/perf/ui/browsers/hists.c 					       struct callchain_list *chain,
chain             744 tools/perf/ui/browsers/hists.c 	char folded_sign = callchain_list__folded(chain);
chain             745 tools/perf/ui/browsers/hists.c 	bool show_annotated = browser->show_dso && chain->ms.sym && symbol__annotation(chain->ms.sym)->src;
chain             750 tools/perf/ui/browsers/hists.c 		browser->selection = &chain->ms;
chain             764 tools/perf/ui/browsers/hists.c 						  struct callchain_list *chain,
chain             769 tools/perf/ui/browsers/hists.c 	char folded_sign = callchain_list__folded(chain);
chain             794 tools/perf/ui/browsers/hists.c 					     struct callchain_list *chain,
chain             813 tools/perf/ui/browsers/hists.c 	str = callchain_list__sym_name(chain, bf, sizeof(bf),
chain             817 tools/perf/ui/browsers/hists.c 		callchain_list_counts__printf_value(chain, NULL,
chain             836 tools/perf/ui/browsers/hists.c 	print(browser, chain, str, offset, row, arg);
chain             875 tools/perf/ui/browsers/hists.c 		struct callchain_list *chain;
chain             880 tools/perf/ui/browsers/hists.c 		list_for_each_entry(chain, &child->parent_val, list) {
chain             888 tools/perf/ui/browsers/hists.c 			folded_sign = callchain_list__folded(chain);
chain             891 tools/perf/ui/browsers/hists.c 							chain, row, total,
chain             903 tools/perf/ui/browsers/hists.c 		list_for_each_entry(chain, &child->val, list) {
chain             911 tools/perf/ui/browsers/hists.c 			folded_sign = callchain_list__folded(chain);
chain             914 tools/perf/ui/browsers/hists.c 							chain, row, total,
chain             936 tools/perf/ui/browsers/hists.c 						struct callchain_list *chain,
chain             943 tools/perf/ui/browsers/hists.c 	str = callchain_list__sym_name(chain, bf, sizeof(bf),
chain             979 tools/perf/ui/browsers/hists.c 		struct callchain_list *chain, *first_chain = NULL;
chain            1000 tools/perf/ui/browsers/hists.c 		list_for_each_entry(chain, &child->parent_val, list) {
chain            1002 tools/perf/ui/browsers/hists.c 						chain, value_str, chain_str);
chain            1005 tools/perf/ui/browsers/hists.c 				first_chain = chain;
chain            1016 tools/perf/ui/browsers/hists.c 		list_for_each_entry(chain, &child->val, list) {
chain            1018 tools/perf/ui/browsers/hists.c 						chain, value_str, chain_str);
chain            1021 tools/perf/ui/browsers/hists.c 				first_chain = chain;
chain            1068 tools/perf/ui/browsers/hists.c 		struct callchain_list *chain;
chain            1073 tools/perf/ui/browsers/hists.c 		list_for_each_entry(chain, &child->val, list) {
chain            1081 tools/perf/ui/browsers/hists.c 			folded_sign = callchain_list__folded(chain);
chain            1084 tools/perf/ui/browsers/hists.c 							chain, row, percent_total,
chain             105 tools/perf/ui/gtk/hists.c 		struct callchain_list *chain;
chain             116 tools/perf/ui/gtk/hists.c 		list_for_each_entry(chain, &node->parent_val, list) {
chain             124 tools/perf/ui/gtk/hists.c 			callchain_list__sym_name(chain, buf, sizeof(buf), false);
chain             137 tools/perf/ui/gtk/hists.c 		list_for_each_entry(chain, &node->val, list) {
chain             145 tools/perf/ui/gtk/hists.c 			callchain_list__sym_name(chain, buf, sizeof(buf), false);
chain             167 tools/perf/ui/gtk/hists.c 		struct callchain_list *chain;
chain             177 tools/perf/ui/gtk/hists.c 		list_for_each_entry(chain, &node->parent_val, list) {
chain             180 tools/perf/ui/gtk/hists.c 			callchain_list__sym_name(chain, name, sizeof(name), false);
chain             193 tools/perf/ui/gtk/hists.c 		list_for_each_entry(chain, &node->val, list) {
chain             196 tools/perf/ui/gtk/hists.c 			callchain_list__sym_name(chain, name, sizeof(name), false);
chain             228 tools/perf/ui/gtk/hists.c 		struct callchain_list *chain;
chain             238 tools/perf/ui/gtk/hists.c 		list_for_each_entry(chain, &node->val, list) {
chain             246 tools/perf/ui/gtk/hists.c 			callchain_list__sym_name(chain, buf, sizeof(buf), false);
chain              50 tools/perf/ui/stdio/hist.c 				     struct callchain_list *chain,
chain              74 tools/perf/ui/stdio/hist.c 	str = callchain_list__sym_name(chain, bf, sizeof(bf), false);
chain              77 tools/perf/ui/stdio/hist.c 		callchain_list_counts__printf_value(chain, NULL,
chain             114 tools/perf/ui/stdio/hist.c 	struct callchain_list *chain;
chain             152 tools/perf/ui/stdio/hist.c 		list_for_each_entry(chain, &child->val, list) {
chain             153 tools/perf/ui/stdio/hist.c 			ret += ipchain__fprintf_graph(fp, child, chain, depth,
chain             221 tools/perf/ui/stdio/hist.c 	struct callchain_list *chain;
chain             232 tools/perf/ui/stdio/hist.c 		list_for_each_entry(chain, &cnode->val, list) {
chain             253 tools/perf/ui/stdio/hist.c 				       callchain_list__sym_name(chain, bf,
chain             259 tools/perf/ui/stdio/hist.c 						chain, fp, NULL, 0);
chain             284 tools/perf/ui/stdio/hist.c 	struct callchain_list *chain;
chain             294 tools/perf/ui/stdio/hist.c 	list_for_each_entry(chain, &node->val, list) {
chain             295 tools/perf/ui/stdio/hist.c 		if (chain->ip >= PERF_CONTEXT_MAX)
chain             297 tools/perf/ui/stdio/hist.c 		ret += fprintf(fp, "                %s\n", callchain_list__sym_name(chain,
chain             309 tools/perf/ui/stdio/hist.c 	struct callchain_node *chain;
chain             313 tools/perf/ui/stdio/hist.c 		chain = rb_entry(rb_node, struct callchain_node, rb_node);
chain             316 tools/perf/ui/stdio/hist.c 		ret += callchain_node__fprintf_value(chain, fp, total_samples);
chain             318 tools/perf/ui/stdio/hist.c 		ret += __callchain__fprintf_flat(fp, chain, total_samples);
chain             332 tools/perf/ui/stdio/hist.c 	struct callchain_list *chain;
chain             343 tools/perf/ui/stdio/hist.c 	list_for_each_entry(chain, &node->val, list) {
chain             344 tools/perf/ui/stdio/hist.c 		if (chain->ip >= PERF_CONTEXT_MAX)
chain             347 tools/perf/ui/stdio/hist.c 			       callchain_list__sym_name(chain,
chain             360 tools/perf/ui/stdio/hist.c 	struct callchain_node *chain;
chain             365 tools/perf/ui/stdio/hist.c 		chain = rb_entry(rb_node, struct callchain_node, rb_node);
chain             367 tools/perf/ui/stdio/hist.c 		ret += callchain_node__fprintf_value(chain, fp, total_samples);
chain             369 tools/perf/ui/stdio/hist.c 		ret += __callchain__fprintf_folded(fp, chain);
chain             372 tools/perf/util/callchain.c rb_insert_callchain(struct rb_root *root, struct callchain_node *chain,
chain             378 tools/perf/util/callchain.c 	u64 chain_cumul = callchain_cumul_hits(chain);
chain             390 tools/perf/util/callchain.c 			if (rnode->hit < chain->hit)
chain             408 tools/perf/util/callchain.c 	rb_link_node(&chain->rb_node, parent, p);
chain             409 tools/perf/util/callchain.c 	rb_insert_color(&chain->rb_node, root);
chain            1522 tools/perf/util/callchain.c 	struct callchain_list *chain, *new;
chain            1526 tools/perf/util/callchain.c 		list_for_each_entry_reverse(chain, &parent->val, list) {
chain            1530 tools/perf/util/callchain.c 			*new = *chain;
chain            1538 tools/perf/util/callchain.c 	list_for_each_entry_safe_reverse(chain, new, &head, list)
chain            1539 tools/perf/util/callchain.c 		list_move_tail(&chain->list, &node->parent_val);
chain            1542 tools/perf/util/callchain.c 		chain = list_first_entry(&node->parent_val, struct callchain_list, list);
chain            1543 tools/perf/util/callchain.c 		chain->has_children = rb_prev(&node->rb_node) || rb_next(&node->rb_node);
chain            1545 tools/perf/util/callchain.c 		chain = list_first_entry(&node->val, struct callchain_list, list);
chain            1546 tools/perf/util/callchain.c 		chain->has_children = false;
chain            1551 tools/perf/util/callchain.c 	list_for_each_entry_safe(chain, new, &head, list) {
chain            1552 tools/perf/util/callchain.c 		list_del_init(&chain->list);
chain            1553 tools/perf/util/callchain.c 		map__zput(chain->ms.map);
chain            1554 tools/perf/util/callchain.c 		free(chain);
chain             266 tools/perf/util/callchain.h int arch_skip_callchain_idx(struct thread *thread, struct ip_callchain *chain);
chain             269 tools/perf/util/callchain.h 			struct ip_callchain *chain __maybe_unused)
chain             144 tools/perf/util/intel-pt.c 	struct ip_callchain *chain;
chain             865 tools/perf/util/intel-pt.c 		ptq->chain = zalloc(sz);
chain             866 tools/perf/util/intel-pt.c 		if (!ptq->chain)
chain             950 tools/perf/util/intel-pt.c 	zfree(&ptq->chain);
chain             966 tools/perf/util/intel-pt.c 	zfree(&ptq->chain);
chain            1324 tools/perf/util/intel-pt.c 		thread_stack__sample(ptq->thread, ptq->cpu, ptq->chain,
chain            1327 tools/perf/util/intel-pt.c 		sample->callchain = ptq->chain;
chain            1752 tools/perf/util/intel-pt.c 		thread_stack__sample(ptq->thread, ptq->cpu, ptq->chain,
chain            1755 tools/perf/util/intel-pt.c 		sample.callchain = ptq->chain;
chain            2175 tools/perf/util/machine.c 	struct ip_callchain *chain = sample->callchain;
chain            2176 tools/perf/util/machine.c 	int chain_nr = min(max_stack, (int)chain->nr), i;
chain            2181 tools/perf/util/machine.c 		if (chain->ips[i] == PERF_CONTEXT_USER)
chain            2210 tools/perf/util/machine.c 					ip = chain->ips[j];
chain            2231 tools/perf/util/machine.c 					ip = chain->ips[i + 1 - (j - lbr_nr)];
chain            2254 tools/perf/util/machine.c static int find_prev_cpumode(struct ip_callchain *chain, struct thread *thread,
chain            2263 tools/perf/util/machine.c 		u64 ip = chain->ips[ent];
chain            2284 tools/perf/util/machine.c 	struct ip_callchain *chain = sample->callchain;
chain            2291 tools/perf/util/machine.c 	if (chain)
chain            2292 tools/perf/util/machine.c 		chain_nr = chain->nr;
chain            2305 tools/perf/util/machine.c 	skip_idx = arch_skip_callchain_idx(thread, chain);
chain            2333 tools/perf/util/machine.c 				if (chain == NULL)
chain            2344 tools/perf/util/machine.c 				    chain->ips[first_call] >= PERF_CONTEXT_MAX)
chain            2346 tools/perf/util/machine.c 				else if (be[i].from < chain->ips[first_call] &&
chain            2347 tools/perf/util/machine.c 				    be[i].from >= chain->ips[first_call] - 8)
chain            2381 tools/perf/util/machine.c 	if (chain && callchain_param.order != ORDER_CALLEE) {
chain            2382 tools/perf/util/machine.c 		err = find_prev_cpumode(chain, thread, cursor, parent, root_al,
chain            2383 tools/perf/util/machine.c 					&cpumode, chain->nr - first_call);
chain            2394 tools/perf/util/machine.c 			j = chain->nr - i - 1;
chain            2400 tools/perf/util/machine.c 		ip = chain->ips[j];
chain            2404 tools/perf/util/machine.c 			err = find_prev_cpumode(chain, thread, cursor, parent,
chain              78 tools/perf/util/session.h 				    struct ip_callchain *chain,
chain             462 tools/perf/util/thread-stack.c 			  struct ip_callchain *chain,
chain             471 tools/perf/util/thread-stack.c 		chain->nr = 0;
chain             475 tools/perf/util/thread-stack.c 	chain->ips[0] = context;
chain             476 tools/perf/util/thread-stack.c 	chain->ips[1] = ip;
chain             479 tools/perf/util/thread-stack.c 		chain->nr = 2;
chain             491 tools/perf/util/thread-stack.c 			chain->ips[i++] = context;
chain             494 tools/perf/util/thread-stack.c 		chain->ips[i] = ip;
chain             497 tools/perf/util/thread-stack.c 	chain->nr = i;
chain              86 tools/perf/util/thread-stack.h void thread_stack__sample(struct thread *thread, int cpu, struct ip_callchain *chain,
chain              72 tools/testing/selftests/vDSO/parse_vdso.c 	ELF(Word) *bucket, *chain;
chain             178 tools/testing/selftests/vDSO/parse_vdso.c 	vdso_info.chain = &hash[vdso_info.nbucket + 2];
chain             229 tools/testing/selftests/vDSO/parse_vdso.c 	ELF(Word) chain = vdso_info.bucket[elf_hash(name) % vdso_info.nbucket];
chain             231 tools/testing/selftests/vDSO/parse_vdso.c 	for (; chain != STN_UNDEF; chain = vdso_info.chain[chain]) {
chain             232 tools/testing/selftests/vDSO/parse_vdso.c 		ELF(Sym) *sym = &vdso_info.symtab[chain];
chain             247 tools/testing/selftests/vDSO/parse_vdso.c 		    && !vdso_match_version(vdso_info.versym[chain],