|
@@ -898,6 +898,7 @@ static void ql_update_lbq(struct ql_adapter *qdev, struct rx_ring *rx_ring)
|
|
|
lbq_desc->index);
|
|
|
lbq_desc->p.lbq_page = alloc_page(GFP_ATOMIC);
|
|
|
if (lbq_desc->p.lbq_page == NULL) {
|
|
|
+ rx_ring->lbq_clean_idx = clean_idx;
|
|
|
QPRINTK(qdev, RX_STATUS, ERR,
|
|
|
"Couldn't get a page.\n");
|
|
|
return;
|
|
@@ -907,6 +908,7 @@ static void ql_update_lbq(struct ql_adapter *qdev, struct rx_ring *rx_ring)
|
|
|
0, PAGE_SIZE,
|
|
|
PCI_DMA_FROMDEVICE);
|
|
|
if (pci_dma_mapping_error(qdev->pdev, map)) {
|
|
|
+ rx_ring->lbq_clean_idx = clean_idx;
|
|
|
put_page(lbq_desc->p.lbq_page);
|
|
|
lbq_desc->p.lbq_page = NULL;
|
|
|
QPRINTK(qdev, RX_STATUS, ERR,
|