On Wed, 28 Sep 2005, Bill Rugolsky Jr. wrote:
> > 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.
>
> So are the applications running off of the unionfs?
>
Yes, is this a bad idea ? Is unionfs meant to be used for non-executable
files only ?
In fact, since unionfs replaces my rootfs during boot, even the shared
objects from /lib are mmap'ed from it. I see on the mailing list that
there's some problem with mmap. Could it be a manifestation of the same
bug ?
> I haven't been closely following development, but perhaps unionfs is
> pinning much more memory. If the executables are demand-loaded via
> mmap, it might be due to shortcomings in the current mmap support. Have you
> compared /proc/{slabinfo,meminfo} for the two scenarios?
>
I ran some tests:
When unionfs is mounted before phone's applications:
Mem: 47677440 46456832 1220608 0 1449984 24010752
unionfs_dentry 143 552 40 6 6 1
unionfs_filldir 0 84 44 0 1 1
When unionfs is mounted after basic applications are executed:
Mem: 47677440 46342144 1335296 0 1433600 24670208
unionfs_dentry 133 460 40 5 5 1
unionfs_filldir 0 84 44 0 1 1
(Always measured 2 mins after boot, with default phone manager running).
Seems like unionfs understandably took a bit more memory when started
earlier, because more files have been accessed since it was mounted.
However, it doesn't seem enough to explain why the running applications
are slower than usual.
I suspect its related to the fact these applications mmap (dlopen) dozens
of shared-objects. Is it related to the mmap issue being discussed these
days ?
_______________________________________________
unionfs mailing list
[email protected]
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs