Re: Mounting a in-ROM filesystem efficiently

From: David Woodhouse (
Date: Fri Dec 14 2001 - 04:45:56 EST said:
> have maintained, on and off, a patch to crafms that supports
> traditional cramfs decompress-and-read/run-from-RAM, plus direct
> mmaping with no decompression and read/run straight out of ROM:


+ if (remap_page_range(vma->vm_start, KSEG0ADDR(address), length,
+ vma->vm_page_prot))

Cute, but not very generic. The approach I was contemplating was to
allocate a set of 'struct page's for the pages containing XIP data, then
add those pages to the page cache manually on read_inode().

It's a shame that ->readpage() doesn't get to say 'actually I used my own
page for that, I didn't want one allocated for me'.

Extending the MTD API to return a set of pages representing a particular
device, and handling the locking so that we don't try to write to the chips
while pages are mapped, will also be necessary if we want to do it with
flash chips that are used for anything else.


- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to More majordomo info at Please read the FAQ at

This archive was generated by hypermail 2b29 : Sat Dec 15 2001 - 21:00:28 EST