Page 2 of 2

Re: eMMCFS -- Samsung eMMC chip oriented File System

Posted: Sat Jun 15, 2013 9:15 am
by juusso
Could you please make patch for kernels >2.6.35 up to 2.6.xx and for kernels > 3.x ? All in one?

Edit: i slightly edited (source goes with this part already fixed in all needed files):

Code: Select all

-#include <linux/emmcfs_fs.h>
+#include "emmcfs_fs.h" 

attached emmcfs source (new attached here), so your patcher generating some rejects.

Re: eMMCFS -- Samsung eMMC chip oriented File System

Posted: Sat Jun 15, 2013 5:40 pm
by arkoPL
juuso wrote: Could you please make patch for kernels >2.6.35 up to 2.6.xx and for kernels > 3.x ? All in one?
There is a lot of changes since kernel 3.5 - 3.6 so I need some thime cause I have a lot of work to do these days. But I'll try to finish it before the end of next week.

Re: eMMCFS -- Samsung eMMC chip oriented File System

Posted: Thu Jun 20, 2013 5:51 am
by arkoPL
I've prepared patch for all kernels starting from 2.6.35. Place emmcfs_fs.h in linux directory.
patch_for_all_kernels_since_2.6.35.patch.gz

Re: eMMCFS -- Samsung eMMC chip oriented File System

Posted: Thu Aug 29, 2013 8:58 pm
by juice777
I managed to successfully compile emmcfs.ko on Fedora 19 kernel 3.10, and have tested that mount/umount is working. The compiling procedure is a little different to what is described on this thread. I tried to make a patch that is compatible with Fedora and Ubuntu but I can't test on Ubuntu. Let us know if you try it.

I have attached a patch file, based on arkoPL's patch for all kernels since 2.6.35 with additional patches. The patch is intended to be used with juuso' modified source.

The patches include:
SpoilerShow
  • All of arkoPL's patches including umount fix
  • Adds bash script "osfinder_app" that tries to check if the current distribution is Fedora/Redhat {Thanks to iamthesgt}
  • Make sets permissions for "osfinder_app" to 755 automatically
    stop make from crashing when permissions are too strict
  • Make uses Fedora kernel sources directory if "osfinder_app" identifies Redhat, otherwise it uses the default kernel sources directory
    kernel sources directory is different on Fedora
  • #include <linux/aio.h> in inode.c
    Fixes "/emmcfs/inode.c:1561:26: error: dereferencing pointer to incomplete type struct file *file = iocb->ki_filp;" compile error on Fedora 19 kernel 3.10
Now for the headache! On default Fedora 19 kernel 3.10 kernel, the module will not compile and complains that emmcfs.ko is using GPL symbols and that it violates GPL requirements. For me it was easiest to compile a custom kernel without any GPL symbols. It works for me but there is probably a better solution.

NOTE: The following breaks GPL-enforcement for all kernel modules. Proceed at your own risk! You are responsible to make sure that any software that you distribute complies with all licensing requirements that may be applicable including GPL.

See Fedora Project - Building a custom kernel. The following is a rough method to patch the kernel source:
SpoilerShow

Code: Select all

#### cd into kernel source code directory (e.g. ~/rpmbuild/BUILD/kernel-3.10.fc19.new/linux-3.10.9-200.fc19.x86_64/) then
find . -type f -name '*.c' | xargs grep -l 'EXPORT_SYMBOL_GPL(' | xargs sed -i 's/EXPORT_SYMBOL_GPL(/EXPORT_SYMBOL(/g'

#### I only tested the *.c patches. It might be useful to also patch *.h:
find . -type f -name '*.h' | xargs grep -l 'EXPORT_SYMBOL_GPL(' | xargs sed -i 's/EXPORT_SYMBOL_GPL(/EXPORT_SYMBOL(/g'
Now the module should compile!

Edit: Forgot to attach patch

Re: eMMCFS -- Samsung eMMC chip oriented File System

Posted: Sun Jan 13, 2019 4:19 pm
by virusz
Hello. Help me please. I need to compile this patch so that EMMCFS can be mounted. I especially did not face Linux. Help me compile and install it. I have installed Fedora 18 now.