From: Hugh Dickins The reservations tree is an rb_tree not a list, so it's less confusing to use rb_entry() than list_entry() - though they're both just container_of(). Signed-off-by: Hugh Dickins Cc: Martin Bligh Acked-by: Mingming Cao Signed-off-by: Andrew Morton --- fs/ext2/balloc.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff -puN fs/ext2/balloc.c~ext2-balloc-say-rb_entry-not-list_entry fs/ext2/balloc.c --- a/fs/ext2/balloc.c~ext2-balloc-say-rb_entry-not-list_entry +++ a/fs/ext2/balloc.c @@ -156,7 +156,7 @@ restart: printk("Block Allocation Reservation Windows Map (%s):\n", fn); while (n) { - rsv = list_entry(n, struct ext2_reserve_window_node, rsv_node); + rsv = rb_entry(n, struct ext2_reserve_window_node, rsv_node); if (verbose) printk("reservation window 0x%p " "start: %lu, end: %lu\n", @@ -753,7 +753,7 @@ static int find_next_reservable_window( prev = rsv; next = rb_next(&rsv->rsv_node); - rsv = list_entry(next,struct ext2_reserve_window_node,rsv_node); + rsv = rb_entry(next,struct ext2_reserve_window_node,rsv_node); /* * Reached the last reservation, we can just append to the @@ -995,7 +995,7 @@ static void try_to_extend_reservation(st if (!next) my_rsv->rsv_end += size; else { - next_rsv = list_entry(next, struct ext2_reserve_window_node, rsv_node); + next_rsv = rb_entry(next, struct ext2_reserve_window_node, rsv_node); if ((next_rsv->rsv_start - my_rsv->rsv_end - 1) >= size) my_rsv->rsv_end += size; _