lkml.org 
[lkml]   [2012]   [Feb]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH 00/11] Push file_update_time() into .page_mkwrite
    Date
      Hello,

    to provide reliable support for filesystem freezing, filesystems need to have
    complete control over when metadata is changed. In particular,
    file_update_time() calls from page fault code make it impossible for
    filesystems to prevent inodes from being dirtied while the filesystem is
    frozen.

    To fix the issue, this patch set changes page fault code to call
    file_update_time() only when ->page_mkwrite() callback is not provided. If the
    callback is provided, it is the responsibility of the filesystem to perform
    update of i_mtime / i_ctime if needed. We also push file_update_time() call
    to all existing ->page_mkwrite() implementations if the time update does not
    obviously happen by other means. If you know your filesystem does not need
    update of modification times in ->page_mkwrite() handler, please speak up and
    I'll drop the patch for your filesystem.

    As a side note, an alternative would be to remove call of file_update_time()
    from page fault code altogether and require all filesystems needing it to do
    that in their ->page_mkwrite() implementation. That is certainly possible
    although maybe slightly inefficient and would require auditting 100+
    vm_operations_structs *shake*.

    If I get acks on these patches, Andrew, would you be willing to take these
    patches?

    Honza

    CC: Peter Zijlstra <a.p.zijlstra@chello.nl>
    CC: Ingo Molnar <mingo@elte.hu>
    CC: Paul Mackerras <paulus@samba.org>
    CC: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
    CC: Jaya Kumar <jayalk@intworks.biz>
    CC: Sage Weil <sage@newdream.net>
    CC: ceph-devel@vger.kernel.org
    CC: Steve French <sfrench@samba.org>
    CC: linux-cifs@vger.kernel.org
    CC: Eric Van Hensbergen <ericvh@gmail.com>
    CC: Ron Minnich <rminnich@sandia.gov>
    CC: Latchesar Ionkov <lucho@ionkov.net>
    CC: v9fs-developer@lists.sourceforge.net
    CC: Miklos Szeredi <miklos@szeredi.hu>
    CC: fuse-devel@lists.sourceforge.net
    CC: Steven Whitehouse <swhiteho@redhat.com>
    CC: cluster-devel@redhat.com
    CC: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    CC: Trond Myklebust <Trond.Myklebust@netapp.com>
    CC: linux-nfs@vger.kernel.org


    \
     
     \ /
      Last update: 2012-02-16 14:49    [W:0.022 / U:0.328 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site