linux/drivers/md/bcache
Kent Overstreet c0f04d88e4 bcache: Fix flushes in writeback mode
In writeback mode, when we get a cache flush we need to make sure we
issue a flush to the backing device.

The code for sending down an extra flush was wrong - by cloning the bio
we were probably getting flags that didn't make sense for a bare flush,
and also the old code was firing for FUA bios, for which we don't need
to send a flush to the backing device.

This was causing data corruption somehow - the mechanism was never
determined, but this patch fixes it for the users that were seeing it.

Signed-off-by: Kent Overstreet <kmo@daterainc.com>
Cc: linux-stable <stable@vger.kernel.org> # >= v3.10
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-09-24 14:41:43 -07:00
..
Kconfig bcache: drop "select CLOSURES" 2013-05-15 00:42:51 -07:00
Makefile
alloc.c bcache: Allocation kthread fixes 2013-07-12 00:22:49 -07:00
bcache.h bcache: Fix a writeback performance regression 2013-09-24 14:41:43 -07:00
bset.c bcache: Fix for handling overlapping extents when reading in a btree node 2013-09-24 14:41:43 -07:00
bset.h bcache: Fix/revamp tracepoints 2013-06-26 17:09:15 -07:00
btree.c bcache: Fix a shrinker deadlock 2013-09-24 14:41:43 -07:00
btree.h bcache: Delete fuzz tester 2013-07-01 14:43:48 -07:00
closure.c bcache: Fix a dumb race 2013-07-12 00:22:33 -07:00
closure.h bcache: Build fixes from test robot 2013-03-25 13:06:13 -06:00
debug.c bcache: Use standard utility code 2013-07-01 14:43:53 -07:00
debug.h bcache: Rip out pkey()/pbtree() 2013-06-26 17:09:15 -07:00
io.c bcache: Use standard utility code 2013-07-01 14:43:53 -07:00
journal.c bcache: Fix a flush/fua performance bug 2013-09-24 14:41:43 -07:00
journal.h
movinggc.c bcache: Use standard utility code 2013-07-01 14:43:53 -07:00
request.c bcache: Fix flushes in writeback mode 2013-09-24 14:41:43 -07:00
request.h bcache: Fix/revamp tracepoints 2013-06-26 17:09:15 -07:00
stats.c bcache: Fix error handling in init code 2013-05-15 00:48:14 -07:00
stats.h
super.c bcache: Allocation kthread fixes 2013-07-12 00:22:49 -07:00
sysfs.c bcache: Strip endline when writing the label through sysfs 2013-09-24 14:41:43 -07:00
sysfs.h bcache: Don't export utility code, prefix with bch_ 2013-03-28 12:50:55 -06:00
trace.c bcache: Rip out pkey()/pbtree() 2013-06-26 17:09:15 -07:00
util.c bcache: Fix a writeback performance regression 2013-09-24 14:41:43 -07:00
util.h bcache: Fix a writeback performance regression 2013-09-24 14:41:43 -07:00
writeback.c bcache: Fix a dumb CPU spinning bug in writeback 2013-09-24 14:41:43 -07:00
writeback.h bcache: Write out full stripes 2013-06-26 21:58:04 -07:00