mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-12 13:34:10 +08:00
btrfs: tests: add separate stub for find_lock_delalloc_range
The helper find_lock_delalloc_range is now conditionally built static, dpending on whether the self-tests are enabled or not. There's a macro that is supposed to hide the export, used only once. To discourage further use, drop it an add a public wrapper for the helper needed by tests. Reviewed-by: Omar Sandoval <osandov@fb.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
ecf160b424
commit
9c36396c2a
@ -41,12 +41,6 @@ extern struct kmem_cache *btrfs_path_cachep;
|
|||||||
extern struct kmem_cache *btrfs_free_space_cachep;
|
extern struct kmem_cache *btrfs_free_space_cachep;
|
||||||
struct btrfs_ordered_sum;
|
struct btrfs_ordered_sum;
|
||||||
|
|
||||||
#ifdef CONFIG_BTRFS_FS_RUN_SANITY_TESTS
|
|
||||||
#define STATIC noinline
|
|
||||||
#else
|
|
||||||
#define STATIC static noinline
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define BTRFS_MAGIC 0x4D5F53665248425FULL /* ascii _BHRfS_M, no null */
|
#define BTRFS_MAGIC 0x4D5F53665248425FULL /* ascii _BHRfS_M, no null */
|
||||||
|
|
||||||
#define BTRFS_MAX_MIRRORS 3
|
#define BTRFS_MAX_MIRRORS 3
|
||||||
|
@ -1563,7 +1563,7 @@ static noinline int lock_delalloc_pages(struct inode *inode,
|
|||||||
*
|
*
|
||||||
* 1 is returned if we find something, 0 if nothing was in the tree
|
* 1 is returned if we find something, 0 if nothing was in the tree
|
||||||
*/
|
*/
|
||||||
STATIC u64 find_lock_delalloc_range(struct inode *inode,
|
static noinline_for_stack u64 find_lock_delalloc_range(struct inode *inode,
|
||||||
struct extent_io_tree *tree,
|
struct extent_io_tree *tree,
|
||||||
struct page *locked_page, u64 *start,
|
struct page *locked_page, u64 *start,
|
||||||
u64 *end, u64 max_bytes)
|
u64 *end, u64 max_bytes)
|
||||||
@ -1643,6 +1643,17 @@ out_failed:
|
|||||||
return found;
|
return found;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_BTRFS_FS_RUN_SANITY_TESTS
|
||||||
|
u64 btrfs_find_lock_delalloc_range(struct inode *inode,
|
||||||
|
struct extent_io_tree *tree,
|
||||||
|
struct page *locked_page, u64 *start,
|
||||||
|
u64 *end, u64 max_bytes)
|
||||||
|
{
|
||||||
|
return find_lock_delalloc_range(inode, tree, locked_page, start, end,
|
||||||
|
max_bytes);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static int __process_pages_contig(struct address_space *mapping,
|
static int __process_pages_contig(struct address_space *mapping,
|
||||||
struct page *locked_page,
|
struct page *locked_page,
|
||||||
pgoff_t start_index, pgoff_t end_index,
|
pgoff_t start_index, pgoff_t end_index,
|
||||||
|
@ -546,7 +546,7 @@ int free_io_failure(struct extent_io_tree *failure_tree,
|
|||||||
struct extent_io_tree *io_tree,
|
struct extent_io_tree *io_tree,
|
||||||
struct io_failure_record *rec);
|
struct io_failure_record *rec);
|
||||||
#ifdef CONFIG_BTRFS_FS_RUN_SANITY_TESTS
|
#ifdef CONFIG_BTRFS_FS_RUN_SANITY_TESTS
|
||||||
noinline u64 find_lock_delalloc_range(struct inode *inode,
|
u64 btrfs_find_lock_delalloc_range(struct inode *inode,
|
||||||
struct extent_io_tree *tree,
|
struct extent_io_tree *tree,
|
||||||
struct page *locked_page, u64 *start,
|
struct page *locked_page, u64 *start,
|
||||||
u64 *end, u64 max_bytes);
|
u64 *end, u64 max_bytes);
|
||||||
|
@ -106,7 +106,7 @@ static int test_find_delalloc(u32 sectorsize)
|
|||||||
set_extent_delalloc(&tmp, 0, sectorsize - 1, 0, NULL);
|
set_extent_delalloc(&tmp, 0, sectorsize - 1, 0, NULL);
|
||||||
start = 0;
|
start = 0;
|
||||||
end = 0;
|
end = 0;
|
||||||
found = find_lock_delalloc_range(inode, &tmp, locked_page, &start,
|
found = btrfs_find_lock_delalloc_range(inode, &tmp, locked_page, &start,
|
||||||
&end, max_bytes);
|
&end, max_bytes);
|
||||||
if (!found) {
|
if (!found) {
|
||||||
test_err("should have found at least one delalloc");
|
test_err("should have found at least one delalloc");
|
||||||
@ -137,7 +137,7 @@ static int test_find_delalloc(u32 sectorsize)
|
|||||||
set_extent_delalloc(&tmp, sectorsize, max_bytes - 1, 0, NULL);
|
set_extent_delalloc(&tmp, sectorsize, max_bytes - 1, 0, NULL);
|
||||||
start = test_start;
|
start = test_start;
|
||||||
end = 0;
|
end = 0;
|
||||||
found = find_lock_delalloc_range(inode, &tmp, locked_page, &start,
|
found = btrfs_find_lock_delalloc_range(inode, &tmp, locked_page, &start,
|
||||||
&end, max_bytes);
|
&end, max_bytes);
|
||||||
if (!found) {
|
if (!found) {
|
||||||
test_err("couldn't find delalloc in our range");
|
test_err("couldn't find delalloc in our range");
|
||||||
@ -171,7 +171,7 @@ static int test_find_delalloc(u32 sectorsize)
|
|||||||
}
|
}
|
||||||
start = test_start;
|
start = test_start;
|
||||||
end = 0;
|
end = 0;
|
||||||
found = find_lock_delalloc_range(inode, &tmp, locked_page, &start,
|
found = btrfs_find_lock_delalloc_range(inode, &tmp, locked_page, &start,
|
||||||
&end, max_bytes);
|
&end, max_bytes);
|
||||||
if (found) {
|
if (found) {
|
||||||
test_err("found range when we shouldn't have");
|
test_err("found range when we shouldn't have");
|
||||||
@ -192,7 +192,7 @@ static int test_find_delalloc(u32 sectorsize)
|
|||||||
set_extent_delalloc(&tmp, max_bytes, total_dirty - 1, 0, NULL);
|
set_extent_delalloc(&tmp, max_bytes, total_dirty - 1, 0, NULL);
|
||||||
start = test_start;
|
start = test_start;
|
||||||
end = 0;
|
end = 0;
|
||||||
found = find_lock_delalloc_range(inode, &tmp, locked_page, &start,
|
found = btrfs_find_lock_delalloc_range(inode, &tmp, locked_page, &start,
|
||||||
&end, max_bytes);
|
&end, max_bytes);
|
||||||
if (!found) {
|
if (!found) {
|
||||||
test_err("didn't find our range");
|
test_err("didn't find our range");
|
||||||
@ -233,7 +233,7 @@ static int test_find_delalloc(u32 sectorsize)
|
|||||||
* this changes at any point in the future we will need to fix this
|
* this changes at any point in the future we will need to fix this
|
||||||
* tests expected behavior.
|
* tests expected behavior.
|
||||||
*/
|
*/
|
||||||
found = find_lock_delalloc_range(inode, &tmp, locked_page, &start,
|
found = btrfs_find_lock_delalloc_range(inode, &tmp, locked_page, &start,
|
||||||
&end, max_bytes);
|
&end, max_bytes);
|
||||||
if (!found) {
|
if (!found) {
|
||||||
test_err("didn't find our range");
|
test_err("didn't find our range");
|
||||||
|
Loading…
Reference in New Issue
Block a user