diff --git a/drivers/md/bcache/journal.c b/drivers/md/bcache/journal.c
index 18f1b523962042d07e3c27fb6bf2e917a44279b9..10748c626a1dd8835f3c86044b488830a19d348c 100644
--- a/drivers/md/bcache/journal.c
+++ b/drivers/md/bcache/journal.c
@@ -828,6 +828,7 @@ void bch_journal_free(struct cache_set *c)
 	free_pages((unsigned long) c->journal.w[1].data, JSET_BITS);
 	free_pages((unsigned long) c->journal.w[0].data, JSET_BITS);
 	free_fifo(&c->journal.pin);
+	free_heap(&c->flush_btree);
 }
 
 int bch_journal_alloc(struct cache_set *c)