xfs: Reference count per-ag structures
Reference count the per-ag structures to ensure that we keep get/put pairs balanced. Assert that the reference counts are zero at unmount time to catch leaks. In future, reference counts will enable us to safely remove perag structures by allowing us to detect when they are no longer in use. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
This commit is contained in:
parent
1c1c6ebcf5
commit
aed3bb90ab
3 changed files with 12 additions and 4 deletions
|
@ -215,6 +215,7 @@ xfs_free_perag(
|
|||
for (agno = 0; agno < mp->m_sb.sb_agcount; agno++) {
|
||||
spin_lock(&mp->m_perag_lock);
|
||||
pag = radix_tree_delete(&mp->m_perag_tree, agno);
|
||||
ASSERT(atomic_read(&pag->pag_ref) == 0);
|
||||
spin_unlock(&mp->m_perag_lock);
|
||||
ASSERT(pag);
|
||||
kmem_free(pag->pagb_list);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue