Design review for Native File system support - ext2

Janani k 3moonu3 at ...9...
Sun May 10 13:02:49 CEST 2015

I am trying to port an existing native file-system(ext2) to Genode. So, I
started porting this in the same place as rump_ext2 so that this can be set
up fast to get quick running of the code. I designed it so as to call our
native implementation calls instead of rump calls. To get the block
sessions working and basic ext2 functionalities checking, I did quick code
work to get it up and running. Sorry didn't follow the
Genode specifications in coding. I want get suggestions & feedback's on
this design and then I will align code to Genode specifications and move
further. I am attaching the patch file. And I will list out major things I
did in this work to give an overview.
1. It contains totally 3 parts. one which has all Genode related code which
used to deal with rump also and handle registry things, so I kept this one
as is so as to utilize it again. Second part File-system interface which
serves as an abstraction of all the extended file-system
types(ext2,ext3,ext4). Third part ext2 this contains the implementation of
2. All the calls previously to rump will be replaced by this new ext2
3. Till now I could get it up running. In this, I linked creating directory
or file code, remove a directory, listing of directory entries works. This
you can see in file comments where this gets called.
4. Since I used ram data space the changes I did to the ext2.raw are not
persistent. So I removed 3 lines in which create ext2.raw
file again and again when this demo is run and instead I made it
persistent. And I created some directories before hand in this.

5. For mounting it and checking contents use :: $ sudo mount -t ext2 -o
loop,rw ./build.lx/bin/ext2.raw /mnt/ext2/

6 For checking ext2 structure from outside use :: $ dumpe2fs

Entire development is done running Genode on linux. For compiling and
running ext2 use :: make -C build.lx/ run/rump_ext2

Thanks & regards,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch_file
Type: application/octet-stream
Size: 55262 bytes
Desc: not available
URL: <>

More information about the users mailing list