diff options
author | 2006-02-07 10:43:36 +1100 | |
---|---|---|
committer | 2006-02-07 10:43:36 +1100 | |
commit | 6cb6524d90b6e5497e79a1474bdb2f26755d1c02 (patch) | |
tree | fd475ac8f57a6bd39c976056324d1bc79d11b4c9 /fs/xfs/linux-2.6/xfs_buf.c | |
parent | [PATCH] sem2mutex: drivers/macintosh/windfarm_core.c (diff) | |
parent | [PATCH] USB: Fix GPL markings on usb core functions. (diff) | |
download | linux-dev-6cb6524d90b6e5497e79a1474bdb2f26755d1c02.tar.xz linux-dev-6cb6524d90b6e5497e79a1474bdb2f26755d1c02.zip |
Merge ../linux-2.6
Diffstat (limited to 'fs/xfs/linux-2.6/xfs_buf.c')
-rw-r--r-- | fs/xfs/linux-2.6/xfs_buf.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/fs/xfs/linux-2.6/xfs_buf.c b/fs/xfs/linux-2.6/xfs_buf.c index e44b7c1a3a36..bfb4f2917bb6 100644 --- a/fs/xfs/linux-2.6/xfs_buf.c +++ b/fs/xfs/linux-2.6/xfs_buf.c @@ -822,6 +822,13 @@ xfs_buf_rele( XB_TRACE(bp, "rele", bp->b_relse); + if (unlikely(!hash)) { + ASSERT(!bp->b_relse); + if (atomic_dec_and_test(&bp->b_hold)) + xfs_buf_free(bp); + return; + } + if (atomic_dec_and_lock(&bp->b_hold, &hash->bh_lock)) { if (bp->b_relse) { atomic_inc(&bp->b_hold); @@ -1514,6 +1521,7 @@ xfs_mapping_buftarg( struct address_space *mapping; static struct address_space_operations mapping_aops = { .sync_page = block_sync_page, + .migratepage = fail_migrate_page, }; inode = new_inode(bdev->bd_inode->i_sb); |