e9f05b4cfed38d0e57b0a705a7f480cfbe0c3247 |
|
18-Sep-2014 |
Lai Jiangshan <laijs@cn.fujitsu.com> |
drbd: use RB_DECLARE_CALLBACKS() to define augment callbacks The original code are the same as RB_DECLARE_CALLBACKS(). CC: Michel Lespinasse <walken@google.com> Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com> Signed-off-by: Andreas Gruenbacher <agruen@linbit.com> Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Jens Axboe <axboe@fb.com>
|
82cfb90bc99d7b7e0ec62d0505b9d4f06805d5db |
|
18-Sep-2014 |
Lai Jiangshan <laijs@cn.fujitsu.com> |
drbd: compute the end before rb_insert_augmented() Commit 98683650 "Merge branch 'drbd-8.4_ed6' into for-3.8-drivers-drbd-8.4_ed6" switches to the new augment API, but the new API requires that the tree is augmented before rb_insert_augmented() is called, which is missing. So we add the augment-code to drbd_insert_interval() when it travels the tree up to down before rb_insert_augmented(). See the example in include/linux/interval_tree_generic.h or Documentation/rbtree.txt. drbd_insert_interval() may cancel the insertion when traveling, in this case, the just added augment-code does nothing before cancel since the @this node is already in the subtrees in this case. CC: Michel Lespinasse <walken@google.com> CC: stable@kernel.org # v3.10+ Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com> Signed-off-by: Andreas Gruenbacher <agruen@linbit.com> Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Jens Axboe <axboe@fb.com>
|
d0e22a260c5142171c730436664febb045b9f0f0 |
|
17-Feb-2011 |
Andreas Gruenbacher <agruen@linbit.com> |
drbd: Iterate over all overlapping intervals in a tree Add a macro and helper function for doing that. Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
|
70b1987663851f4431a2f43d8ccefb7b6ac73331 |
|
04-Feb-2011 |
Andreas Gruenbacher <agruen@linbit.com> |
drbd: Improve the drbd_find_overlap() documentation Describe how to reach any further overlapping intervals from the first overlap found. Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
|
3e05146f0a9f28ef5959403eabf3239869476315 |
|
27-Jan-2011 |
Andreas Gruenbacher <agruen@linbit.com> |
drbd: Remove redundant check from drbd_contains_interval() Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
|
6618bf16384463c0b97a5f5f1f0ce5276f5865fd |
|
26-Jan-2011 |
Andreas Gruenbacher <agruen@linbit.com> |
drbd: Interval tree bugfix Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
|
0939b0e5cdeeafa0adf0150edd350092e47acc49 |
|
03-Jan-2011 |
Andreas Gruenbacher <agruen@linbit.com> |
drbd: Add interval tree data structure Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
|