mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 10:00:17 +00:00
drm/radeon: use post-decrement in error handling
commit bc3f5d8c4c upstream.
We need to use post-decrement to get the pci_map_page undone also for
i==0, and to avoid some very unpleasant behaviour if pci_map_page
failed already at i==0.
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
b78bd121b4
commit
96e87f46f1
@@ -758,7 +758,7 @@ static int radeon_ttm_tt_populate(struct ttm_tt *ttm)
|
|||||||
0, PAGE_SIZE,
|
0, PAGE_SIZE,
|
||||||
PCI_DMA_BIDIRECTIONAL);
|
PCI_DMA_BIDIRECTIONAL);
|
||||||
if (pci_dma_mapping_error(rdev->pdev, gtt->ttm.dma_address[i])) {
|
if (pci_dma_mapping_error(rdev->pdev, gtt->ttm.dma_address[i])) {
|
||||||
while (--i) {
|
while (i--) {
|
||||||
pci_unmap_page(rdev->pdev, gtt->ttm.dma_address[i],
|
pci_unmap_page(rdev->pdev, gtt->ttm.dma_address[i],
|
||||||
PAGE_SIZE, PCI_DMA_BIDIRECTIONAL);
|
PAGE_SIZE, PCI_DMA_BIDIRECTIONAL);
|
||||||
gtt->ttm.dma_address[i] = 0;
|
gtt->ttm.dma_address[i] = 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user