diff options
author | Christoph Hellwig <hch@infradead.org> | 2011-05-20 09:45:32 -0400 |
---|---|---|
committer | Alex Elder <aelder@sgi.com> | 2011-05-24 12:17:13 -0400 |
commit | e84661aa84e2e003738563f65155d4f12dc474e7 (patch) | |
tree | 9f9b6d2fac2048c5fb8c2728bcf2930435890d4f /fs/xfs/xfs_alloc.h | |
parent | bf59170a66bc3eaf3ee513aa6ce9774aa2ab5188 (diff) |
xfs: add online discard support
Now that we have reliably tracking of deleted extents in a
transaction we can easily implement "online" discard support
which calls blkdev_issue_discard once a transaction commits.
The actual discard is a two stage operation as we first have
to mark the busy extent as not available for reuse before we
can start the actual discard. Note that we don't bother
supporting discard for the non-delaylog mode.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Alex Elder <aelder@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_alloc.h')
-rw-r--r-- | fs/xfs/xfs_alloc.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/xfs/xfs_alloc.h b/fs/xfs/xfs_alloc.h index 240ad288f2f9..06aa8217452b 100644 --- a/fs/xfs/xfs_alloc.h +++ b/fs/xfs/xfs_alloc.h | |||
@@ -140,7 +140,8 @@ xfs_alloc_busy_insert(struct xfs_trans *tp, xfs_agnumber_t agno, | |||
140 | xfs_agblock_t bno, xfs_extlen_t len); | 140 | xfs_agblock_t bno, xfs_extlen_t len); |
141 | 141 | ||
142 | void | 142 | void |
143 | xfs_alloc_busy_clear(struct xfs_mount *mp, struct list_head *list); | 143 | xfs_alloc_busy_clear(struct xfs_mount *mp, struct list_head *list, |
144 | bool do_discard); | ||
144 | 145 | ||
145 | int | 146 | int |
146 | xfs_alloc_busy_search(struct xfs_mount *mp, xfs_agnumber_t agno, | 147 | xfs_alloc_busy_search(struct xfs_mount *mp, xfs_agnumber_t agno, |