linux-stable/block
Darrick J. Wong ffecfd1a72 block: optionally snapshot page contents to provide stable pages during write
This provides a band-aid to provide stable page writes on jbd without
needing to backport the fixed locking and page writeback bit handling
schemes of jbd2.  The band-aid works by using bounce buffers to snapshot
page contents instead of waiting.

For those wondering about the ext3 bandage -- fixing the jbd locking
(which was done as part of ext4dev years ago) is a lot of surgery, and
setting PG_writeback on data pages when we actually hold the page lock
dropped ext3 performance by nearly an order of magnitude.  If we're
going to migrate iscsi and raid to use stable page writes, the
complaints about high latency will likely return.  We might as well
centralize their page snapshotting thing to one place.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Tested-by: Andy Lutomirski <luto@amacapital.net>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Artem Bityutskiy <dedekind1@gmail.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Cc: Joel Becker <jlbec@evilplan.org>
Cc: Mark Fasheh <mfasheh@suse.com>
Cc: Steven Whitehouse <swhiteho@redhat.com>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: Eric Van Hensbergen <ericvh@gmail.com>
Cc: Ron Minnich <rminnich@sandia.gov>
Cc: Latchesar Ionkov <lucho@ionkov.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-02-21 17:22:20 -08:00
..
partitions Merge branch 'for-3.8/drivers' of git://git.kernel.dk/linux-block 2012-12-17 13:39:11 -08:00
blk-cgroup.c Merge branch 'for-3.8/core' of git://git.kernel.dk/linux-block 2012-12-17 08:27:23 -08:00
blk-cgroup.h
blk-core.c block: optionally snapshot page contents to provide stable pages during write 2013-02-21 17:22:20 -08:00
blk-exec.c sched: Move sched.h sysctl bits into separate header 2013-02-07 20:50:54 +01:00
blk-flush.c
blk-integrity.c bdi: allow block devices to say that they require stable page writes 2013-02-21 17:22:19 -08:00
blk-ioc.c
blk-iopoll.c
blk-lib.c block: add plug for blkdev_issue_discard 2012-12-14 20:46:04 +01:00
blk-map.c
blk-merge.c
blk-settings.c block: discard granularity might not be power of 2 2012-12-14 20:46:04 +01:00
blk-softirq.c
blk-sysfs.c
blk-tag.c
blk-throttle.c
blk-timeout.c
blk.h
bsg-lib.c
bsg.c
cfq-iosched.c
compat_ioctl.c
deadline-iosched.c deadline: Allow 0ms deadline latency, increase the read speed 2012-12-09 19:19:23 +01:00
elevator.c block: don't request module during elevator init 2013-01-22 16:48:03 -08:00
genhd.c block: prevent race/cleanup 2012-12-19 20:36:10 +01:00
ioctl.c
Kconfig percpu_rw_semaphore: introduce CONFIG_PERCPU_RWSEM 2012-12-17 17:15:18 -08:00
Kconfig.iosched
Makefile
noop-iosched.c
partition-generic.c
scsi_ioctl.c