|
@@ -879,7 +879,7 @@ recycle:
|
|
|
pci_dma_sync_single_for_cpu(adap->pdev, dma_addr, len,
|
|
|
PCI_DMA_FROMDEVICE);
|
|
|
(*sd->pg_chunk.p_cnt)--;
|
|
|
- if (!*sd->pg_chunk.p_cnt)
|
|
|
+ if (!*sd->pg_chunk.p_cnt && sd->pg_chunk.page != fl->pg_chunk.page)
|
|
|
pci_unmap_page(adap->pdev,
|
|
|
sd->pg_chunk.mapping,
|
|
|
fl->alloc_size,
|
|
@@ -2088,7 +2088,7 @@ static void lro_add_page(struct adapter *adap, struct sge_qset *qs,
|
|
|
PCI_DMA_FROMDEVICE);
|
|
|
|
|
|
(*sd->pg_chunk.p_cnt)--;
|
|
|
- if (!*sd->pg_chunk.p_cnt)
|
|
|
+ if (!*sd->pg_chunk.p_cnt && sd->pg_chunk.page != fl->pg_chunk.page)
|
|
|
pci_unmap_page(adap->pdev,
|
|
|
sd->pg_chunk.mapping,
|
|
|
fl->alloc_size,
|