--- pci-gart.c.old 2004-06-21 18:33:29.000000000 -0500 +++ pci-gart.c.new 2004-06-21 18:33:57.000000000 -0500 @@ -211,6 +211,7 @@ if (no_iommu || dma_mask < 0xffffffffUL) { if (high) { if (!(gfp & GFP_DMA)) { + free_pages((unsigned long)memory, get_order(size)); gfp |= GFP_DMA; goto again; }