b43legacy: Fix possible NULL pointer dereference in DMA code
PATCH 1/1 b43legacy: Fix possible NULL pointer dereference in DMA code
This fixes a possible NULL pointer dereference in an error path of the DMA allocation error checking code. This is also necessary for a future DMA API change that is on its way into the mainline kernel that adds an additional dev parameter to dma_mapping_error().
Signed-off-by Michael Buesch <[email protected]>
---
John, please apply to 2.6.26
drivers/net/wireless/b43legacy/dma.c +1 -1
@@ -873,12 +873,13 @@ struct b43legacy_dmaring *b43legacy_setudma_addr_t dma_test; ring =kzalloc (sizeof (*ring),GFP_KERNEL );if (!ring) goto out; ring->type = type; + ring->dev = dev; nr_slots = B43legacy_RXRING_SLOTS;if (for_tx) nr_slots = B43legacy_TXRING_SLOTS; ring->meta = kcalloc(nr_slots, sizeof(struct b43legacy_dmadesc_meta),
@@ -919,13 +920,12 @@ struct b43legacy_dmaring *b43legacy_setudma_unmap_single (dev->dev->dma_dev, dma_test,sizeof (struct b43legacy_txhdr_fw3 ),DMA_TO_DEVICE ); } - ring->dev = dev; ring->nr_slots = nr_slots; ring->mmio_base =b43legacy_dmacontroller_base (type, controller_index); ring->index = controller_index;if (type == B43legacy_DMA_64BIT) ring->ops = &dma64_ops;else