I got unionfs running on a slightly different environment.  I modified the
firmware of my Motorola A780 phone (runs linux) to use unionfs with a
TransFlash 256MB card serving as the writable filesystem.  Now the phone
is completely customizable.

However, unionfs has a strange impact on performance.  If I mount (and
pivot_root) the unionfs before the phone's internal applicaions are
loaded, these applications become sluggish.  It would be understandable if
they were sluggish for the first few seconds, until the inodes are cached
and everything is in memory.  However, some of them remain sluggish even
after a long time of use.

Curiously, if I mount the same unionfs at a later stage, after these
applications are running, they run fine (although the files they need to
open at a later stage are now in unionfs.

I don't understand why unionfs would have that effect, especially on
some applications that don't open any new file that resides on the unionfs
throughout their lifecycle.  Shouldn't the relevant inodes be in cache
after a short while, thus canceling any performance impact of unionfs on
applications that don't open new files from the unionfs mountpoint ?

Anyone has a guess on why the reduced performance continues throughout the
lifecycle of the application if it has been executed from unionfs, but not
if unionfs was mounted after the exec ?

In general, did anyone try unionfs in a resource-constrained environment
and could share some performance tips ?  Any easy way to reduce memory
consumption of unionfs ?



_______________________________________________
unionfs mailing list
[email protected]
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs

Reply via email to