diff options
author | Christoph Hellwig <hch@infradead.org> | 2011-05-20 13:45:32 +0000 |
---|---|---|
committer | Alex Elder <aelder@sgi.com> | 2011-05-24 11:17:13 -0500 |
commit | e84661aa84e2e003738563f65155d4f12dc474e7 (patch) | |
tree | 9f9b6d2fac2048c5fb8c2728bcf2930435890d4f /fs/xfs/xfs_ag.h | |
parent | bf59170a66bc3eaf3ee513aa6ce9774aa2ab5188 (diff) | |
download | kernel_samsung_smdk4412-e84661aa84e2e003738563f65155d4f12dc474e7.tar.gz kernel_samsung_smdk4412-e84661aa84e2e003738563f65155d4f12dc474e7.tar.bz2 kernel_samsung_smdk4412-e84661aa84e2e003738563f65155d4f12dc474e7.zip |
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_ag.h')
-rw-r--r-- | fs/xfs/xfs_ag.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/xfs/xfs_ag.h b/fs/xfs/xfs_ag.h index da0a561ffba..8d52ba4c87e 100644 --- a/fs/xfs/xfs_ag.h +++ b/fs/xfs/xfs_ag.h @@ -187,6 +187,8 @@ struct xfs_busy_extent { xfs_agnumber_t agno; xfs_agblock_t bno; xfs_extlen_t length; + unsigned int flags; +#define XFS_ALLOC_BUSY_DISCARDED 0x01 /* undergoing a discard op. */ }; /* |