|
@@ -322,21 +322,21 @@ static void merge_state(struct extent_io_tree *tree,
|
|
|
}
|
|
|
|
|
|
static void set_state_cb(struct extent_io_tree *tree,
|
|
|
- struct extent_state *state, int *bits)
|
|
|
+ struct extent_state *state, unsigned long *bits)
|
|
|
{
|
|
|
if (tree->ops && tree->ops->set_bit_hook)
|
|
|
tree->ops->set_bit_hook(tree->mapping->host, state, bits);
|
|
|
}
|
|
|
|
|
|
static void clear_state_cb(struct extent_io_tree *tree,
|
|
|
- struct extent_state *state, int *bits)
|
|
|
+ struct extent_state *state, unsigned long *bits)
|
|
|
{
|
|
|
if (tree->ops && tree->ops->clear_bit_hook)
|
|
|
tree->ops->clear_bit_hook(tree->mapping->host, state, bits);
|
|
|
}
|
|
|
|
|
|
static void set_state_bits(struct extent_io_tree *tree,
|
|
|
- struct extent_state *state, int *bits);
|
|
|
+ struct extent_state *state, unsigned long *bits);
|
|
|
|
|
|
/*
|
|
|
* insert an extent_state struct into the tree. 'bits' are set on the
|
|
@@ -350,7 +350,7 @@ static void set_state_bits(struct extent_io_tree *tree,
|
|
|
*/
|
|
|
static int insert_state(struct extent_io_tree *tree,
|
|
|
struct extent_state *state, u64 start, u64 end,
|
|
|
- int *bits)
|
|
|
+ unsigned long *bits)
|
|
|
{
|
|
|
struct rb_node *node;
|
|
|
|
|
@@ -438,10 +438,10 @@ static struct extent_state *next_state(struct extent_state *state)
|
|
|
*/
|
|
|
static struct extent_state *clear_state_bit(struct extent_io_tree *tree,
|
|
|
struct extent_state *state,
|
|
|
- int *bits, int wake)
|
|
|
+ unsigned long *bits, int wake)
|
|
|
{
|
|
|
struct extent_state *next;
|
|
|
- int bits_to_clear = *bits & ~EXTENT_CTLBITS;
|
|
|
+ unsigned long bits_to_clear = *bits & ~EXTENT_CTLBITS;
|
|
|
|
|
|
if ((bits_to_clear & EXTENT_DIRTY) && (state->state & EXTENT_DIRTY)) {
|
|
|
u64 range = state->end - state->start + 1;
|
|
@@ -497,7 +497,7 @@ static void extent_io_tree_panic(struct extent_io_tree *tree, int err)
|
|
|
* This takes the tree lock, and returns 0 on success and < 0 on error.
|
|
|
*/
|
|
|
int clear_extent_bit(struct extent_io_tree *tree, u64 start, u64 end,
|
|
|
- int bits, int wake, int delete,
|
|
|
+ unsigned long bits, int wake, int delete,
|
|
|
struct extent_state **cached_state,
|
|
|
gfp_t mask)
|
|
|
{
|
|
@@ -658,8 +658,8 @@ static void wait_on_state(struct extent_io_tree *tree,
|
|
|
* The range [start, end] is inclusive.
|
|
|
* The tree lock is taken by this function
|
|
|
*/
|
|
|
-static void wait_extent_bit(struct extent_io_tree *tree, u64 start,
|
|
|
- u64 end, int bits)
|
|
|
+static void wait_extent_bit(struct extent_io_tree *tree, u64 start, u64 end,
|
|
|
+ unsigned long bits)
|
|
|
{
|
|
|
struct extent_state *state;
|
|
|
struct rb_node *node;
|
|
@@ -700,9 +700,9 @@ out:
|
|
|
|
|
|
static void set_state_bits(struct extent_io_tree *tree,
|
|
|
struct extent_state *state,
|
|
|
- int *bits)
|
|
|
+ unsigned long *bits)
|
|
|
{
|
|
|
- int bits_to_set = *bits & ~EXTENT_CTLBITS;
|
|
|
+ unsigned long bits_to_set = *bits & ~EXTENT_CTLBITS;
|
|
|
|
|
|
set_state_cb(tree, state, bits);
|
|
|
if ((bits_to_set & EXTENT_DIRTY) && !(state->state & EXTENT_DIRTY)) {
|
|
@@ -745,8 +745,9 @@ static void uncache_state(struct extent_state **cached_ptr)
|
|
|
|
|
|
static int __must_check
|
|
|
__set_extent_bit(struct extent_io_tree *tree, u64 start, u64 end,
|
|
|
- int bits, int exclusive_bits, u64 *failed_start,
|
|
|
- struct extent_state **cached_state, gfp_t mask)
|
|
|
+ unsigned long bits, unsigned long exclusive_bits,
|
|
|
+ u64 *failed_start, struct extent_state **cached_state,
|
|
|
+ gfp_t mask)
|
|
|
{
|
|
|
struct extent_state *state;
|
|
|
struct extent_state *prealloc = NULL;
|
|
@@ -938,9 +939,9 @@ search_again:
|
|
|
goto again;
|
|
|
}
|
|
|
|
|
|
-int set_extent_bit(struct extent_io_tree *tree, u64 start, u64 end, int bits,
|
|
|
- u64 *failed_start, struct extent_state **cached_state,
|
|
|
- gfp_t mask)
|
|
|
+int set_extent_bit(struct extent_io_tree *tree, u64 start, u64 end,
|
|
|
+ unsigned long bits, u64 * failed_start,
|
|
|
+ struct extent_state **cached_state, gfp_t mask)
|
|
|
{
|
|
|
return __set_extent_bit(tree, start, end, bits, 0, failed_start,
|
|
|
cached_state, mask);
|
|
@@ -965,7 +966,7 @@ int set_extent_bit(struct extent_io_tree *tree, u64 start, u64 end, int bits,
|
|
|
* boundary bits like LOCK.
|
|
|
*/
|
|
|
int convert_extent_bit(struct extent_io_tree *tree, u64 start, u64 end,
|
|
|
- int bits, int clear_bits,
|
|
|
+ unsigned long bits, unsigned long clear_bits,
|
|
|
struct extent_state **cached_state, gfp_t mask)
|
|
|
{
|
|
|
struct extent_state *state;
|
|
@@ -1158,14 +1159,14 @@ int set_extent_dirty(struct extent_io_tree *tree, u64 start, u64 end,
|
|
|
}
|
|
|
|
|
|
int set_extent_bits(struct extent_io_tree *tree, u64 start, u64 end,
|
|
|
- int bits, gfp_t mask)
|
|
|
+ unsigned long bits, gfp_t mask)
|
|
|
{
|
|
|
return set_extent_bit(tree, start, end, bits, NULL,
|
|
|
NULL, mask);
|
|
|
}
|
|
|
|
|
|
int clear_extent_bits(struct extent_io_tree *tree, u64 start, u64 end,
|
|
|
- int bits, gfp_t mask)
|
|
|
+ unsigned long bits, gfp_t mask)
|
|
|
{
|
|
|
return clear_extent_bit(tree, start, end, bits, 0, 0, NULL, mask);
|
|
|
}
|
|
@@ -1220,7 +1221,7 @@ int clear_extent_uptodate(struct extent_io_tree *tree, u64 start, u64 end,
|
|
|
* us if waiting is desired.
|
|
|
*/
|
|
|
int lock_extent_bits(struct extent_io_tree *tree, u64 start, u64 end,
|
|
|
- int bits, struct extent_state **cached_state)
|
|
|
+ unsigned long bits, struct extent_state **cached_state)
|
|
|
{
|
|
|
int err;
|
|
|
u64 failed_start;
|
|
@@ -1330,7 +1331,7 @@ static int set_range_writeback(struct extent_io_tree *tree, u64 start, u64 end)
|
|
|
*/
|
|
|
static struct extent_state *
|
|
|
find_first_extent_bit_state(struct extent_io_tree *tree,
|
|
|
- u64 start, int bits)
|
|
|
+ u64 start, unsigned long bits)
|
|
|
{
|
|
|
struct rb_node *node;
|
|
|
struct extent_state *state;
|
|
@@ -1364,7 +1365,7 @@ out:
|
|
|
* If nothing was found, 1 is returned. If found something, return 0.
|
|
|
*/
|
|
|
int find_first_extent_bit(struct extent_io_tree *tree, u64 start,
|
|
|
- u64 *start_ret, u64 *end_ret, int bits,
|
|
|
+ u64 *start_ret, u64 *end_ret, unsigned long bits,
|
|
|
struct extent_state **cached_state)
|
|
|
{
|
|
|
struct extent_state *state;
|
|
@@ -1654,7 +1655,7 @@ int extent_clear_unlock_delalloc(struct inode *inode,
|
|
|
unsigned long end_index = end >> PAGE_CACHE_SHIFT;
|
|
|
unsigned long nr_pages = end_index - index + 1;
|
|
|
int i;
|
|
|
- int clear_bits = 0;
|
|
|
+ unsigned long clear_bits = 0;
|
|
|
|
|
|
if (op & EXTENT_CLEAR_UNLOCK)
|
|
|
clear_bits |= EXTENT_LOCKED;
|
|
@@ -1885,7 +1886,7 @@ out:
|
|
|
* range is found set.
|
|
|
*/
|
|
|
int test_range_bit(struct extent_io_tree *tree, u64 start, u64 end,
|
|
|
- int bits, int filled, struct extent_state *cached)
|
|
|
+ unsigned long bits, int filled, struct extent_state *cached)
|
|
|
{
|
|
|
struct extent_state *state = NULL;
|
|
|
struct rb_node *node;
|