| To: | stable@xxxxxxxxxxxxxxx |
|---|---|
| Subject: | [3.0-stable PATCH 30/36] xfs: fix allocbt cursor leak in xfs_alloc_ag_vextent_near |
| From: | Mark Tinguely <tinguely@xxxxxxx> |
| Date: | Mon, 03 Dec 2012 17:42:38 -0600 |
| Cc: | xfs@xxxxxxxxxxx |
| References: | <20121203144208.143464631@xxxxxxx> |
| User-agent: | quilt/0.51-1 |
From: Dave Chinner <dchinner@xxxxxxxxxx>
Upstream commit: 76d095388b040229ea1aad7dea45be0cfa20f589
When we fail to find an matching extent near the requested extent
specification during a left-right distance search in
xfs_alloc_ag_vextent_near, we fail to free the original cursor that
we used to look up the XFS_BTNUM_CNT tree and hence leak it.
Reported-by: Chris J Arges <chris.j.arges@xxxxxxxxxxxxx>
Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
Reviewed-by: Christoph Hellwig <hch@xxxxxx>
Signed-off-by: Ben Myers <bpm@xxxxxxx>
---
fs/xfs/xfs_alloc.c | 1 +
1 file changed, 1 insertion(+)
Index: b/fs/xfs/xfs_alloc.c
===================================================================
--- a/fs/xfs/xfs_alloc.c
+++ b/fs/xfs/xfs_alloc.c
@@ -1086,6 +1086,7 @@ restart:
goto restart;
}
+ xfs_btree_del_cursor(cnt_cur, XFS_BTREE_NOERROR);
trace_xfs_alloc_size_neither(args);
args->agbno = NULLAGBLOCK;
return 0;
|
| Previous by Date: | [3.0-stable PATCH 06/36] xfs: fallback to vmalloc for large buffers in xfs_attrmulti_attr_get, Mark Tinguely |
|---|---|
| Next by Date: | [3.0-stable PATCH 05/36] xfs: only take the ILOCK in xfs_reclaim_inode(), Mark Tinguely |
| Previous by Thread: | [3.0-stable PATCH 06/36] xfs: fallback to vmalloc for large buffers in xfs_attrmulti_attr_get, Mark Tinguely |
| Next by Thread: | Re: [3.0-stable PATCH 30/36] xfs: fix allocbt cursor leak in xfs_alloc_ag_vextent_near, Dave Chinner |
| Indexes: | [Date] [Thread] [Top] [All Lists] |