Browse Source

ceph: fix crush recursion

There was a longstanding problem with recursion through intervening
bucket types on complex hierarchies.

Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil 15 years ago
parent
commit
55bda7aacd
1 changed files with 1 additions and 0 deletions
  1. 1 0
      fs/ceph/crush/mapper.c

+ 1 - 0
fs/ceph/crush/mapper.c

@@ -366,6 +366,7 @@ static int crush_choose(struct crush_map *map,
 					BUG_ON(item >= 0 ||
 					       (-1-item) >= map->max_buckets);
 					in = map->buckets[-1-item];
+					retry_bucket = 1;
 					continue;
 				}