Re: CONFIG_HIGHMEM & page_address: this time in ramfs.

From: Manfred Spraul (manfred@colorfullife.com)
Date: Thu Jun 15 2000 - 02:51:08 EST


wollny wrote:
>
> static int ramfs_readpage(struct file *file, struct page * page)
> {
> if (!Page_Uptodate(page)) {
> - memset((void *) page_address(page), 0, PAGE_CACHE_SIZE);
> + memset((void *) kmap(page), 0, PAGE_CACHE_SIZE);
> SetPageUptodate(page);
> }
> UnlockPage(page);

You must also call kunmap(), otherwise you'll run out of kmap addresses
(only 512/1024 concurrent maps are possible)

Look at file_read_actor() in mm/filemap.c

--
	Manfred

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



This archive was generated by hypermail 2b29 : Thu Jun 15 2000 - 21:00:34 EST