Messages in this thread | | | Date | Thu, 26 Aug 1999 18:27:51 +0200 (CEST) | From | Andrea Arcangeli <> | Subject | Re: [bigmem-patch] 4GB with Linux on IA32 |
| |
On Tue, 17 Aug 1999, Alan Cox wrote:
>of bus addressses of vmalloc pages. I don't think the 4Gig patch breaks it >at all. In the ideal world virt_to_bus() would work on vmalloc pages. It
Yes, the bigmem patch doesn't break bttv.
bttv alloc the DMA-pool via vmalloc and with the bigmem patch applyed vmalloc prefere the bigmem pages so the DMA-pool will be always alloced in bigmem memory.
But using vmalloc all bigmem pages will have a valid virt-to-phys translation. (Only GFP may return a pointer without a valid virt-to-phys translation if __GFP_BIGMEM is been specifyed in the gfp_mask.)
So the kernel can also copy-from/to-user the DMA pool using the vmalloc addresses since it's a _valid_ address.
Via mmap the vmalloced pages will be remapped to userspace memory and that's fine as well.
Andrea
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |