Unionfs: implement native unionfs_fsync/unionfs_fasync methods
authorErez_Zadok <ezk@cs.sunysb.edu>
Fri, 16 Nov 2007 18:46:57 +0000 (13:46 -0500)
committerRachita Kothiyal <rachita@dewey.fsl.cs.sunysb.edu>
Thu, 1 May 2008 23:02:59 +0000 (19:02 -0400)
commit8bfa37a0ae8cd0c8d2e7c9e9ef7b8c702ca4abf9
tree17636b4622ade5ea8c063d83fae1a152e048bff1
parent97f6d61ea5c918595a4e3665730844cdee730d80
Unionfs: implement native unionfs_fsync/unionfs_fasync methods

Unionfs is not a block-based file system, but it has to work with both
block-based file systems and non-block-based ones (i.e., when
CONFIG_BLOCK=n).  We used to define our ->fsync method to file_fsync, but
that's wrong because file_fsync partially depends on CONFIG_BLOCK=y.  And we
didn't define an fasync method: now we have both.  Moreover, at best,
file_fsync would have caused unionfs to sync up one lower branch---but as a
fanout file system, we need to sync up all valid lower branches.

Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu>
Conflicts:

fs/unionfs/file.c
fs/unionfs/dirfops.c
fs/unionfs/file.c
fs/unionfs/union.h