Skip to content

Commit

Permalink
[PATCH] r/o bind mounts: elevate count for xfs timestamp updates
Browse files Browse the repository at this point in the history
Elevate the write count during the xfs m/ctime updates.

XFS has to do it's own timestamp updates due to an unfortunate VFS
design limitation, so it will have to track writers by itself aswell.

[hch: split out from the touch_atime patch as it's not related to it at all]

Acked-by: Al Viro <[email protected]>
Signed-off-by: Christoph Hellwig <[email protected]>
Signed-off-by: Dave Hansen <[email protected]>
Signed-off-by: Al Viro <[email protected]>
  • Loading branch information
hansendc authored and Al Viro committed Apr 19, 2008
1 parent 2f676cb commit ec82687
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 8 deletions.
7 changes: 0 additions & 7 deletions fs/xfs/linux-2.6/xfs_iops.c
Original file line number Diff line number Diff line change
Expand Up @@ -155,13 +155,6 @@ xfs_ichgtime_fast(
*/
ASSERT((flags & XFS_ICHGTIME_ACC) == 0);

/*
* We're not supposed to change timestamps in readonly-mounted
* filesystems. Throw it away if anyone asks us.
*/
if (unlikely(IS_RDONLY(inode)))
return;

if (flags & XFS_ICHGTIME_MOD) {
tvp = &inode->i_mtime;
ip->i_d.di_mtime.t_sec = (__int32_t)tvp->tv_sec;
Expand Down
9 changes: 8 additions & 1 deletion fs/xfs/linux-2.6/xfs_lrw.c
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@
#include "xfs_vnodeops.h"

#include <linux/capability.h>
#include <linux/mount.h>
#include <linux/writeback.h>


Expand Down Expand Up @@ -670,10 +671,16 @@ xfs_write(
if (new_size > xip->i_size)
xip->i_new_size = new_size;

if (likely(!(ioflags & IO_INVIS))) {
/*
* We're not supposed to change timestamps in readonly-mounted
* filesystems. Throw it away if anyone asks us.
*/
if (likely(!(ioflags & IO_INVIS) &&
!mnt_want_write(file->f_path.mnt))) {
file_update_time(file);
xfs_ichgtime_fast(xip, inode,
XFS_ICHGTIME_MOD | XFS_ICHGTIME_CHG);
mnt_drop_write(file->f_path.mnt);
}

/*
Expand Down

0 comments on commit ec82687

Please sign in to comment.