Btrfs: remove root_log_ctx from ctx list before btrfs_sync_log returns
authorChris Mason <clm@fb.com>
Tue, 6 Sep 2016 12:37:40 +0000 (05:37 -0700)
committerSasha Levin <alexander.levin@verizon.com>
Thu, 6 Oct 2016 02:40:20 +0000 (22:40 -0400)
commit52e5087ce97a09d5baba7cfe85def389e892d73f
treea6f5059d7d3096615f269d368cbdd3b1211aba59
parenta55325e134ecca559da21385d64fa9eef3e6cefe
Btrfs: remove root_log_ctx from ctx list before btrfs_sync_log returns

[ Upstream commit cbd60aa7cd17d81a434234268c55192862147439 ]

We use a btrfs_log_ctx structure to pass information into the
tree log commit, and get error values out.  It gets added to a per
log-transaction list which we walk when things go bad.

Commit d1433debe added an optimization to skip waiting for the log
commit, but didn't take root_log_ctx out of the list.  This
patch makes sure we remove things before exiting.

Signed-off-by: Chris Mason <clm@fb.com>
Fixes: d1433debe7f4346cf9fc0dafc71c3137d2a97bc4
cc: stable@vger.kernel.org # 3.15+
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
fs/btrfs/tree-log.c