From: alex Date: Sun, 3 Jul 2005 22:49:44 +0000 (+0000) Subject: b=5888 X-Git-Tag: v1_7_100~1131 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=3a7e81f5862c22732bcf7da8000939f24ee0977b;p=fs%2Flustre-release.git b=5888 - should exit immediately, if we aren't a holder of size semaphore --- diff --git a/lustre/llite/rw.c b/lustre/llite/rw.c index 26fc979..f2c6836 100644 --- a/lustre/llite/rw.c +++ b/lustre/llite/rw.c @@ -124,14 +124,17 @@ void ll_truncate(struct inode *inode) CDEBUG(D_VFSTRACE, "VFS Op:inode=%lu/%u(%p) to %llu\n", inode->i_ino, inode->i_generation, inode, inode->i_size); + if (lli->lli_size_pid != current->pid) { + EXIT; + return; + } + if (!lsm) { CDEBUG(D_INODE, "truncate on inode %lu with no objects\n", inode->i_ino); GOTO(out_unlock, 0); } - if (lli->lli_size_pid != current->pid) - GOTO(out_unlock, 0); LASSERT(atomic_read(&lli->lli_size_sem.count) <= 0); if (lov_merge_size(lsm, 0) == inode->i_size) {