aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTao Ma <tao.ma@oracle.com>2008-10-17 00:44:36 -0400
committerMark Fasheh <mfasheh@suse.com>2008-11-10 12:51:46 -0500
commit63fd77573723841d5d44a79471258f1b261f4482 (patch)
tree59c73a921dec82b65bcd105eea3f5f228b3d058b
parent54f443f4e7265a1333886dbace31cb6eb1991c72 (diff)
ocfs2: Remove unused ocfs2_restore_xattr_block().
Since now ocfs2 supports empty xattr buckets, we will never remove the xattr index tree even if all the xattrs are removed, so this function will never be called. So remove it. Signed-off-by: Tao Ma <tao.ma@oracle.com> Signed-off-by: Joel Becker <joel.becker@oracle.com> Signed-off-by: Mark Fasheh <mfasheh@suse.com>
-rw-r--r--fs/ocfs2/xattr.c48
1 files changed, 0 insertions, 48 deletions
diff --git a/fs/ocfs2/xattr.c b/fs/ocfs2/xattr.c
index 74d1faba23bb..789fb70462c9 100644
--- a/fs/ocfs2/xattr.c
+++ b/fs/ocfs2/xattr.c
@@ -1792,52 +1792,6 @@ cleanup:
1792} 1792}
1793 1793
1794/* 1794/*
1795 * When all the xattrs are deleted from index btree, the ocfs2_xattr_tree
1796 * will be erased and ocfs2_xattr_block will have its ocfs2_xattr_header
1797 * re-initialized.
1798 */
1799static int ocfs2_restore_xattr_block(struct inode *inode,
1800 struct ocfs2_xattr_search *xs)
1801{
1802 int ret;
1803 handle_t *handle;
1804 struct ocfs2_super *osb = OCFS2_SB(inode->i_sb);
1805 struct ocfs2_xattr_block *xb =
1806 (struct ocfs2_xattr_block *)xs->xattr_bh->b_data;
1807 struct ocfs2_extent_list *el = &xb->xb_attrs.xb_root.xt_list;
1808 u16 xb_flags = le16_to_cpu(xb->xb_flags);
1809
1810 BUG_ON(!(xb_flags & OCFS2_XATTR_INDEXED) ||
1811 le16_to_cpu(el->l_next_free_rec) != 0);
1812
1813 handle = ocfs2_start_trans(osb, OCFS2_XATTR_BLOCK_UPDATE_CREDITS);
1814 if (IS_ERR(handle)) {
1815 ret = PTR_ERR(handle);
1816 handle = NULL;
1817 goto out;
1818 }
1819
1820 ret = ocfs2_journal_access(handle, inode, xs->xattr_bh,
1821 OCFS2_JOURNAL_ACCESS_WRITE);
1822 if (ret < 0) {
1823 mlog_errno(ret);
1824 goto out_commit;
1825 }
1826
1827 memset(&xb->xb_attrs, 0, inode->i_sb->s_blocksize -
1828 offsetof(struct ocfs2_xattr_block, xb_attrs));
1829
1830 xb->xb_flags = cpu_to_le16(xb_flags & ~OCFS2_XATTR_INDEXED);
1831
1832 ocfs2_journal_dirty(handle, xs->xattr_bh);
1833
1834out_commit:
1835 ocfs2_commit_trans(osb, handle);
1836out:
1837 return ret;
1838}
1839
1840/*
1841 * ocfs2_xattr_block_set() 1795 * ocfs2_xattr_block_set()
1842 * 1796 *
1843 * Set, replace or remove an extended attribute into external block. 1797 * Set, replace or remove an extended attribute into external block.
@@ -1947,8 +1901,6 @@ out:
1947 } 1901 }
1948 1902
1949 ret = ocfs2_xattr_set_entry_index_block(inode, xi, xs); 1903 ret = ocfs2_xattr_set_entry_index_block(inode, xi, xs);
1950 if (!ret && xblk->xb_attrs.xb_root.xt_list.l_next_free_rec == 0)
1951 ret = ocfs2_restore_xattr_block(inode, xs);
1952 1904
1953end: 1905end:
1954 1906