<div dir="ltr"><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif">Hi,</div><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif">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.</div><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif">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 ext2.</div><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif">2. All the calls previously to rump will be replaced by this new ext2 implementation.</div><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif">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 main.cc file comments where this gets called.</div><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif">4. Since I used ram data space the changes I did to the ext2.raw are not persistent. So I removed 3 lines in rump_ext2.run 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.</div><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif"><br></div><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif">5. For mounting it and checking contents use :: $ sudo mount -t ext2 -o loop,rw ./build.lx/bin/ext2.raw /mnt/ext2/</div><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif"><br></div><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif">6 For checking ext2 structure from outside use :: $ dumpe2fs build.lx/bin/ext2.raw</div><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif"><br></div><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif">Entire development is done running Genode on linux. For compiling and running ext2 use :: make -C build.lx/ run/rump_ext2</div><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif"><br></div><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif">Thanks & regards,</div><div class="gmail_default" style="font-size:12.8000001907349px;font-family:garamond,serif">Janan</div><div class="" style="font-size:12.8000001907349px"></div></div>