On Sat, Sep 16, 2017 at 1:12 AM, Theodore Ts'o <tytso@xxxxxxx> wrote: > On Fri, Sep 15, 2017 at 11:44:33AM -0700, Jaegeuk Kim wrote: >> >> So, I digged it in more detail, and found, in drivers/android/binder.c [1], >> - binder_ioctl() >> - create a kernel thread >> - zombie_cleanup_check() >> - binder_defer_work() >> - queue_work(..., &binder_deferred_work); >> >> - binder_deferred_func() >> - binder_clear_zombies() >> - binder_proc_clear_zombies() >> - put_files_struct() >> - close_files() >> - filp_close() >> - fput() >> >> It seems binder holds some proc files. > > If binder was holding some files open, then umount should have failed > with EBUSY, no? > > Does Android use mount namespaces at all? > Extensively. Every user (i.e. from multi user) has its own mount ns with private /data Every app has its own mount ns, with /sdcard mounted to one of 3 FUSE sdcard mounts depending of app storage permission (none, rdonly, rdwr). Amir.