summaryrefslogtreecommitdiffstats
path: root/fs/ocfs2/alloc.h
diff options
context:
space:
mode:
authorTao Ma <tao.ma@oracle.com>2009-08-18 11:24:49 +0800
committerJoel Becker <joel.becker@oracle.com>2009-09-22 20:09:33 -0700
commit1823cb0b9fe5e6d48017ee3f92428f69c0235d87 (patch)
tree461e5d6cc255c400acac69dd968fae935a9c073f /fs/ocfs2/alloc.h
parente73a819db9c2d6c4065b7cab7374709b6939e8f1 (diff)
downloadlinux-1823cb0b9fe5e6d48017ee3f92428f69c0235d87.tar.gz
linux-1823cb0b9fe5e6d48017ee3f92428f69c0235d87.tar.bz2
linux-1823cb0b9fe5e6d48017ee3f92428f69c0235d87.zip
ocfs2: Add support of decrementing refcount for delete.
Given a physical cpos and length, decrement the refcount in the tree. If the refcount for any portion of the extent goes to zero, that portion is queued for freeing. Signed-off-by: Tao Ma <tao.ma@oracle.com>
Diffstat (limited to 'fs/ocfs2/alloc.h')
-rw-r--r--fs/ocfs2/alloc.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/ocfs2/alloc.h b/fs/ocfs2/alloc.h
index 3f4348923b73..0610ba148ea0 100644
--- a/fs/ocfs2/alloc.h
+++ b/fs/ocfs2/alloc.h
@@ -202,6 +202,9 @@ static inline void ocfs2_init_dealloc_ctxt(struct ocfs2_cached_dealloc_ctxt *c)
}
int ocfs2_cache_cluster_dealloc(struct ocfs2_cached_dealloc_ctxt *ctxt,
u64 blkno, unsigned int bit);
+int ocfs2_cache_block_dealloc(struct ocfs2_cached_dealloc_ctxt *ctxt,
+ int type, int slot, u64 blkno,
+ unsigned int bit);
static inline int ocfs2_dealloc_has_cluster(struct ocfs2_cached_dealloc_ctxt *c)
{
return c->c_global_allocator != NULL;