linux/drivers/block
Kiyoshi Ueda db3b5848ea When cfq I/O scheduler is selected, get_request() in __make_request() calls
__cfq_get_queue().  __cfq_get_queue() finds an existing queue (struct
cfq_queue) of the current process for the device and returns it.  If it's not
found, __cfq_get_queue() creates and returns a new one if __cfq_get_queue() is
called with __GFP_WAIT flag, or __cfq_get_queue() returns NULL (this means that
get_request() fails) if no __GFP_WAIT flag.

On the other hand, in __make_request(), get_request() is called without
__GFP_WAIT flag at the first time.  Thus, the get_request() fails when there is
no existing queue, typically when it's called for the first I/O request of the
process to the device.

Though it will be followed by get_request_wait() for general case,
__make_request() will just end the I/O with an error (EWOULDBLOCK) when the
request was for read-ahead.

Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Kiyoshi Ueda <k-ueda@ct.jp.nec.com>
Signed-off-by: Jun'ichi Nomura <j-nomura@ce.jp.nec.com>
2005-06-17 16:15:10 +02:00
..
aoe [PATCH] aoe: update version number to 10 2005-05-03 23:34:55 -07:00
paride Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
acsi_slm.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
acsi.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
amiflop.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
as-iosched.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ataflop.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cciss_cmd.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cciss_scsi.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cciss_scsi.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cciss.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cciss.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cfq-iosched.c When cfq I/O scheduler is selected, get_request() in __make_request() calls 2005-06-17 16:15:10 +02:00
cpqarray.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cpqarray.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cryptoloop.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
DAC960.c [PATCH] DAC960: add support for Mylex AcceleRAID 4/5/600 2005-05-05 16:36:43 -07:00
DAC960.h [PATCH] DAC960: add support for Mylex AcceleRAID 4/5/600 2005-05-05 16:36:43 -07:00
deadline-iosched.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
elevator.c This patch fixes q->unplug_thresh condition check in 2005-06-16 12:57:31 +02:00
floppy.c [PATCH] remove do_sync parameter from __invalidate_device 2005-05-05 16:36:44 -07:00
genhd.c [PATCH] remove do_sync parameter from __invalidate_device 2005-05-05 16:36:44 -07:00
ida_cmd.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ida_ioctl.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ioctl.c [PATCH] Fix root hole in raw device 2005-05-16 21:07:21 -07:00
Kconfig [PATCH] ISA DMA Kconfig fixes - part 3 2005-05-04 07:33:14 -07:00
Kconfig.iosched Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ll_rw_blk.c [PATCH] fix NMI lockup with CFQ scheduler 2005-04-16 20:10:09 -05:00
loop.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
nbd.c [PATCH] nbd: Don't create all MAX_NBD devices by default all the time 2005-05-01 08:59:07 -07:00
noop-iosched.c [PATCH] noop-iosched: kill O(N) merge scan 2005-05-01 08:59:06 -07:00
pktcdvd.c [PATCH] packet driver permission checking fix 2005-05-20 15:48:16 -07:00
ps2esdi.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rd.c [PATCH] drivers/block/rd.c: rd_size shouldn't be static 2005-05-06 16:58:18 -07:00
scsi_ioctl.c [PATCH] consolidate timeout defintions in scsi.h 2005-04-18 12:31:52 -05:00
smart1,2.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
swim3.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
swim_iop.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sx8.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ub.c [PATCH] USB: fix ub issues 2005-06-09 01:38:11 -07:00
umem.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
viodasd.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xd.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xd.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
z2ram.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00