Re: locking user memory and kiobuf

Jeff Garzik (jgarzik@mandrakesoft.com)
Sun, 14 Nov 1999 12:43:41 +0000


Alan Cox wrote:
>
> > kiobuf sounds perfect for a problem we have. Currently I use mmap() to map
> > pages from __get_free_pages() into user space for dma. This is not totally
> > satisfactory, tho, in part because the resulting group of pages is not mapped
> > contiguously into kernel.
>
> If you have a situation where that is hard to handle you can vmalloc a block
> of memory then map that into user space. drivers/char/bttv.c does it. Its
> ugly and bttv needs to switch to kiovecs in 2.3.x if I get time.

On a tangent issue, is there an example somewhere of driver code storing
and retrieving objects from VM? something along the lines of

swap_in_and_lock_page(page);
ptr = page_address(page);
/* access ptr */
unlock_pack(page); /* page can now be swapped out if necessary */

-- 
Jeff Garzik              | Just once, I wish we would encounter
Building 1024            | an alien menace that wasn't immune to
MandrakeSoft, Inc.       | bullets.   -- The Brigadier, "Dr. Who"

- 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/