| /linux/drivers/net/ethernet/google/gve/ |
| H A D | gve_rx.c | 16 struct gve_rx_slot_page_info *page_info, in gve_rx_free_buffer() argument 22 page_ref_sub(page_info->page, page_info->pagecnt_bias - 1); in gve_rx_free_buffer() 23 gve_free_page(dev, page_info->page, dma, DMA_FROM_DEVICE); in gve_rx_free_buffer() 33 if (!rx->data.page_info) in gve_rx_unfill_pages() 38 gve_rx_free_buffer(&priv->pdev->dev, &rx->data.page_info[i], in gve_rx_unfill_pages() 42 page_ref_sub(rx->data.page_info[i].page, in gve_rx_unfill_pages() 43 rx->data.page_info[i].pagecnt_bias - 1); in gve_rx_unfill_pages() 51 kvfree(rx->data.page_info); in gve_rx_unfill_pages() 52 rx->data.page_info = NULL; in gve_rx_unfill_pages() 145 struct gve_rx_slot_page_info *page_info, in gve_setup_rx_buffer() argument [all …]
|
| H A D | gve_buffer_mgmt_dqo.c | 13 return page_count(bs->page_info.page) - bs->page_info.pagecnt_bias; in gve_buf_ref_cnt() 34 buf_state->page_info.page = NULL; in gve_alloc_buf_state() 141 buf_state->page_info.page = rx->dqo.qpl->pages[idx]; in gve_alloc_qpl_page_dqo() 144 buf_state->page_info.page_offset = 0; in gve_alloc_qpl_page_dqo() 145 buf_state->page_info.page_address = in gve_alloc_qpl_page_dqo() 146 page_address(buf_state->page_info.page); in gve_alloc_qpl_page_dqo() 147 buf_state->page_info.buf_size = rx->packet_buffer_truesize; in gve_alloc_qpl_page_dqo() 148 buf_state->page_info.pad = rx->rx_headroom; in gve_alloc_qpl_page_dqo() 152 page_ref_add(buf_state->page_info.page, INT_MAX - 1); in gve_alloc_qpl_page_dqo() 153 buf_state->page_info.pagecnt_bias = INT_MAX; in gve_alloc_qpl_page_dqo() [all …]
|
| H A D | gve_utils.c | 84 struct gve_rx_slot_page_info *page_info, u16 len) in gve_rx_copy() argument 86 void *va = page_info->page_address + page_info->page_offset + in gve_rx_copy() 87 page_info->pad; in gve_rx_copy() 92 void gve_dec_pagecnt_bias(struct gve_rx_slot_page_info *page_info) in gve_dec_pagecnt_bias() argument 94 page_info->pagecnt_bias--; in gve_dec_pagecnt_bias() 95 if (page_info->pagecnt_bias == 0) { in gve_dec_pagecnt_bias() 96 int pagecount = page_count(page_info->page); in gve_dec_pagecnt_bias() 101 page_info->pagecnt_bias = INT_MAX - pagecount; in gve_dec_pagecnt_bias() 104 page_ref_add(page_info->page, INT_MAX - pagecount); in gve_dec_pagecnt_bias()
|
| H A D | gve_rx_dqo.c | 531 buf_state->page_info.page_address + in gve_rx_copy_ondemand() 532 buf_state->page_info.page_offset, in gve_rx_copy_ondemand() 552 buf_state->page_info.netmem, in gve_skb_add_rx_frag() 553 buf_state->page_info.page_offset + in gve_skb_add_rx_frag() 554 buf_state->page_info.pad, buf_len, in gve_skb_add_rx_frag() 555 buf_state->page_info.buf_size); in gve_skb_add_rx_frag() 558 buf_state->page_info.page, in gve_skb_add_rx_frag() 559 buf_state->page_info.page_offset + in gve_skb_add_rx_frag() 560 buf_state->page_info.pad, buf_len, in gve_skb_add_rx_frag() 561 buf_state->page_info.buf_size); in gve_skb_add_rx_frag() [all …]
|
| H A D | gve_utils.h | 26 struct gve_rx_slot_page_info *page_info, u16 len); 29 void gve_dec_pagecnt_bias(struct gve_rx_slot_page_info *page_info);
|
| H A D | gve.h | 141 struct gve_rx_slot_page_info *page_info; /* page info of the buffers */ member 191 struct gve_rx_slot_page_info page_info; member
|
| /linux/drivers/md/dm-vdo/ |
| H A D | block-map.c | 126 static inline bool is_dirty(const struct page_info *info) in is_dirty() 131 static inline bool is_present(const struct page_info *info) in is_present() 136 static inline bool is_in_flight(const struct page_info *info) in is_in_flight() 141 static inline bool is_incoming(const struct page_info *info) in is_incoming() 146 static inline bool is_outgoing(const struct page_info *info) in is_outgoing() 151 static inline bool is_valid(const struct page_info *info) in is_valid() 156 static char *get_page_buffer(struct page_info *info) in get_page_buffer() 183 struct page_info *info; in initialize_info() 224 result = vdo_allocate(cache->page_count, struct page_info, "page infos", in allocate_cache_components() 306 static void update_counter(struct page_info *info, s32 delta) in update_counter() [all …]
|
| H A D | block-map.h | 60 struct page_info *infos; 64 struct page_info *last_found; 133 struct page_info { struct 179 struct page_info *info; argument
|
| /linux/drivers/android/binder/ |
| H A D | page_range.rs | 364 let page_info = unsafe { inner.pages.add(i) }; in use_range() localVariable 367 if let Some(page) = unsafe { PageInfo::get_page(page_info) } { in use_range() 375 unsafe { PageInfo::list_lru_del(page_info, page.nid(), self.shrinker) }; in use_range() 408 let page_info = unsafe { inner.pages.add(i) }; in use_page_slow() localVariable 411 if let Some(page) = unsafe { PageInfo::get_page(page_info) } { in use_page_slow() 419 unsafe { PageInfo::list_lru_del(page_info, page.nid(), self.shrinker) }; in use_page_slow() 468 unsafe { PageInfo::set_page(page_info, new_page) }; in use_page_slow() 488 let page_info = unsafe { inner.pages.add(i) }; in stop_using_range() localVariable 491 if let Some(page) = unsafe { PageInfo::get_page(page_info) } { in stop_using_range() 493 unsafe { PageInfo::list_lru_add(page_info, page.nid(), self.shrinker) }; in stop_using_range() [all …]
|
| /linux/drivers/infiniband/sw/rxe/ |
| H A D | rxe_mr.c | 146 mr->page_info[mr->nbuf].page = page; in rxe_mr_fill_pages_from_sgt() 147 mr->page_info[mr->nbuf].offset = 0; in rxe_mr_fill_pages_from_sgt() 159 mr->page_info = kzalloc_objs(struct rxe_mr_page, num_pages); in __alloc_mr_page_info() 160 if (!mr->page_info) in __alloc_mr_page_info() 185 if (!mr->page_info) in free_mr_page_info() 188 kfree(mr->page_info); in free_mr_page_info() 189 mr->page_info = NULL; in free_mr_page_info() 279 mr->page_info[mr->nbuf].page = sub_page; in rxe_set_page() 280 mr->page_info[mr->nbuf].offset = addr & (PAGE_SIZE - 1); in rxe_set_page() 333 struct rxe_mr_page *info = &mr->page_info[index]; in rxe_mr_copy_xarray() [all …]
|
| H A D | rxe_verbs.h | 364 struct rxe_mr_page *page_info; member
|
| /linux/drivers/net/wwan/t7xx/ |
| H A D | t7xx_hif_dpmaif_rx.c | 400 struct dpmaif_bat_page *page_info; in t7xx_dpmaif_set_frag_to_skb() local 404 page_info = rxq->bat_frag->bat_skb; in t7xx_dpmaif_set_frag_to_skb() 405 page_info += t7xx_normal_pit_bid(pkt_info); in t7xx_dpmaif_set_frag_to_skb() 407 if (!page_info->page) in t7xx_dpmaif_set_frag_to_skb() 413 dma_unmap_page(dev, page_info->data_bus_addr, page_info->data_len, DMA_FROM_DEVICE); in t7xx_dpmaif_set_frag_to_skb() 417 data_base_addr = page_info->data_bus_addr; in t7xx_dpmaif_set_frag_to_skb() 419 data_offset += page_info->offset; in t7xx_dpmaif_set_frag_to_skb() 421 skb_add_rx_frag(skb, shinfo->nr_frags, page_info->page, in t7xx_dpmaif_set_frag_to_skb() 422 data_offset, data_len, page_info->data_len); in t7xx_dpmaif_set_frag_to_skb() 424 page_info->page = NULL; in t7xx_dpmaif_set_frag_to_skb() [all …]
|
| /linux/drivers/net/ethernet/emulex/benet/ |
| H A D | be_main.c | 2310 struct be_rx_page_info *page_info; in be_rx_compl_discard() local 2314 page_info = get_rx_page_info(rxo); in be_rx_compl_discard() 2315 put_page(page_info->page); in be_rx_compl_discard() 2316 memset(page_info, 0, sizeof(*page_info)); in be_rx_compl_discard() 2327 struct be_rx_page_info *page_info; in skb_fill_rx_data() local 2332 page_info = get_rx_page_info(rxo); in skb_fill_rx_data() 2333 start = page_address(page_info->page) + page_info->page_offset; in skb_fill_rx_data() 2343 put_page(page_info->page); in skb_fill_rx_data() 2351 page_info->page, in skb_fill_rx_data() 2352 page_info->page_offset + hdr_len, in skb_fill_rx_data() [all …]
|