-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
In an embedded system, I want a big chunk of virtual memory in the user process to be uncached. I've created a virtual device driver that has this mmap method: static int heap_mmap(struct file*filp, struct vm_area_struct*vma) { /* Mark this whole region uncached. The setup of this additional flag, and the VM_RESERVED, are the whole point of this module. This hopefully will cause all pages mapped into this vma to be uncached. */ ~ pgprot_val(vma->vm_page_prot) |= _PAGE_NO_CACHE; ~ vma->vm_flags |= VM_RESERVED; ~ vma->vm_ops = &heap_vm_ops; ~ heap_vm_open(vma); ~ return 0; } I then allocate in the nopage from get_free_page as usual. My question is, "Is this doing what I think it is doing?" - -- Steve Williams "The woods are lovely, dark and deep. steve at icarus.com But I have promises to keep, http://www.icarus.com and lines to code before I sleep, http://www.picturel.com And lines to code before I sleep." -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFDCeKrrPt1Sc2b3ikRAlsVAKDD6+O4ihBYkHreyqkNcQuuvKIK8wCg4b6v jRBU8FJrOyczJJdPkicf22s= =zMkX -----END PGP SIGNATURE-----