Home
last modified time | relevance | path

Searched refs:rx_queue (Results 1 – 25 of 124) sorted by relevance

12345

/linux-6.1.9/drivers/net/ethernet/sfc/falcon/
Drx.c76 ef4_rx_buf_next(struct ef4_rx_queue *rx_queue, struct ef4_rx_buffer *rx_buf) in ef4_rx_buf_next() argument
78 if (unlikely(rx_buf == ef4_rx_buffer(rx_queue, rx_queue->ptr_mask))) in ef4_rx_buf_next()
79 return ef4_rx_buffer(rx_queue, 0); in ef4_rx_buf_next()
106 static struct page *ef4_reuse_page(struct ef4_rx_queue *rx_queue) in ef4_reuse_page() argument
108 struct ef4_nic *efx = rx_queue->efx; in ef4_reuse_page()
113 if (unlikely(!rx_queue->page_ring)) in ef4_reuse_page()
115 index = rx_queue->page_remove & rx_queue->page_ptr_mask; in ef4_reuse_page()
116 page = rx_queue->page_ring[index]; in ef4_reuse_page()
120 rx_queue->page_ring[index] = NULL; in ef4_reuse_page()
122 if (rx_queue->page_remove != rx_queue->page_add) in ef4_reuse_page()
[all …]
Dnic.h110 ef4_rx_desc(struct ef4_rx_queue *rx_queue, unsigned int index) in ef4_rx_desc() argument
112 return ((ef4_qword_t *) (rx_queue->rxd.buf.addr)) + index; in ef4_rx_desc()
333 static inline int ef4_nic_probe_rx(struct ef4_rx_queue *rx_queue) in ef4_nic_probe_rx() argument
335 return rx_queue->efx->type->rx_probe(rx_queue); in ef4_nic_probe_rx()
337 static inline void ef4_nic_init_rx(struct ef4_rx_queue *rx_queue) in ef4_nic_init_rx() argument
339 rx_queue->efx->type->rx_init(rx_queue); in ef4_nic_init_rx()
341 static inline void ef4_nic_remove_rx(struct ef4_rx_queue *rx_queue) in ef4_nic_remove_rx() argument
343 rx_queue->efx->type->rx_remove(rx_queue); in ef4_nic_remove_rx()
345 static inline void ef4_nic_notify_rx_desc(struct ef4_rx_queue *rx_queue) in ef4_nic_notify_rx_desc() argument
347 rx_queue->efx->type->rx_write(rx_queue); in ef4_nic_notify_rx_desc()
[all …]
Dfarch.c471 ef4_farch_build_rx_desc(struct ef4_rx_queue *rx_queue, unsigned index) in ef4_farch_build_rx_desc() argument
476 rxd = ef4_rx_desc(rx_queue, index); in ef4_farch_build_rx_desc()
477 rx_buf = ef4_rx_buffer(rx_queue, index); in ef4_farch_build_rx_desc()
481 rx_queue->efx->type->rx_buffer_padding, in ef4_farch_build_rx_desc()
489 void ef4_farch_rx_write(struct ef4_rx_queue *rx_queue) in ef4_farch_rx_write() argument
491 struct ef4_nic *efx = rx_queue->efx; in ef4_farch_rx_write()
495 while (rx_queue->notified_count != rx_queue->added_count) { in ef4_farch_rx_write()
497 rx_queue, in ef4_farch_rx_write()
498 rx_queue->notified_count & rx_queue->ptr_mask); in ef4_farch_rx_write()
499 ++rx_queue->notified_count; in ef4_farch_rx_write()
[all …]
Dnet_driver.h444 struct ef4_rx_queue rx_queue; member
1090 int (*rx_probe)(struct ef4_rx_queue *rx_queue);
1091 void (*rx_init)(struct ef4_rx_queue *rx_queue);
1092 void (*rx_remove)(struct ef4_rx_queue *rx_queue);
1093 void (*rx_write)(struct ef4_rx_queue *rx_queue);
1094 void (*rx_defer_refill)(struct ef4_rx_queue *rx_queue);
1236 return channel->rx_queue.core_index >= 0; in ef4_channel_has_rx_queue()
1243 return &channel->rx_queue; in ef4_channel_get_rx_queue()
1251 for (_rx_queue = &(_channel)->rx_queue; \
1256 ef4_rx_queue_channel(struct ef4_rx_queue *rx_queue) in ef4_rx_queue_channel() argument
[all …]
Defx.h40 int ef4_probe_rx_queue(struct ef4_rx_queue *rx_queue);
41 void ef4_remove_rx_queue(struct ef4_rx_queue *rx_queue);
42 void ef4_init_rx_queue(struct ef4_rx_queue *rx_queue);
43 void ef4_fini_rx_queue(struct ef4_rx_queue *rx_queue);
44 void ef4_fast_push_rx_descriptors(struct ef4_rx_queue *rx_queue, bool atomic);
47 void ef4_rx_packet(struct ef4_rx_queue *rx_queue, unsigned int index,
54 void ef4_schedule_slow_fill(struct ef4_rx_queue *rx_queue);
/linux-6.1.9/drivers/net/ethernet/sfc/
Drx_common.c34 static struct page *efx_reuse_page(struct efx_rx_queue *rx_queue) in efx_reuse_page() argument
36 struct efx_nic *efx = rx_queue->efx; in efx_reuse_page()
41 if (unlikely(!rx_queue->page_ring)) in efx_reuse_page()
43 index = rx_queue->page_remove & rx_queue->page_ptr_mask; in efx_reuse_page()
44 page = rx_queue->page_ring[index]; in efx_reuse_page()
48 rx_queue->page_ring[index] = NULL; in efx_reuse_page()
50 if (rx_queue->page_remove != rx_queue->page_add) in efx_reuse_page()
51 ++rx_queue->page_remove; in efx_reuse_page()
55 ++rx_queue->page_recycle_count; in efx_reuse_page()
63 ++rx_queue->page_recycle_failed; in efx_reuse_page()
[all …]
Def100_rx.c58 struct efx_rx_queue *rx_queue = efx_channel_get_rx_queue(channel); in __ef100_rx_packet() local
59 struct efx_rx_buffer *rx_buf = efx_rx_buffer(rx_queue, in __ef100_rx_packet()
134 efx_free_rx_buffers(rx_queue, rx_buf, 1); in __ef100_rx_packet()
139 static void ef100_rx_packet(struct efx_rx_queue *rx_queue, unsigned int index) in ef100_rx_packet() argument
141 struct efx_rx_buffer *rx_buf = efx_rx_buffer(rx_queue, index); in ef100_rx_packet()
142 struct efx_channel *channel = efx_rx_queue_channel(rx_queue); in ef100_rx_packet()
143 struct efx_nic *efx = rx_queue->efx; in ef100_rx_packet()
145 ++rx_queue->rx_packets; in ef100_rx_packet()
149 efx_rx_queue_index(rx_queue), index); in ef100_rx_packet()
166 struct efx_rx_queue *rx_queue = efx_channel_get_rx_queue(channel); in efx_ef100_ev_rx() local
[all …]
Drx.c43 static void efx_rx_packet__check_len(struct efx_rx_queue *rx_queue, in efx_rx_packet__check_len() argument
47 struct efx_nic *efx = rx_queue->efx; in efx_rx_packet__check_len()
61 efx_rx_queue_index(rx_queue), len, max_len); in efx_rx_packet__check_len()
63 efx_rx_queue_channel(rx_queue)->n_rx_overlength++; in efx_rx_packet__check_len()
105 rx_buf = efx_rx_buf_next(&channel->rx_queue, rx_buf); in efx_rx_mk_skb()
121 void efx_rx_packet(struct efx_rx_queue *rx_queue, unsigned int index, in efx_rx_packet() argument
124 struct efx_nic *efx = rx_queue->efx; in efx_rx_packet()
125 struct efx_channel *channel = efx_rx_queue_channel(rx_queue); in efx_rx_packet()
128 rx_queue->rx_packets++; in efx_rx_packet()
130 rx_buf = efx_rx_buffer(rx_queue, index); in efx_rx_packet()
[all …]
Dnic_common.h100 efx_rx_desc(struct efx_rx_queue *rx_queue, unsigned int index) in efx_rx_desc() argument
102 return ((efx_qword_t *) (rx_queue->rxd.buf.addr)) + index; in efx_rx_desc()
140 static inline int efx_nic_probe_rx(struct efx_rx_queue *rx_queue) in efx_nic_probe_rx() argument
142 return rx_queue->efx->type->rx_probe(rx_queue); in efx_nic_probe_rx()
144 static inline void efx_nic_init_rx(struct efx_rx_queue *rx_queue) in efx_nic_init_rx() argument
146 rx_queue->efx->type->rx_init(rx_queue); in efx_nic_init_rx()
148 static inline void efx_nic_remove_rx(struct efx_rx_queue *rx_queue) in efx_nic_remove_rx() argument
150 rx_queue->efx->type->rx_remove(rx_queue); in efx_nic_remove_rx()
152 static inline void efx_nic_notify_rx_desc(struct efx_rx_queue *rx_queue) in efx_nic_notify_rx_desc() argument
154 rx_queue->efx->type->rx_write(rx_queue); in efx_nic_notify_rx_desc()
[all …]
Dmcdi_functions.c270 int efx_mcdi_rx_probe(struct efx_rx_queue *rx_queue) in efx_mcdi_rx_probe() argument
272 return efx_nic_alloc_buffer(rx_queue->efx, &rx_queue->rxd.buf, in efx_mcdi_rx_probe()
273 (rx_queue->ptr_mask + 1) * in efx_mcdi_rx_probe()
278 void efx_mcdi_rx_init(struct efx_rx_queue *rx_queue) in efx_mcdi_rx_init() argument
280 struct efx_channel *channel = efx_rx_queue_channel(rx_queue); in efx_mcdi_rx_init()
281 size_t entries = rx_queue->rxd.buf.len / EFX_BUF_SIZE; in efx_mcdi_rx_init()
283 struct efx_nic *efx = rx_queue->efx; in efx_mcdi_rx_init()
290 rx_queue->scatter_n = 0; in efx_mcdi_rx_init()
291 rx_queue->scatter_len = 0; in efx_mcdi_rx_init()
297 MCDI_SET_DWORD(inbuf, INIT_RXQ_IN_SIZE, rx_queue->ptr_mask + 1); in efx_mcdi_rx_init()
[all …]
Drx_common.h55 int efx_probe_rx_queue(struct efx_rx_queue *rx_queue);
56 void efx_init_rx_queue(struct efx_rx_queue *rx_queue);
57 void efx_fini_rx_queue(struct efx_rx_queue *rx_queue);
58 void efx_remove_rx_queue(struct efx_rx_queue *rx_queue);
59 void efx_destroy_rx_queue(struct efx_rx_queue *rx_queue);
61 void efx_init_rx_buffer(struct efx_rx_queue *rx_queue,
75 void efx_free_rx_buffers(struct efx_rx_queue *rx_queue,
79 void efx_schedule_slow_fill(struct efx_rx_queue *rx_queue);
81 void efx_fast_push_rx_descriptors(struct efx_rx_queue *rx_queue, bool atomic);
Defx_channels.c530 struct efx_rx_queue *rx_queue; in efx_alloc_channel() local
555 rx_queue = &channel->rx_queue; in efx_alloc_channel()
556 rx_queue->efx = efx; in efx_alloc_channel()
557 timer_setup(&rx_queue->slow_fill, efx_rx_slow_fill, 0); in efx_alloc_channel()
600 struct efx_rx_queue *rx_queue; in efx_copy_channel() local
626 rx_queue = &channel->rx_queue; in efx_copy_channel()
627 rx_queue->buffer = NULL; in efx_copy_channel()
628 memset(&rx_queue->rxd, 0, sizeof(rx_queue->rxd)); in efx_copy_channel()
629 timer_setup(&rx_queue->slow_fill, efx_rx_slow_fill, 0); in efx_copy_channel()
640 struct efx_rx_queue *rx_queue; in efx_probe_channel() local
[all …]
Dmcdi_functions.h25 int efx_mcdi_rx_probe(struct efx_rx_queue *rx_queue);
26 void efx_mcdi_rx_init(struct efx_rx_queue *rx_queue);
27 void efx_mcdi_rx_remove(struct efx_rx_queue *rx_queue);
28 void efx_mcdi_rx_fini(struct efx_rx_queue *rx_queue);
Dnet_driver.h552 struct efx_rx_queue rx_queue; member
1450 int (*rx_probe)(struct efx_rx_queue *rx_queue);
1451 void (*rx_init)(struct efx_rx_queue *rx_queue);
1452 void (*rx_remove)(struct efx_rx_queue *rx_queue);
1453 void (*rx_write)(struct efx_rx_queue *rx_queue);
1454 void (*rx_defer_refill)(struct efx_rx_queue *rx_queue);
1643 return channel->rx_queue.core_index >= 0; in efx_channel_has_rx_queue()
1650 return &channel->rx_queue; in efx_channel_get_rx_queue()
1658 for (_rx_queue = &(_channel)->rx_queue; \
1663 efx_rx_queue_channel(struct efx_rx_queue *rx_queue) in efx_rx_queue_channel() argument
[all …]
/linux-6.1.9/drivers/net/ethernet/sfc/siena/
Drx_common.c37 static struct page *efx_reuse_page(struct efx_rx_queue *rx_queue) in efx_reuse_page() argument
39 struct efx_nic *efx = rx_queue->efx; in efx_reuse_page()
44 if (unlikely(!rx_queue->page_ring)) in efx_reuse_page()
46 index = rx_queue->page_remove & rx_queue->page_ptr_mask; in efx_reuse_page()
47 page = rx_queue->page_ring[index]; in efx_reuse_page()
51 rx_queue->page_ring[index] = NULL; in efx_reuse_page()
53 if (rx_queue->page_remove != rx_queue->page_add) in efx_reuse_page()
54 ++rx_queue->page_remove; in efx_reuse_page()
58 ++rx_queue->page_recycle_count; in efx_reuse_page()
66 ++rx_queue->page_recycle_failed; in efx_reuse_page()
[all …]
Drx.c43 static void efx_rx_packet__check_len(struct efx_rx_queue *rx_queue, in efx_rx_packet__check_len() argument
47 struct efx_nic *efx = rx_queue->efx; in efx_rx_packet__check_len()
61 efx_rx_queue_index(rx_queue), len, max_len); in efx_rx_packet__check_len()
63 efx_rx_queue_channel(rx_queue)->n_rx_overlength++; in efx_rx_packet__check_len()
105 rx_buf = efx_rx_buf_next(&channel->rx_queue, rx_buf); in efx_rx_mk_skb()
121 void efx_siena_rx_packet(struct efx_rx_queue *rx_queue, unsigned int index, in efx_siena_rx_packet() argument
124 struct efx_nic *efx = rx_queue->efx; in efx_siena_rx_packet()
125 struct efx_channel *channel = efx_rx_queue_channel(rx_queue); in efx_siena_rx_packet()
128 rx_queue->rx_packets++; in efx_siena_rx_packet()
130 rx_buf = efx_rx_buffer(rx_queue, index); in efx_siena_rx_packet()
[all …]
Dnic_common.h97 efx_rx_desc(struct efx_rx_queue *rx_queue, unsigned int index) in efx_rx_desc() argument
99 return ((efx_qword_t *) (rx_queue->rxd.buf.addr)) + index; in efx_rx_desc()
137 static inline int efx_nic_probe_rx(struct efx_rx_queue *rx_queue) in efx_nic_probe_rx() argument
139 return rx_queue->efx->type->rx_probe(rx_queue); in efx_nic_probe_rx()
141 static inline void efx_nic_init_rx(struct efx_rx_queue *rx_queue) in efx_nic_init_rx() argument
143 rx_queue->efx->type->rx_init(rx_queue); in efx_nic_init_rx()
145 static inline void efx_nic_remove_rx(struct efx_rx_queue *rx_queue) in efx_nic_remove_rx() argument
147 rx_queue->efx->type->rx_remove(rx_queue); in efx_nic_remove_rx()
149 static inline void efx_nic_notify_rx_desc(struct efx_rx_queue *rx_queue) in efx_nic_notify_rx_desc() argument
151 rx_queue->efx->type->rx_write(rx_queue); in efx_nic_notify_rx_desc()
[all …]
Dfarch.c465 efx_farch_build_rx_desc(struct efx_rx_queue *rx_queue, unsigned index) in efx_farch_build_rx_desc() argument
470 rxd = efx_rx_desc(rx_queue, index); in efx_farch_build_rx_desc()
471 rx_buf = efx_rx_buffer(rx_queue, index); in efx_farch_build_rx_desc()
475 rx_queue->efx->type->rx_buffer_padding, in efx_farch_build_rx_desc()
483 void efx_farch_rx_write(struct efx_rx_queue *rx_queue) in efx_farch_rx_write() argument
485 struct efx_nic *efx = rx_queue->efx; in efx_farch_rx_write()
489 while (rx_queue->notified_count != rx_queue->added_count) { in efx_farch_rx_write()
491 rx_queue, in efx_farch_rx_write()
492 rx_queue->notified_count & rx_queue->ptr_mask); in efx_farch_rx_write()
493 ++rx_queue->notified_count; in efx_farch_rx_write()
[all …]
Defx_channels.c532 struct efx_rx_queue *rx_queue; in efx_alloc_channel() local
557 rx_queue = &channel->rx_queue; in efx_alloc_channel()
558 rx_queue->efx = efx; in efx_alloc_channel()
559 timer_setup(&rx_queue->slow_fill, efx_siena_rx_slow_fill, 0); in efx_alloc_channel()
603 struct efx_rx_queue *rx_queue; in efx_copy_channel() local
629 rx_queue = &channel->rx_queue; in efx_copy_channel()
630 rx_queue->buffer = NULL; in efx_copy_channel()
631 memset(&rx_queue->rxd, 0, sizeof(rx_queue->rxd)); in efx_copy_channel()
632 timer_setup(&rx_queue->slow_fill, efx_siena_rx_slow_fill, 0); in efx_copy_channel()
643 struct efx_rx_queue *rx_queue; in efx_probe_channel() local
[all …]
Drx_common.h55 int efx_siena_probe_rx_queue(struct efx_rx_queue *rx_queue);
56 void efx_siena_init_rx_queue(struct efx_rx_queue *rx_queue);
57 void efx_siena_fini_rx_queue(struct efx_rx_queue *rx_queue);
58 void efx_siena_remove_rx_queue(struct efx_rx_queue *rx_queue);
68 void efx_siena_free_rx_buffers(struct efx_rx_queue *rx_queue,
73 void efx_siena_fast_push_rx_descriptors(struct efx_rx_queue *rx_queue,
Dnet_driver.h547 struct efx_rx_queue rx_queue; member
1376 int (*rx_probe)(struct efx_rx_queue *rx_queue);
1377 void (*rx_init)(struct efx_rx_queue *rx_queue);
1378 void (*rx_remove)(struct efx_rx_queue *rx_queue);
1379 void (*rx_write)(struct efx_rx_queue *rx_queue);
1380 void (*rx_defer_refill)(struct efx_rx_queue *rx_queue);
1569 return channel->rx_queue.core_index >= 0; in efx_channel_has_rx_queue()
1576 return &channel->rx_queue; in efx_channel_get_rx_queue()
1584 for (_rx_queue = &(_channel)->rx_queue; \
1589 efx_rx_queue_channel(struct efx_rx_queue *rx_queue) in efx_rx_queue_channel() argument
[all …]
Dnic.h131 int efx_farch_rx_probe(struct efx_rx_queue *rx_queue);
132 void efx_farch_rx_init(struct efx_rx_queue *rx_queue);
133 void efx_farch_rx_fini(struct efx_rx_queue *rx_queue);
134 void efx_farch_rx_remove(struct efx_rx_queue *rx_queue);
135 void efx_farch_rx_write(struct efx_rx_queue *rx_queue);
136 void efx_farch_rx_defer_refill(struct efx_rx_queue *rx_queue);
/linux-6.1.9/drivers/net/ethernet/freescale/
Dgianfar.c109 static void gfar_init_rxbdp(struct gfar_priv_rx_q *rx_queue, struct rxbd8 *bdp, in gfar_init_rxbdp() argument
117 if (bdp == rx_queue->rx_bd_base + rx_queue->rx_ring_size - 1) in gfar_init_rxbdp()
139 gfar_write(baddr, priv->rx_queue[i]->rx_bd_dma_base); in gfar_init_tx_rx_base()
152 gfar_write(baddr, priv->rx_queue[i]->rx_ring_size | in gfar_init_rqprm()
255 if (likely(priv->rx_queue[i]->rxcoalescing)) in gfar_configure_coalescing()
256 gfar_write(baddr + i, priv->rx_queue[i]->rxic); in gfar_configure_coalescing()
267 if (unlikely(priv->rx_queue[0]->rxcoalescing)) in gfar_configure_coalescing()
268 gfar_write(&regs->rxic, priv->rx_queue[0]->rxic); in gfar_configure_coalescing()
283 stats->rx_packets += priv->rx_queue[i]->stats.rx_packets; in gfar_get_stats64()
284 stats->rx_bytes += priv->rx_queue[i]->stats.rx_bytes; in gfar_get_stats64()
[all …]
/linux-6.1.9/drivers/net/ethernet/ibm/
Dibmveth.c105 return be32_to_cpu(adapter->rx_queue.queue_addr[adapter->rx_queue.index].flags_off); in ibmveth_rxq_flags()
116 return ibmveth_rxq_toggle(adapter) == adapter->rx_queue.toggle; in ibmveth_rxq_pending_buffer()
136 return be32_to_cpu(adapter->rx_queue.queue_addr[adapter->rx_queue.index].length); in ibmveth_rxq_frame_length()
404 u64 correlator = adapter->rx_queue.queue_addr[adapter->rx_queue.index].correlator; in ibmveth_rxq_get_buffer()
417 u32 q_index = adapter->rx_queue.index; in ibmveth_rxq_recycle_buffer()
418 u64 correlator = adapter->rx_queue.queue_addr[q_index].correlator; in ibmveth_rxq_recycle_buffer()
443 …ibmveth_remove_buffer_from_pool(adapter, adapter->rx_queue.queue_addr[adapter->rx_queue.index].cor… in ibmveth_rxq_recycle_buffer()
447 if (++adapter->rx_queue.index == adapter->rx_queue.num_slots) { in ibmveth_rxq_recycle_buffer()
448 adapter->rx_queue.index = 0; in ibmveth_rxq_recycle_buffer()
449 adapter->rx_queue.toggle = !adapter->rx_queue.toggle; in ibmveth_rxq_recycle_buffer()
[all …]
/linux-6.1.9/tools/testing/selftests/bpf/progs/
Dbpf_iter_tcp4.c85 int rx_queue; in dump_tcp_sock() local
116 rx_queue = sp->sk_ack_backlog; in dump_tcp_sock()
118 rx_queue = tp->rcv_nxt - tp->copied_seq; in dump_tcp_sock()
119 if (rx_queue < 0) in dump_tcp_sock()
120 rx_queue = 0; in dump_tcp_sock()
127 tp->write_seq - tp->snd_una, rx_queue, in dump_tcp_sock()

12345