diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2018-11-24 17:08:43 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2018-12-03 11:24:15 -0500 |
commit | 34a855cf2a1e94b2f3b6c1ba1e7ac37677761a90 (patch) | |
tree | 99cd77f0af8e53d44458ba2bc38af14fd0b9ea8b | |
parent | 61d86027372e267955bc82782a91643a76068051 (diff) |
genradix: genradix_for_each()
-rw-r--r-- | include/linux/generic-radix-tree.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/include/linux/generic-radix-tree.h b/include/linux/generic-radix-tree.h index 11d0b29ad259..7a2bc69ae12e 100644 --- a/include/linux/generic-radix-tree.h +++ b/include/linux/generic-radix-tree.h @@ -125,4 +125,12 @@ static inline void __genradix_iter_advance(struct genradix_iter *iter, #define genradix_iter_advance(_iter, _radix) \ __genradix_iter_advance(_iter, __genradix_obj_size(_radix)) +#define genradix_for_each_from(_radix, _iter, _p, _start) \ + for (_iter = genradix_iter_init(_radix, _start); \ + (_p = genradix_iter_peek(&_iter, _radix)) != NULL; \ + genradix_iter_advance(&_iter, _radix)) + +#define genradix_for_each(_radix, _iter, _p) \ + genradix_for_each_from(_radix, _iter, _p, 0) + #endif /* _LINUX_GENERIC_RADIX_TREE_H */ |