Message ID | 20210901000812.120968-4-sukadev@linux.ibm.com |
---|---|
State | Superseded |
Headers | show |
Series | [net-next,1/9] ibmvnic: Consolidate code in replenish_rx_pool() | expand |
On 2021-08-31 17:08, Sukadev Bhattiprolu wrote: > To make the code more readable, use/rename some local variables. > Basically we have a set of pools, num_pools. Each pool has a set of > buffers, pool_size and each buffer is of size buff_size. > > pool_size is a bit ambiguous (whether size in bytes or buffers). Add > a comment in the header file to make it explicit. > > Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.ibm.com> Reviewed-by: Dany Madden <drt@linux.ibm.com> > --- > drivers/net/ethernet/ibm/ibmvnic.c | 17 +++++++++-------- > drivers/net/ethernet/ibm/ibmvnic.h | 2 +- > 2 files changed, 10 insertions(+), 9 deletions(-) > > diff --git a/drivers/net/ethernet/ibm/ibmvnic.c > b/drivers/net/ethernet/ibm/ibmvnic.c > index 911315b10731..a611bd3f2539 100644 > --- a/drivers/net/ethernet/ibm/ibmvnic.c > +++ b/drivers/net/ethernet/ibm/ibmvnic.c > @@ -618,14 +618,16 @@ static int init_rx_pools(struct net_device > *netdev) > struct ibmvnic_adapter *adapter = netdev_priv(netdev); > struct device *dev = &adapter->vdev->dev; > struct ibmvnic_rx_pool *rx_pool; > - int rxadd_subcrqs; > + u64 num_pools; > + u64 pool_size; /* # of buffers in one pool */ > u64 buff_size; > int i, j; > > - rxadd_subcrqs = adapter->num_active_rx_scrqs; > + num_pools = adapter->num_active_rx_scrqs; > + pool_size = adapter->req_rx_add_entries_per_subcrq; > buff_size = adapter->cur_rx_buf_sz; > > - adapter->rx_pool = kcalloc(rxadd_subcrqs, > + adapter->rx_pool = kcalloc(num_pools, > sizeof(struct ibmvnic_rx_pool), > GFP_KERNEL); > if (!adapter->rx_pool) { > @@ -636,17 +638,16 @@ static int init_rx_pools(struct net_device > *netdev) > /* Set num_active_rx_pools early. If we fail below after partial > * allocation, release_rx_pools() will know how many to look for. > */ > - adapter->num_active_rx_pools = rxadd_subcrqs; > + adapter->num_active_rx_pools = num_pools; > > - for (i = 0; i < rxadd_subcrqs; i++) { > + for (i = 0; i < num_pools; i++) { > rx_pool = &adapter->rx_pool[i]; > > netdev_dbg(adapter->netdev, > "Initializing rx_pool[%d], %lld buffs, %lld bytes each\n", > - i, adapter->req_rx_add_entries_per_subcrq, > - buff_size); > + i, pool_size, buff_size); > > - rx_pool->size = adapter->req_rx_add_entries_per_subcrq; > + rx_pool->size = pool_size; > rx_pool->index = i; > rx_pool->buff_size = ALIGN(buff_size, L1_CACHE_BYTES); > rx_pool->active = 1; > diff --git a/drivers/net/ethernet/ibm/ibmvnic.h > b/drivers/net/ethernet/ibm/ibmvnic.h > index 22df602323bc..5652566818fb 100644 > --- a/drivers/net/ethernet/ibm/ibmvnic.h > +++ b/drivers/net/ethernet/ibm/ibmvnic.h > @@ -827,7 +827,7 @@ struct ibmvnic_rx_buff { > > struct ibmvnic_rx_pool { > struct ibmvnic_rx_buff *rx_buff; > - int size; > + int size; /* # of buffers in the pool */ > int index; > int buff_size; > atomic_t available;
diff --git a/drivers/net/ethernet/ibm/ibmvnic.c b/drivers/net/ethernet/ibm/ibmvnic.c index 911315b10731..a611bd3f2539 100644 --- a/drivers/net/ethernet/ibm/ibmvnic.c +++ b/drivers/net/ethernet/ibm/ibmvnic.c @@ -618,14 +618,16 @@ static int init_rx_pools(struct net_device *netdev) struct ibmvnic_adapter *adapter = netdev_priv(netdev); struct device *dev = &adapter->vdev->dev; struct ibmvnic_rx_pool *rx_pool; - int rxadd_subcrqs; + u64 num_pools; + u64 pool_size; /* # of buffers in one pool */ u64 buff_size; int i, j; - rxadd_subcrqs = adapter->num_active_rx_scrqs; + num_pools = adapter->num_active_rx_scrqs; + pool_size = adapter->req_rx_add_entries_per_subcrq; buff_size = adapter->cur_rx_buf_sz; - adapter->rx_pool = kcalloc(rxadd_subcrqs, + adapter->rx_pool = kcalloc(num_pools, sizeof(struct ibmvnic_rx_pool), GFP_KERNEL); if (!adapter->rx_pool) { @@ -636,17 +638,16 @@ static int init_rx_pools(struct net_device *netdev) /* Set num_active_rx_pools early. If we fail below after partial * allocation, release_rx_pools() will know how many to look for. */ - adapter->num_active_rx_pools = rxadd_subcrqs; + adapter->num_active_rx_pools = num_pools; - for (i = 0; i < rxadd_subcrqs; i++) { + for (i = 0; i < num_pools; i++) { rx_pool = &adapter->rx_pool[i]; netdev_dbg(adapter->netdev, "Initializing rx_pool[%d], %lld buffs, %lld bytes each\n", - i, adapter->req_rx_add_entries_per_subcrq, - buff_size); + i, pool_size, buff_size); - rx_pool->size = adapter->req_rx_add_entries_per_subcrq; + rx_pool->size = pool_size; rx_pool->index = i; rx_pool->buff_size = ALIGN(buff_size, L1_CACHE_BYTES); rx_pool->active = 1; diff --git a/drivers/net/ethernet/ibm/ibmvnic.h b/drivers/net/ethernet/ibm/ibmvnic.h index 22df602323bc..5652566818fb 100644 --- a/drivers/net/ethernet/ibm/ibmvnic.h +++ b/drivers/net/ethernet/ibm/ibmvnic.h @@ -827,7 +827,7 @@ struct ibmvnic_rx_buff { struct ibmvnic_rx_pool { struct ibmvnic_rx_buff *rx_buff; - int size; + int size; /* # of buffers in the pool */ int index; int buff_size; atomic_t available;
To make the code more readable, use/rename some local variables. Basically we have a set of pools, num_pools. Each pool has a set of buffers, pool_size and each buffer is of size buff_size. pool_size is a bit ambiguous (whether size in bytes or buffers). Add a comment in the header file to make it explicit. Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.ibm.com> --- drivers/net/ethernet/ibm/ibmvnic.c | 17 +++++++++-------- drivers/net/ethernet/ibm/ibmvnic.h | 2 +- 2 files changed, 10 insertions(+), 9 deletions(-)