diff options
author | Nicholas Swenson <nks@daterainc.com> | 2013-11-01 03:25:18 +0100 |
---|---|---|
committer | Kent Overstreet <kmo@daterainc.com> | 2013-12-16 23:22:57 +0100 |
commit | bee63f40cb5f5e8ab2abfbc85acde99cc0acd4b5 (patch) | |
tree | 200af9c17b71b40af0b1bf44320e2030bdbdfaf5 | |
parent | bcache: Fix heap_peek() macro (diff) | |
download | linux-bee63f40cb5f5e8ab2abfbc85acde99cc0acd4b5.tar.xz linux-bee63f40cb5f5e8ab2abfbc85acde99cc0acd4b5.zip |
bcache: fix for gc crashing when no sectors are used
Signed-off-by: Nicholas Swenson <nks@daterainc.com>
Signed-off-by: Kent Overstreet <kmo@daterainc.com>
-rw-r--r-- | drivers/md/bcache/movinggc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/md/bcache/movinggc.c b/drivers/md/bcache/movinggc.c index 7c1275e66025..46c952379fab 100644 --- a/drivers/md/bcache/movinggc.c +++ b/drivers/md/bcache/movinggc.c @@ -184,7 +184,8 @@ static bool bucket_cmp(struct bucket *l, struct bucket *r) static unsigned bucket_heap_top(struct cache *ca) { - return GC_SECTORS_USED(heap_peek(&ca->heap)); + struct bucket *b; + return (b = heap_peek(&ca->heap)) ? GC_SECTORS_USED(b) : 0; } void bch_moving_gc(struct cache_set *c) |