Revision db3b5848ea6440968fcdd29b80514d0de044bb7c authored by Kiyoshi Ueda on 17 June 2005, 14:15:10 UTC, committed by Jens Axboe on 17 June 2005, 14:15:10 UTC
__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>
1 parent c374f12
History
File Mode Size
irq
power
Makefile -rw-r--r-- 2.1 KB
acct.c -rw-r--r-- 14.4 KB
audit.c -rw-r--r-- 23.2 KB
auditsc.c -rw-r--r-- 28.6 KB
capability.c -rw-r--r-- 5.8 KB
compat.c -rw-r--r-- 21.4 KB
configs.c -rw-r--r-- 3.3 KB
cpu.c -rw-r--r-- 4.2 KB
cpuset.c -rw-r--r-- 40.1 KB
dma.c -rw-r--r-- 3.5 KB
exec_domain.c -rw-r--r-- 4.3 KB
exit.c -rw-r--r-- 38.5 KB
extable.c -rw-r--r-- 2.0 KB
fork.c -rw-r--r-- 31.3 KB
futex.c -rw-r--r-- 19.3 KB
intermodule.c -rw-r--r-- 5.1 KB
itimer.c -rw-r--r-- 6.8 KB
kallsyms.c -rw-r--r-- 10.4 KB
kfifo.c -rw-r--r-- 4.7 KB
kmod.c -rw-r--r-- 7.2 KB
kprobes.c -rw-r--r-- 7.1 KB
ksysfs.c -rw-r--r-- 1.3 KB
kthread.c -rw-r--r-- 4.7 KB
module.c -rw-r--r-- 52.9 KB
panic.c -rw-r--r-- 3.4 KB
params.c -rw-r--r-- 16.8 KB
pid.c -rw-r--r-- 7.5 KB
posix-cpu-timers.c -rw-r--r-- 40.8 KB
posix-timers.c -rw-r--r-- 44.9 KB
printk.c -rw-r--r-- 25.2 KB
profile.c -rw-r--r-- 14.9 KB
ptrace.c -rw-r--r-- 8.8 KB
rcupdate.c -rw-r--r-- 14.0 KB
resource.c -rw-r--r-- 11.6 KB
sched.c -rw-r--r-- 124.4 KB
seccomp.c -rw-r--r-- 1.1 KB
signal.c -rw-r--r-- 69.2 KB
softirq.c -rw-r--r-- 11.1 KB
spinlock.c -rw-r--r-- 7.7 KB
stop_machine.c -rw-r--r-- 4.8 KB
sys.c -rw-r--r-- 39.9 KB
sys_ni.c -rw-r--r-- 2.3 KB
sysctl.c -rw-r--r-- 54.3 KB
time.c -rw-r--r-- 15.6 KB
timer.c -rw-r--r-- 41.8 KB
uid16.c -rw-r--r-- 4.2 KB
user.c -rw-r--r-- 4.3 KB
wait.c -rw-r--r-- 7.1 KB
workqueue.c -rw-r--r-- 13.5 KB

back to top