summaryrefslogtreecommitdiff
path: root/sys/src/cmd/cwfs/dentry.c
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@gmx.de>2012-07-14 23:49:17 +0200
committercinap_lenrek <cinap_lenrek@gmx.de>2012-07-14 23:49:17 +0200
commit8099d78f447fd77b215e2cc6a6bab2097a0d4d54 (patch)
treebba4ffff4d1ed703f7ea918f7608d9689ab1e9ce /sys/src/cmd/cwfs/dentry.c
parentb494f61baa98f9ebb17cae13257d056af995b9f3 (diff)
cwfs: noatime flag
Diffstat (limited to 'sys/src/cmd/cwfs/dentry.c')
-rw-r--r--sys/src/cmd/cwfs/dentry.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/sys/src/cmd/cwfs/dentry.c b/sys/src/cmd/cwfs/dentry.c
index e34090e4c..ad0d55d0e 100644
--- a/sys/src/cmd/cwfs/dentry.c
+++ b/sys/src/cmd/cwfs/dentry.c
@@ -13,16 +13,18 @@ accessdir(Iobuf *p, Dentry *d, int f, int uid)
{
Timet t;
- if(p && p->dev->type != Devro) {
- p->flags |= Bmod;
- t = time(nil);
- if(f & (FREAD|FWRITE))
- d->atime = t;
- if(f & FWRITE) {
- d->mtime = t;
- d->muid = uid;
- d->qid.version++;
- }
+ if(p == nil || p->dev->type == Devro)
+ return;
+ f &= FREAD|FWRITE;
+ if(f != FWRITE && noatime)
+ return;
+ p->flags |= Bmod;
+ t = time(nil);
+ d->atime = t;
+ if(f & FWRITE){
+ d->mtime = t;
+ d->muid = uid;
+ d->qid.version++;
}
}