Jens Axboe
dcd8376c36
Revert "blk-flush: Queue through IO scheduler when flush not required"
...
This reverts commit 1b2ff19e6a .
Jan writes:
--
Thanks for report! After some investigation I found out we allocate
elevator specific data in __get_request() only for non-flush requests. And
this is actually required since the flush machinery uses the space in
struct request for something else. Doh. So my patch is just wrong and not
easy to fix since at the time __get_request() is called we are not sure
whether the flush machinery will be used in the end. Jens, please revert
1b2ff19e6a . Thanks!
I'm somewhat surprised that you can reliably hit the race where flushing
gets disabled for the device just while the request is in flight. But I
guess during boot it makes some sense.
--
So let's just revert it, we can fix the queue run manually after the
fact. This race is rare enough that it didn't trigger in testing, it
requires the specific disable-while-in-flight scenario to trigger.
2015-11-25 10:12:54 -07:00
..
partitions
mac: validate mac_partition is within sector
2015-11-20 08:49:28 -07:00
bio-integrity.c
block: blk_flush_integrity() for bio-based drivers
2015-10-21 14:43:44 -06:00
bio.c
mm, page_alloc: distinguish between being unable to sleep, unwilling to sleep and avoiding waking kswapd
2015-11-06 17:50:42 -08:00
blk-cgroup.c
Merge branch 'for-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup
2015-11-05 14:51:32 -08:00
blk-core.c
block: fix blk-core.c kernel-doc warning
2015-11-11 09:36:57 -07:00
blk-exec.c
block: move PM request support to IDE
2015-05-05 13:40:42 -06:00
blk-flush.c
Revert "blk-flush: Queue through IO scheduler when flush not required"
2015-11-25 10:12:54 -07:00
blk-integrity.c
block, libnvdimm, nvme: provide a built-in blk_integrity nop profile
2015-10-21 14:43:45 -06:00
blk-ioc.c
mm, page_alloc: distinguish between being unable to sleep, unwilling to sleep and avoiding waking kswapd
2015-11-06 17:50:42 -08:00
blk-iopoll.c
Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip into next
2014-06-03 12:57:53 -07:00
blk-lib.c
block: re-add discard_granularity and alignment checks
2015-10-28 09:12:58 +09:00
blk-map.c
block: Copy a user iovec if it includes gaps
2015-09-11 09:03:50 -06:00
blk-merge.c
blk-merge: warn if figured out segment number is bigger than nr_phys_segments
2015-11-23 20:16:55 -07:00
blk-mq-cpu.c
blk-mq: add file comments and update copyright notices
2014-05-28 10:15:41 -06:00
blk-mq-cpumap.c
blk-mq: avoid inserting requests before establishing new mapping
2015-09-29 11:32:50 -06:00
blk-mq-sysfs.c
block: add block polling support
2015-11-07 10:40:47 -07:00
blk-mq-tag.c
mm, page_alloc: distinguish between being unable to sleep, unwilling to sleep and avoiding waking kswapd
2015-11-06 17:50:42 -08:00
blk-mq-tag.h
blk-mq: factor out a helper to iterate all tags for a request_queue
2015-10-01 10:10:57 +02:00
blk-mq.c
blk-mq: fix calling unplug callbacks with preempt disabled
2015-11-20 20:29:45 -07:00
blk-mq.h
blk-mq: mark __blk_mq_complete_request() static
2015-11-11 09:36:56 -07:00
blk-settings.c
Merge branch 'for-4.3/core' of git://git.kernel.dk/linux-block
2015-09-02 13:10:25 -07:00
blk-softirq.c
block: fix regression with block enabled tagging
2014-04-09 21:54:06 -06:00
blk-sysfs.c
block: add block polling support
2015-11-07 10:40:47 -07:00
blk-tag.c
block: support different tag allocation policy
2015-01-23 14:15:46 -07:00
blk-throttle.c
cgroup: replace cgroup_on_dfl() tests in controllers with cgroup_subsys_on_dfl()
2015-09-18 11:56:28 -04:00
blk-timeout.c
block: fix blk_abort_request for blk-mq drivers
2015-11-24 15:24:10 -07:00
blk.h
block: protect rw_page against device teardown
2015-11-19 13:47:10 -08:00
bounce.c
Merge branch 'for-linus' of git://git.kernel.dk/linux-block
2015-09-19 18:57:09 -07:00
bsg-lib.c
bsg.c
block: Simplify bsg complete all
2015-02-04 09:57:52 -07:00
cfq-iosched.c
cgroup: replace cgroup_on_dfl() tests in controllers with cgroup_subsys_on_dfl()
2015-09-18 11:56:28 -04:00
cmdline-parser.c
block: remove unrelated header files and export symbol
2014-01-21 20:18:26 -08:00
compat_ioctl.c
block, bdi: an active gendisk always has a request_queue associated with it
2014-09-08 10:00:35 -06:00
deadline-iosched.c
block: Stop abusing csd.list for fifo_time
2014-02-24 14:46:32 -08:00
elevator.c
block: check bio_mergeable() early before merging
2015-10-21 15:00:54 -06:00
genhd.c
block: Inline blk_integrity in struct gendisk
2015-10-21 14:42:42 -06:00
ioctl.c
block: add an API for Persistent Reservations
2015-10-21 14:46:56 -06:00
ioprio.c
pidns: fix set/getpriority and ioprio_set/get in PRIO_USER mode
2015-11-06 17:50:42 -08:00
Kconfig
block: Add T10 Protection Information functions
2014-09-27 09:14:59 -06:00
Kconfig.iosched
Makefile
block: Add T10 Protection Information functions
2014-09-27 09:14:59 -06:00
noop-iosched.c
elevator: use list_{first,prev,next}_entry
2015-11-16 15:21:48 -07:00
partition-generic.c
block: Inline blk_integrity in struct gendisk
2015-10-21 14:42:42 -06:00
scsi_ioctl.c
mm, page_alloc: rename __GFP_WAIT to __GFP_RECLAIM
2015-11-06 17:50:42 -08:00
t10-pi.c
block: Consolidate static integrity profile properties
2015-10-21 14:42:38 -06:00