linux/drivers
Milan Broz 80b16c192e dm io: fix panic on large request
Flush workqueue before releasing bioset and mopools in dm-crypt.  There can
be finished but not yet released request.

Call chain causing oops:
  run workqueue
    dec_pending
      bio_endio(...);
      	<remove device request - remove mempool>
      mempool_free(io, cc->io_pool);

This usually happens when cryptsetup create temporary
luks mapping in the beggining of crypt device activation.

When dm-core calls destructor crypt_dtr, no new request
are possible.

Signed-off-by: Milan Broz <mbroz@redhat.com>
Cc: Chuck Ebbert <cebbert@redhat.com>
Cc: Patrick McHardy <kaber@trash.net>
Acked-by: Alasdair G Kergon <agk@redhat.com>
Cc: Christophe Saout <christophe@saout.de>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-07-21 17:49:14 -07:00
..
acorn [PATCH] fix request->cmd == INT cases 2007-07-10 08:03:34 +02:00
acpi Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 2007-07-20 12:02:20 -07:00
amba
ata pata_cs5520: Fix probe bug regression introduced in 2.6.22 2007-07-20 09:08:44 -07:00
atm [ATM]: nicstar needs virt_to_bus 2007-07-18 02:13:42 -07:00
auxdisplay Use menuconfig objects II - auxdisplay 2007-07-16 09:05:40 -07:00
base PM: Do not require dev spew to get PM_DEBUG 2007-07-19 10:04:42 -07:00
block [SPARC64]: Fix handling of multiple vdc-port nodes. 2007-07-19 21:27:18 -07:00
bluetooth [Bluetooth] Remove the redundant non-seekable llseek method 2007-07-11 06:53:45 +02:00
cdrom bsg: add a request_queue argument to scsi_cmd_ioctl() 2007-07-16 08:52:45 +02:00
char [SPARC64]: Stop using drivers/char/rtc.c 2007-07-20 17:15:48 -07:00
clocksource PCI: Change all drivers to use pci_device->revision 2007-07-11 16:02:10 -07:00
connector Use menuconfig objects: connector 2007-07-16 09:05:40 -07:00
cpufreq [CPUFREQ] Restore previously used governor on a hot-replugged CPU 2007-07-13 01:29:51 -04:00
crypto Use menuconfig objects: crypto hw 2007-07-16 09:05:40 -07:00
dio
dma dma-mapping: prevent dma dependent code from linking on !HAS_DMA archs 2007-07-16 09:05:45 -07:00
edac drivers/edac: fix edac_device sysfs corner case bug 2007-07-19 10:04:57 -07:00
eisa
fc4
firewire firewire: fw-sbp2: convert to new SCSI data buffer accessors 2007-07-18 23:53:28 +02:00
firmware edd: switch to pci_get based API 2007-07-16 09:05:42 -07:00
hid USB: add reset_resume method 2007-07-12 16:34:30 -07:00
hwmon Merge branch 'release' of git://lm-sensors.org/kernel/mhoffman/hwmon-2.6 2007-07-19 14:24:57 -07:00
i2c Merge branch 'release' of git://lm-sensors.org/kernel/mhoffman/hwmon-2.6 2007-07-19 14:24:57 -07:00
ide m68k: missing exports 2007-07-20 08:24:49 -07:00
ieee1394 mm: Remove slab destructors from kmem_cache_create(). 2007-07-20 10:11:58 +09:00
infiniband mm: Remove slab destructors from kmem_cache_create(). 2007-07-20 10:11:58 +09:00
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2007-07-20 09:16:07 -07:00
isdn isdn/sc: compile breakage re check_reset() 2007-07-19 10:04:50 -07:00
kvm KVM: MMU: Fix cleaning up the shadow page allocation cache 2007-07-20 23:48:47 -07:00
leds
lguest lguest: override sched_clock 2007-07-20 09:05:16 -07:00
macintosh some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
mca
md dm io: fix panic on large request 2007-07-21 17:49:14 -07:00
media V4L/DVB (5880): wm8775/wm8739: Fix memory leak when unloading module 2007-07-20 17:35:57 -03:00
message mm: Remove slab destructors from kmem_cache_create(). 2007-07-20 10:11:58 +09:00
mfd some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
misc some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
mmc sdhci: make sure to clear the error interrupt 2007-07-20 18:51:44 +02:00
mtd mm: Remove slab destructors from kmem_cache_create(). 2007-07-20 10:11:58 +09:00
net [SPARC64]: Add proper multicast support to VNET driver. 2007-07-20 17:14:30 -07:00
nubus some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
of Create drivers/of/platform.c 2007-07-20 14:25:51 +10:00
oprofile [CELL] oprofile: add support to OProfile for profiling CELL BE SPUs 2007-07-20 21:42:24 +02:00
parisc serial: add early_serial_setup() back to header file 2007-07-18 08:38:22 -07:00
parport m68k: exclude more unbuildable drivers 2007-07-20 08:24:49 -07:00
pci some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
pcmcia PM: remove deprecated dpm_runtime_* routines 2007-07-18 15:49:49 -07:00
pnp some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
power Merge git://git.infradead.org/battery-2.6 2007-07-15 16:56:12 -07:00
ps3 [POWERPC] PS3: Storage Driver Core 2007-06-28 19:19:20 +10:00
rapidio some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
rtc sh: Fix up SH-3 and SH-4 driver dependencies. 2007-07-20 12:18:20 +09:00
s390 mm: Remove slab destructors from kmem_cache_create(). 2007-07-20 10:11:58 +09:00
sbus [SPARC]: Make sure dev_archdata is filled in for all devices. 2007-07-20 17:13:42 -07:00
scsi dpt_i2o depends on virt_to_bus 2007-07-20 08:44:19 -07:00
serial [SPARC]: Fix serial console device detection. 2007-07-20 16:59:26 -07:00
sh some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
sn some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
spi use mutex instead of semaphore in SPI core/init code 2007-07-17 10:23:05 -07:00
tc zs: move to the serial subsystem 2007-07-18 08:38:22 -07:00
telephony some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
uio UIO: Hilscher CIF card driver 2007-07-18 15:57:16 -07:00
usb Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6 2007-07-20 08:25:49 -07:00
video [SPARC]: Fix serial console device detection. 2007-07-20 16:59:26 -07:00
w1 some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
xen xen: add the Xenbus sysfs and virtual device hotplug driver 2007-07-18 08:47:45 -07:00
zorro sysfs: add parameter "struct bin_attribute *" in .read/.write methods for sysfs binary attributes 2007-07-11 16:09:09 -07:00
Kconfig Begin to consolidate of_device.c 2007-07-20 13:39:59 +10:00
Makefile Start split out of common open firmware code 2007-07-20 13:28:41 +10:00