[PATCH] ibmveth fix failed addbuf
This patch fixes a bug that happens when the hypervisor can't add a buffer. The old code wrote IBM_VETH_INVALID_MAP into the free_map array, so next time the index was used, a ibmveth_assert() caught it and called BUG(). The patch writes the right value into the free_map array so that the index can be reused. Signed-off-by: Santiago Leon <santil@us.ibm.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
This commit is contained in:
parent
60296d9e4b
commit
82702d37a5
1 changed files with 1 additions and 1 deletions
|
@ -237,7 +237,7 @@ static void ibmveth_replenish_buffer_pool(struct ibmveth_adapter *adapter, struc
|
|||
lpar_rc = h_add_logical_lan_buffer(adapter->vdev->unit_address, desc.desc);
|
||||
|
||||
if(lpar_rc != H_Success) {
|
||||
pool->free_map[free_index] = IBM_VETH_INVALID_MAP;
|
||||
pool->free_map[free_index] = index;
|
||||
pool->skbuff[index] = NULL;
|
||||
pool->consumer_index--;
|
||||
dma_unmap_single(&adapter->vdev->dev,
|
||||
|
|
Loading…
Reference in a new issue