aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/radix-tree.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/radix-tree.h')
-rw-r--r--include/linux/radix-tree.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/include/linux/radix-tree.h b/include/linux/radix-tree.h
index 00b17c526c1f..f54be7082207 100644
--- a/include/linux/radix-tree.h
+++ b/include/linux/radix-tree.h
@@ -400,7 +400,7 @@ void **radix_tree_iter_retry(struct radix_tree_iter *iter)
400 * @iter: pointer to radix tree iterator 400 * @iter: pointer to radix tree iterator
401 * Returns: current chunk size 401 * Returns: current chunk size
402 */ 402 */
403static __always_inline unsigned 403static __always_inline long
404radix_tree_chunk_size(struct radix_tree_iter *iter) 404radix_tree_chunk_size(struct radix_tree_iter *iter)
405{ 405{
406 return iter->next_index - iter->index; 406 return iter->next_index - iter->index;
@@ -434,9 +434,9 @@ radix_tree_next_slot(void **slot, struct radix_tree_iter *iter, unsigned flags)
434 return slot + offset + 1; 434 return slot + offset + 1;
435 } 435 }
436 } else { 436 } else {
437 unsigned size = radix_tree_chunk_size(iter) - 1; 437 long size = radix_tree_chunk_size(iter);
438 438
439 while (size--) { 439 while (--size > 0) {
440 slot++; 440 slot++;
441 iter->index++; 441 iter->index++;
442 if (likely(*slot)) 442 if (likely(*slot))