Home
last modified time | relevance | path

Searched refs:io_cq (Results 1 – 15 of 15) sorted by relevance

/Linux-v4.19/drivers/net/ethernet/amazon/ena/
Dena_eth_com.c36 struct ena_com_io_cq *io_cq) in ena_com_get_next_rx_cdesc() argument
42 head_masked = io_cq->head & (io_cq->q_depth - 1); in ena_com_get_next_rx_cdesc()
43 expected_phase = io_cq->phase; in ena_com_get_next_rx_cdesc()
45 cdesc = (struct ena_eth_io_rx_cdesc_base *)(io_cq->cdesc_addr.virt_addr in ena_com_get_next_rx_cdesc()
46 + (head_masked * io_cq->cdesc_entry_size_in_bytes)); in ena_com_get_next_rx_cdesc()
62 static inline void ena_com_cq_inc_head(struct ena_com_io_cq *io_cq) in ena_com_cq_inc_head() argument
64 io_cq->head++; in ena_com_cq_inc_head()
67 if (unlikely((io_cq->head & (io_cq->q_depth - 1)) == 0)) in ena_com_cq_inc_head()
68 io_cq->phase ^= 1; in ena_com_cq_inc_head()
127 ena_com_rx_cdesc_idx_to_ptr(struct ena_com_io_cq *io_cq, u16 idx) in ena_com_rx_cdesc_idx_to_ptr() argument
[all …]
Dena_eth_com.h81 int ena_com_rx_pkt(struct ena_com_io_cq *io_cq,
89 int ena_com_tx_comp_req_id_get(struct ena_com_io_cq *io_cq, u16 *req_id);
91 bool ena_com_cq_empty(struct ena_com_io_cq *io_cq);
93 static inline void ena_com_unmask_intr(struct ena_com_io_cq *io_cq, in ena_com_unmask_intr() argument
96 writel(intr_reg->intr_control, io_cq->unmask_reg); in ena_com_unmask_intr()
124 static inline int ena_com_update_dev_comp_head(struct ena_com_io_cq *io_cq) in ena_com_update_dev_comp_head() argument
129 head = io_cq->head; in ena_com_update_dev_comp_head()
130 unreported_comp = head - io_cq->last_head_update; in ena_com_update_dev_comp_head()
131 need_update = unreported_comp > (io_cq->q_depth / ENA_COMP_HEAD_THRESH); in ena_com_update_dev_comp_head()
133 if (io_cq->cq_head_db_reg && need_update) { in ena_com_update_dev_comp_head()
[all …]
Dena_com.c384 struct ena_com_io_cq *io_cq) in ena_com_init_io_cq() argument
389 memset(&io_cq->cdesc_addr, 0x0, sizeof(io_cq->cdesc_addr)); in ena_com_init_io_cq()
392 io_cq->cdesc_entry_size_in_bytes = in ena_com_init_io_cq()
393 (io_cq->direction == ENA_COM_IO_QUEUE_DIRECTION_TX) ? in ena_com_init_io_cq()
397 size = io_cq->cdesc_entry_size_in_bytes * io_cq->q_depth; in ena_com_init_io_cq()
401 io_cq->cdesc_addr.virt_addr = in ena_com_init_io_cq()
403 &io_cq->cdesc_addr.phys_addr, GFP_KERNEL); in ena_com_init_io_cq()
405 if (!io_cq->cdesc_addr.virt_addr) { in ena_com_init_io_cq()
406 io_cq->cdesc_addr.virt_addr = in ena_com_init_io_cq()
408 &io_cq->cdesc_addr.phys_addr, in ena_com_init_io_cq()
[all …]
Dena_com.h457 struct ena_com_io_cq **io_cq);
822 struct ena_com_io_cq *io_cq);
833 struct ena_com_io_cq *io_cq);
/Linux-v4.19/block/
Dblk-ioc.c35 struct io_cq *icq = container_of(head, struct io_cq, __rcu_head); in icq_free_icq_rcu()
44 static void ioc_exit_icq(struct io_cq *icq) in ioc_exit_icq()
63 static void ioc_destroy_icq(struct io_cq *icq) in ioc_destroy_icq()
112 struct io_cq *icq = hlist_entry(ioc->icq_list.first, in ioc_release_fn()
113 struct io_cq, ioc_node); in ioc_release_fn()
178 struct io_cq *icq; in put_io_context_active()
234 struct io_cq *icq = list_entry(icq_list->next, in __ioc_clear_queue()
235 struct io_cq, q_node); in __ioc_clear_queue()
349 struct io_cq *ioc_lookup_icq(struct io_context *ioc, struct request_queue *q) in ioc_lookup_icq()
351 struct io_cq *icq; in ioc_lookup_icq()
[all …]
Dblk.h335 struct io_cq *ioc_lookup_icq(struct io_context *ioc, struct request_queue *q);
336 struct io_cq *ioc_create_icq(struct io_context *ioc, struct request_queue *q,
Dbfq-iosched.h361 struct io_cq icq; /* must be the first member */
Dblk-mq-sched.c38 struct io_cq *icq; in blk_mq_sched_assign_ioc()
Delevator.c882 if (WARN_ON(e->icq_size < sizeof(struct io_cq)) || in elv_register()
883 WARN_ON(e->icq_align < __alignof__(struct io_cq))) in elv_register()
Dcfq-iosched.c316 struct io_cq icq; /* must be the first member */
891 static inline struct cfq_io_cq *icq_to_cic(struct io_cq *icq) in icq_to_cic()
3634 static void cfq_init_icq(struct io_cq *icq) in cfq_init_icq()
3641 static void cfq_exit_icq(struct io_cq *icq) in cfq_exit_icq()
Dbfq-iosched.c382 static struct bfq_io_cq *icq_to_bic(struct io_cq *icq) in icq_to_bic()
4120 static void bfq_exit_icq(struct io_cq *icq) in bfq_exit_icq()
Dblk-core.c1353 struct io_cq *icq = NULL; in __get_request()
/Linux-v4.19/include/linux/
Delevator.h10 struct io_cq;
49 typedef void (elevator_init_icq_fn) (struct io_cq *);
50 typedef void (elevator_exit_icq_fn) (struct io_cq *);
119 void (*init_icq)(struct io_cq *);
120 void (*exit_icq)(struct io_cq *);
Diocontext.h72 struct io_cq { struct
115 struct io_cq __rcu *icq_hint;
Dblkdev.h202 struct io_cq *icq;