As things stand, the loader cannot find out whether the ramfs backing store is
fragmented or not.  What both the kernel binfmt and the loader do at the
moment is to ask the kernel to do a private, R/O, executable mmap of the code
section, and then the NOMMU mmap deals with copying it or XIP'ing it.
So the unpacker needs to prepare the file in the initramfs appropriately and the patch you provided makes this happen.

And lots of contiguous free memory, yes, but the unpacker uses sys_write(), and
the result is subject to the vagaries of the VFS, the VM (what there is of it)
and the page allocator.
I suppose your patch already provides for this. I do hope this will soon become the "official" method to create the initramfs.

The files are copied into pages attached to the ramfs inodes.  They will be
appropriately page aligned.
Great !

Thanks a lot !

-Michael
_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to