Lines Matching refs:rx_pool

300 		adapter->rx_pool[i].active = 0;  in deactivate_rx_pools()
404 if (adapter->rx_pool[i].active) in replenish_pools()
405 replenish_rx_pool(adapter, &adapter->rx_pool[i]); in replenish_pools()
469 struct ibmvnic_rx_pool *rx_pool; in reset_rx_pools() local
474 if (!adapter->rx_pool) in reset_rx_pools()
480 rx_pool = &adapter->rx_pool[i]; in reset_rx_pools()
484 if (rx_pool->buff_size != buff_size) { in reset_rx_pools()
485 free_long_term_buff(adapter, &rx_pool->long_term_buff); in reset_rx_pools()
486 rx_pool->buff_size = buff_size; in reset_rx_pools()
488 &rx_pool->long_term_buff, in reset_rx_pools()
489 rx_pool->size * in reset_rx_pools()
490 rx_pool->buff_size); in reset_rx_pools()
493 &rx_pool->long_term_buff); in reset_rx_pools()
499 for (j = 0; j < rx_pool->size; j++) in reset_rx_pools()
500 rx_pool->free_map[j] = j; in reset_rx_pools()
502 memset(rx_pool->rx_buff, 0, in reset_rx_pools()
503 rx_pool->size * sizeof(struct ibmvnic_rx_buff)); in reset_rx_pools()
505 atomic_set(&rx_pool->available, 0); in reset_rx_pools()
506 rx_pool->next_alloc = 0; in reset_rx_pools()
507 rx_pool->next_free = 0; in reset_rx_pools()
508 rx_pool->active = 1; in reset_rx_pools()
516 struct ibmvnic_rx_pool *rx_pool; in release_rx_pools() local
519 if (!adapter->rx_pool) in release_rx_pools()
523 rx_pool = &adapter->rx_pool[i]; in release_rx_pools()
527 kfree(rx_pool->free_map); in release_rx_pools()
528 free_long_term_buff(adapter, &rx_pool->long_term_buff); in release_rx_pools()
530 if (!rx_pool->rx_buff) in release_rx_pools()
533 for (j = 0; j < rx_pool->size; j++) { in release_rx_pools()
534 if (rx_pool->rx_buff[j].skb) { in release_rx_pools()
535 dev_kfree_skb_any(rx_pool->rx_buff[j].skb); in release_rx_pools()
536 rx_pool->rx_buff[j].skb = NULL; in release_rx_pools()
540 kfree(rx_pool->rx_buff); in release_rx_pools()
543 kfree(adapter->rx_pool); in release_rx_pools()
544 adapter->rx_pool = NULL; in release_rx_pools()
552 struct ibmvnic_rx_pool *rx_pool; in init_rx_pools() local
560 adapter->rx_pool = kcalloc(rxadd_subcrqs, in init_rx_pools()
563 if (!adapter->rx_pool) { in init_rx_pools()
571 rx_pool = &adapter->rx_pool[i]; in init_rx_pools()
578 rx_pool->size = adapter->req_rx_add_entries_per_subcrq; in init_rx_pools()
579 rx_pool->index = i; in init_rx_pools()
580 rx_pool->buff_size = buff_size; in init_rx_pools()
581 rx_pool->active = 1; in init_rx_pools()
583 rx_pool->free_map = kcalloc(rx_pool->size, sizeof(int), in init_rx_pools()
585 if (!rx_pool->free_map) { in init_rx_pools()
590 rx_pool->rx_buff = kcalloc(rx_pool->size, in init_rx_pools()
593 if (!rx_pool->rx_buff) { in init_rx_pools()
599 if (alloc_long_term_buff(adapter, &rx_pool->long_term_buff, in init_rx_pools()
600 rx_pool->size * rx_pool->buff_size)) { in init_rx_pools()
605 for (j = 0; j < rx_pool->size; ++j) in init_rx_pools()
606 rx_pool->free_map[j] = j; in init_rx_pools()
608 atomic_set(&rx_pool->available, 0); in init_rx_pools()
609 rx_pool->next_alloc = 0; in init_rx_pools()
610 rx_pool->next_free = 0; in init_rx_pools()
1212 struct ibmvnic_rx_pool *rx_pool; in clean_rx_pools() local
1218 if (!adapter->rx_pool) in clean_rx_pools()
1226 rx_pool = &adapter->rx_pool[i]; in clean_rx_pools()
1227 if (!rx_pool || !rx_pool->rx_buff) in clean_rx_pools()
1232 rx_buff = &rx_pool->rx_buff[j]; in clean_rx_pools()
2031 !adapter->rx_pool || in do_reset()
2372 struct ibmvnic_rx_pool *pool = &adapter->rx_pool[rx_buff->pool_index]; in remove_buff_from_pool()
2471 replenish_rx_pool(adapter, &adapter->rx_pool[scrq_num]); in ibmvnic_poll()
5427 ret += adapter->rx_pool[i].size * in ibmvnic_get_desired_dma()
5428 IOMMU_PAGE_ALIGN(adapter->rx_pool[i].buff_size, tbl); in ibmvnic_get_desired_dma()