1
linux/drivers
Tejun Heo ca23509fba [PATCH] blk: fix dangling pointer access in __elv_add_request
cfq's add_req_fn callback may invoke q->request_fn directly and
depending on low-level driver used and timing, a queued request may be
finished & deallocated before add_req_fn callback returns.  So,
__elv_add_request must not access rq after it's passed to add_req_fn
callback.

This patch moves rq_mergeable test above add_req_fn().  This may
result in q->last_merge pointing to REQ_NOMERGE request if add_req_fn
callback sets it but as RQ_NOMERGE is checked again when blk layer
actually tries to merge requests, this does not cause any problem.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-11-01 21:58:06 -08:00
..
acorn [ARM] Turn ARM RiscPC PCF8583 i2c RTC driver into a proper module 2005-10-30 19:07:59 +00:00
acpi [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
atm
base Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-10-31 07:32:56 -08:00
block [PATCH] blk: fix dangling pointer access in __elv_add_request 2005-11-01 21:58:06 -08:00
bluetooth [Bluetooth] Ignore additional interfaces of BPA 100/105 devices 2005-10-28 19:20:57 +02:00
cdrom powerpc: set the driver.owner field for all vio drivers 2005-10-24 16:59:13 +10:00
char [PATCH] missing platform_device.h includes 2005-11-01 21:50:01 -08:00
connector
cpufreq [PATCH] create and destroy cpufreq sysfs entries based on cpu notifiers 2005-10-30 17:37:14 -08:00
crypto [PATCH] CONFIG_IA32 2005-10-30 17:37:10 -08:00
dio
eisa Create platform_device.h to contain all the platform device details. 2005-10-29 19:07:23 +01:00
fc4
firmware Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-10-31 07:32:56 -08:00
hwmon Create platform_device.h to contain all the platform device details. 2005-10-29 19:07:23 +01:00
i2c Merge master.kernel.org:/home/rmk/linux-2.6-arm 2005-11-01 21:32:14 -08:00
ide Merge ../linux-2.6 by hand 2005-10-31 13:37:12 +11:00
ieee1394 Merge ../bleed-2.6 2005-10-28 10:13:16 -07:00
infiniband [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
input [PATCH] i386: CONFIG_PC removal 2005-10-31 09:20:54 -08:00
isdn [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
macintosh Input: adbhid - fix OOPS introduced by dynalloc conversion 2005-10-31 01:30:32 -05:00
mca [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
md [PATCH] Use sg_set_buf/sg_init_one where applicable 2005-10-30 11:19:43 +11:00
media [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
message [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
mfd Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-10-31 07:32:56 -08:00
misc Create platform_device.h to contain all the platform device details. 2005-10-29 19:07:23 +01:00
mmc Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-10-31 07:32:56 -08:00
mtd Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-10-31 07:32:56 -08:00
net [PATCH] ibmveth fix panic in initial replenish cycle 2005-11-01 21:56:40 -08:00
nubus
oprofile
parisc Auto-update from upstream 2005-10-28 12:18:07 -04:00
parport [PARISC] Convert parisc_device to use struct resource for hpa 2005-10-21 22:36:40 -04:00
pci [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
pcmcia Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-10-31 07:32:56 -08:00
pnp [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
s390 [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
sbus
scsi [PATCH] revert ide-scsi highmem cleanup 2005-10-31 14:22:04 -08:00
serial Merge master.kernel.org:/home/rmk/linux-2.6-serial 2005-11-01 21:32:46 -08:00
sh [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
sn
tc Use physical addresses at the interface level, letting drivers remap 2005-10-29 19:31:35 +01:00
telephony
usb Don't touch USB controller IO registers when they are disabled 2005-10-31 21:12:40 -08:00
video Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-10-31 07:32:56 -08:00
w1 [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
zorro [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
Kconfig
Makefile [PATCH] USB: move handoff code 2005-10-28 16:47:38 -07:00