Does unmount() sync dirty buffers

Ravishankar cyberax82 at gmail.com
Wed Feb 15 06:38:38 EST 2012


On Wed, Feb 15, 2012 at 2:08 PM, Manish Katiyar <mkatiyar at gmail.com> wrote:

> [Apparently I forgot to cc list]
>
> On Tue, Feb 14, 2012 at 10:04 PM, Manish Katiyar <mkatiyar at gmail.com>
> wrote:
> > On Tue, Feb 14, 2012 at 7:43 PM, Ravishankar <cyberax82 at gmail.com>
> wrote:
> >> Hello,
> >>
> >> When we unmount a file system with the umount command or the umount()
> system
> >> call, does the kernel sync the dirty buffers before the file system is
> >> unmounted?I am assuming that the file system is not 'busy' (i.e no open
> >> files etc) and no force options are specified. When I did a
> walk-through of
> >> do_umount() call in fs/namespace.c, I could not find calls to sync any
> dirty
> >> pages that might exist.
> >
> > yes, most of the filesystem have their own function to sync fs. Look
> > for the function pointer "sync_fs"
> >
> > For eg..for ext4
> >
> > generic_shutdown_super -> sync_filesystem -> __sync_filesystem ->
> > sync_fs -> ext4_sync_fs
> > --
> > Thanks -
> > Manish
>
>
>
> --
> Thanks -
> Manish
>

Thanks a lot.Just to add,  generic_shutdown_super() is called thus:

umount systemcall
-->mntput_no_expire()-->__mntput()-->deactivate_super()-->deactivate_locked_super()-->kill_block_super()-->generic_shutdown_super()
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20120215/255d3844/attachment.html 


More information about the Kernelnewbies mailing list