aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_vnodeops.c
diff options
context:
space:
mode:
authorDonald Douwsma <donaldd@sgi.com>2008-03-05 21:43:20 -0500
committerLachlan McIlroy <lachlan@redback.melbourne.sgi.com>2008-04-17 21:36:55 -0400
commit163d3686bb09d88e2120bffe780a3f2d7cc4c948 (patch)
tree8503962ad2c4641f0796b5bb864996994c1ca137 /fs/xfs/xfs_vnodeops.c
parent461aa8a22595e3bd3e6f4dc2894d7c4315ea2bb9 (diff)
[XFS] Remove the xfs_refcache
Remove the xfs_refcache, it was only needed while we were still building for 2.4 kernels. SGI-PV: 971186 SGI-Modid: xfs-linux-melb:xfs-kern:30472a Signed-off-by: Donald Douwsma <donaldd@sgi.com> Signed-off-by: Christoph Hellwig <hch@infradead.org> Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_vnodeops.c')
-rw-r--r--fs/xfs/xfs_vnodeops.c34
1 files changed, 1 insertions, 33 deletions
diff --git a/fs/xfs/xfs_vnodeops.c b/fs/xfs/xfs_vnodeops.c
index ce82a2d0acbe..35ac59dabf8b 100644
--- a/fs/xfs/xfs_vnodeops.c
+++ b/fs/xfs/xfs_vnodeops.c
@@ -48,7 +48,6 @@
48#include "xfs_quota.h" 48#include "xfs_quota.h"
49#include "xfs_utils.h" 49#include "xfs_utils.h"
50#include "xfs_rtalloc.h" 50#include "xfs_rtalloc.h"
51#include "xfs_refcache.h"
52#include "xfs_trans_space.h" 51#include "xfs_trans_space.h"
53#include "xfs_log_priv.h" 52#include "xfs_log_priv.h"
54#include "xfs_filestream.h" 53#include "xfs_filestream.h"
@@ -1520,12 +1519,6 @@ xfs_release(
1520 xfs_flush_pages(ip, 0, -1, XFS_B_ASYNC, FI_NONE); 1519 xfs_flush_pages(ip, 0, -1, XFS_B_ASYNC, FI_NONE);
1521 } 1520 }
1522 1521
1523#ifdef HAVE_REFCACHE
1524 /* If we are in the NFS reference cache then don't do this now */
1525 if (ip->i_refcache)
1526 return 0;
1527#endif
1528
1529 if (ip->i_d.di_nlink != 0) { 1522 if (ip->i_d.di_nlink != 0) {
1530 if ((((ip->i_d.di_mode & S_IFMT) == S_IFREG) && 1523 if ((((ip->i_d.di_mode & S_IFMT) == S_IFREG) &&
1531 ((ip->i_size > 0) || (VN_CACHED(vp) > 0 || 1524 ((ip->i_size > 0) || (VN_CACHED(vp) > 0 ||
@@ -2449,14 +2442,6 @@ xfs_remove(
2449 } 2442 }
2450 2443
2451 /* 2444 /*
2452 * Before we drop our extra reference to the inode, purge it
2453 * from the refcache if it is there. By waiting until afterwards
2454 * to do the IRELE, we ensure that we won't go inactive in the
2455 * xfs_refcache_purge_ip routine (although that would be OK).
2456 */
2457 xfs_refcache_purge_ip(ip);
2458
2459 /*
2460 * If we are using filestreams, kill the stream association. 2445 * If we are using filestreams, kill the stream association.
2461 * If the file is still open it may get a new one but that 2446 * If the file is still open it may get a new one but that
2462 * will get killed on last close in xfs_close() so we don't 2447 * will get killed on last close in xfs_close() so we don't
@@ -2495,14 +2480,6 @@ xfs_remove(
2495 cancel_flags |= XFS_TRANS_ABORT; 2480 cancel_flags |= XFS_TRANS_ABORT;
2496 xfs_trans_cancel(tp, cancel_flags); 2481 xfs_trans_cancel(tp, cancel_flags);
2497 2482
2498 /*
2499 * Before we drop our extra reference to the inode, purge it
2500 * from the refcache if it is there. By waiting until afterwards
2501 * to do the IRELE, we ensure that we won't go inactive in the
2502 * xfs_refcache_purge_ip routine (although that would be OK).
2503 */
2504 xfs_refcache_purge_ip(ip);
2505
2506 IRELE(ip); 2483 IRELE(ip);
2507 2484
2508 goto std_return; 2485 goto std_return;
@@ -3460,16 +3437,7 @@ xfs_rwunlock(
3460{ 3437{
3461 if (S_ISDIR(ip->i_d.di_mode)) 3438 if (S_ISDIR(ip->i_d.di_mode))
3462 return; 3439 return;
3463 if (locktype == VRWLOCK_WRITE) { 3440 if (locktype != VRWLOCK_WRITE) {
3464 /*
3465 * In the write case, we may have added a new entry to
3466 * the reference cache. This might store a pointer to
3467 * an inode to be released in this inode. If it is there,
3468 * clear the pointer and release the inode after unlocking
3469 * this one.
3470 */
3471 xfs_refcache_iunlock(ip, XFS_IOLOCK_EXCL);
3472 } else {
3473 ASSERT((locktype == VRWLOCK_READ) || 3441 ASSERT((locktype == VRWLOCK_READ) ||
3474 (locktype == VRWLOCK_WRITE_DIRECT)); 3442 (locktype == VRWLOCK_WRITE_DIRECT));
3475 xfs_iunlock(ip, XFS_IOLOCK_SHARED); 3443 xfs_iunlock(ip, XFS_IOLOCK_SHARED);