From: Kent Overstreet Date: Tue, 18 Mar 2014 01:22:34 +0000 (-0700) Subject: bcache: Fix a race when freeing btree nodes X-Git-Tag: v3.15-rc1~134^2^2~6 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=05335cff9f01555b769ac97b7bacc472b7ed047a;p=pandora-kernel.git bcache: Fix a race when freeing btree nodes This isn't a bulletproof fix; btree_node_free() -> bch_bucket_free() puts the bucket on the unused freelist, where it can be reused right away without any ordering requirements. It would be better to wait on at least a journal write to go down before reusing the bucket. bch_btree_set_root() does this, and inserting into non leaf nodes is completely synchronous so we should be ok, but future patches are just going to get rid of the unused freelist - it was needed in the past for various reasons but shouldn't be anymore. Signed-off-by: Kent Overstreet --- Reading git-diff-tree failed