linux/drivers/char
Richard MUSIL 5bd91f18be tpm.c: fix crash during device removal
The clean up procedure now uses platform device "release" callback to
handle memory clean up.  For this purpose "release" function callback was
added to struct tpm_vendor_specific, so hw device driver provider can get
called when it is safe to remove all allocated resources.

This is supposed to fix a bug in device removal, where device while in
receive function (waiting on timeout) was prone to segfault, if the
tpm_chip struct was unallocated before the timeout expired (in
tpm_remove_hardware).

Acked-by: Marcel Selhorst <tpm@selhorst.net>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-02-06 10:41:04 -08:00
..
agp Merge branch 'agp-patches' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/agp-2.6 2008-02-05 09:54:10 -08:00
drm Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial 2008-02-04 07:58:52 -08:00
hw_random HWRNG: add possibility to remove hwrng devices during suspend/resume 2008-02-05 09:44:23 -08:00
ip2 drivers/char/: Spelling fixes 2008-02-03 17:11:42 +02:00
ipmi [WATCHDOG] ipmi: add the standard watchdog timeout ioctls 2007-11-28 08:25:19 +00:00
mwave [PATCH] mwave: interesting flags savings 2007-02-20 17:10:14 -08:00
pcmcia pcmcia: convert some internal-only ioaddr_t to unsigned int 2008-02-05 09:44:08 -08:00
rio long vs. unsigned long - low-hanging fruits in drivers 2007-10-14 12:41:51 -07:00
tpm tpm.c: fix crash during device removal 2008-02-06 10:41:04 -08:00
.gitignore
amiserial.c some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
apm-emulation.c Freezer: Fix APM emulation breakage 2007-11-20 22:28:20 -05:00
applicom.c
applicom.h
briq_panel.c [POWERPC] Remove dead code for preventing pread() and pwrite() calls 2007-07-10 22:03:26 +10:00
cd1865.h
ChangeLog
consolemap.c unicode diacritics support 2007-10-17 08:42:52 -07:00
cp437.uni
cs5535_gpio.c gpio_cs5535: disable AUX on output 2007-12-05 09:21:20 -08:00
cyclades.c Char: cyclades, fix potential NULL dereference 2007-10-23 08:32:06 -07:00
defkeymap.c_shipped unicode diacritics support 2007-10-17 08:42:52 -07:00
defkeymap.map
digi1.h
digiFep1.h
digiPCI.h
ds1286.c [CHAR] ds1286: Fix handling of seconds in RTC_ALM_SET ioctl. 2007-03-08 01:10:30 +00:00
ds1302.c [PATCH] DS1302: local_irq_disable() is redundant after local_irq_save() 2007-02-12 09:48:30 -08:00
ds1620.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
dsp56k.c long vs. unsigned long - low-hanging fruits in drivers 2007-10-14 12:41:51 -07:00
dtlk.c dtlk: fix error checks in module_init() 2007-05-08 11:15:09 -07:00
efirtc.c drivers/char/: Spelling fixes 2008-02-03 17:11:42 +02:00
epca.c drivers/char/: Spelling fixes 2008-02-03 17:11:42 +02:00
epca.h
epcaconfig.h
esp.c Convert files to UTF-8 and some cleanups 2007-10-19 23:21:04 +02:00
generic_nvram.c [PATCH] mark struct file_operations const 3 2007-02-12 09:48:45 -08:00
generic_serial.c genericserial: remove bogus optimisation check and dead code paths 2007-07-16 09:05:51 -07:00
genrtc.c Char: genrtc, use wait_event_interruptible 2007-07-16 09:05:44 -07:00
hangcheck-timer.c drivers/char/: Spelling fixes 2008-02-03 17:11:42 +02:00
hpet.c x86: nuke a ton of dead hpet code 2008-01-30 13:30:27 +01:00
hvc_beat.c [POWERPC] Init markings for hvc_beat 2007-08-17 11:01:50 +10:00
hvc_console.c kobject: convert hvc_console to use kref, not kobject 2008-01-24 20:40:08 -08:00
hvc_console.h
hvc_iseries.c [POWERPC] init and exit markings for hvc_iseries 2007-07-22 21:30:59 +10:00
hvc_rtas.c [POWERPC] Quiet section mismatch in hvc_rtas.c 2007-07-22 21:30:59 +10:00
hvc_vio.c [POWERPC] Rename device_is_compatible to of_device_is_compatible 2007-05-07 20:31:14 +10:00
hvc_xen.c xen: use the hvc console infrastructure for Xen console 2007-07-18 08:47:44 -07:00
hvcs.c drivers/char/: Spelling fixes 2008-02-03 17:11:42 +02:00
hvsi.c [POWERPC] Rename get_property to of_get_property: partial drivers 2007-04-27 15:51:56 +10:00
i8k.c Convert files to UTF-8 and some cleanups 2007-10-19 23:21:04 +02:00
ip27-rtc.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
isicom.c Add missing newlines to some uses of dev_<level> messages 2007-10-18 14:37:28 -07:00
istallion.c Convert from class_device to device in drivers/char 2007-10-12 14:51:04 -07:00
Kconfig riscom8: fix SMP brokenness 2008-02-06 10:41:00 -08:00
keyboard.c get rid of input BIT* duplicate defines 2007-10-19 11:53:42 -07:00
lcd.c [MIPS] Delete duplicate inclusion of <linux/delay.h>. 2007-08-27 02:16:59 +01:00
lcd.h [MIPS] Add MTD device support for Cobalt 2007-02-20 17:11:55 +00:00
lp.c Parallel port: convert port_mutex to the mutex API 2008-02-06 10:41:01 -08:00
Makefile nozomi driver 2008-01-24 20:40:04 -08:00
mbcs.c Clean up duplicate includes in drivers/char/ 2007-10-17 08:42:48 -07:00
mbcs.h mbcs: Remove lots of global symbols 2007-07-19 10:04:43 -07:00
mem.c x86 merge fallout: uml 2007-10-29 07:41:32 -07:00
misc.c Misc: Add possibility to remove misc devices during suspend/resume 2008-02-05 09:44:23 -08:00
mmtimer.c Remove fs.h from mm.h 2007-07-29 17:09:29 -07:00
moxa.c Char: moxa, remove sleep_on 2007-10-18 14:37:27 -07:00
mspec.c vm audit: add VM_DONTEXPAND to mmap for drivers that need it 2008-02-04 07:55:38 -08:00
mxser_new.c Remove inclusions of <linux/autoconf.h> 2008-02-06 10:41:00 -08:00
mxser_new.h [PATCH] Char: mxser_new, upgrade to 1.9.15 2007-02-11 10:51:29 -08:00
mxser.c Remove inclusions of <linux/autoconf.h> 2008-02-06 10:41:00 -08:00
mxser.h mxser: Remove use of dead TTY_FLIPBUF_SIZE definition 2007-10-17 08:42:52 -07:00
n_hdlc.c n_hdlc.c: fix check-after-use 2007-10-17 08:42:55 -07:00
n_r3964.c Char: n_r3964, use wait_event_interruptible 2007-07-16 09:05:44 -07:00
n_tty.c Fix misspellings of "system", "controller", "interrupt" and "necessary". 2007-10-19 23:10:43 +02:00
nozomi.c nozomi: finish constification 2008-02-02 15:14:48 -08:00
nsc_gpio.c [PATCH] struct path: convert char-drivers 2006-12-08 08:28:44 -08:00
nvram.c COBALT: remove all references to Cobalt NVRAM 2007-07-16 09:05:47 -07:00
nwbutton.c [PATCH] Char: timers cleanup 2007-02-12 09:48:30 -08:00
nwbutton.h
nwflash.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
pc8736x_gpio.c
ppdev.c [PARPORT] Remove unused 'irq' argument from parport irq functions 2007-10-23 19:53:16 -04:00
ps3flash.c ps3: FLASH ROM Storage Driver 2007-07-21 17:49:16 -07:00
pty.c sysctl: simplify the pty sysctl logic 2007-10-18 14:37:23 -07:00
random.c unexport add_disk_randomness 2008-02-01 09:26:32 +01:00
raw.c cdev: remove unneeded setting of cdev names 2007-10-12 14:51:02 -07:00
riscom8_reg.h
riscom8.c riscom8: fix SMP brokenness 2008-02-06 10:41:00 -08:00
riscom8.h long vs. unsigned long - low-hanging fruits in drivers 2007-10-14 12:41:51 -07:00
rocket_int.h Char: rocket, switch sleep_on to completion 2007-10-18 14:37:27 -07:00
rocket.c Fix misspellings of "system", "controller", "interrupt" and "necessary". 2007-10-19 23:10:43 +02:00
rocket.h
rtc.c rtc: use the IRQ callback interface in (old) RTC driver 2008-01-30 13:33:31 +01:00
scc.h
scx200_gpio.c
selection.c Kernel utf-8 handling 2007-07-16 09:05:46 -07:00
ser_a2232.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
ser_a2232.h
ser_a2232fw.ax
ser_a2232fw.h
serial167.c m68k: remove empty ->setup is several consoles 2007-07-20 08:24:49 -07:00
snsc_event.c [IA64] drivers/char/snsc_event.c:206: warning: unused variable `p' 2007-05-10 13:23:05 -07:00
snsc.c Convert from class_device to device in drivers/char 2007-10-12 14:51:04 -07:00
snsc.h
sonypi.c Sonypi: use synchronize_irq instead of sycnronize_sched 2007-11-21 14:16:38 -05:00
specialix_io8.h
specialix.c Char: specialix, remove busy waiting 2007-07-17 10:23:10 -07:00
stallion.c Convert from class_device to device in drivers/char 2007-10-12 14:51:04 -07:00
sx.c Use helpers to obtain task pid in printks 2007-10-19 11:53:43 -07:00
sx.h long vs. unsigned long - low-hanging fruits in drivers 2007-10-14 12:41:51 -07:00
sxboards.h
sxwindow.h
synclink_gt.c synclink_gt endianness annotations 2007-10-14 12:41:51 -07:00
synclink.c drivers/char/: Spelling fixes 2008-02-03 17:11:42 +02:00
synclinkmp.c some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
sysrq.c pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
tb0219.c [PATCH] struct path: convert char-drivers 2006-12-08 08:28:44 -08:00
tlclk.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
toshiba.c drivers/char/: Spelling fixes 2008-02-03 17:11:42 +02:00
tty_audit.c [AUDIT] add session id to audit messages 2008-02-01 14:06:51 -05:00
tty_io.c proper prototype for vty_init() 2008-02-06 10:41:03 -08:00
tty_ioctl.c pl2303: Fix mode switching regression 2008-01-08 16:16:34 -08:00
vc_screen.c use mutex instead of semaphore in virtual console driver 2007-05-08 11:15:33 -07:00
viocons.c [POWERPC] iSeries: fix viocons init 2006-12-20 16:37:48 +11:00
viotape.c Convert from class_device to device in drivers/char 2007-10-12 14:51:04 -07:00
virtio_console.c virtio: simplify config mechanism. 2008-02-04 23:49:57 +11:00
vme_scc.c m68k: remove empty ->setup is several consoles 2007-07-20 08:24:49 -07:00
vr41xx_giu.c [MIPS] Separate platform_device registration for VR41xx GPIO 2007-07-12 17:41:15 +01:00
vt_ioctl.c add CONFIG_VT_UNICODE 2007-10-17 08:42:56 -07:00
vt.c Console events and accessibility 2007-10-19 11:53:34 -07:00