linux/Documentation/DocBook
Stefan Richter 1ee4168057 Documentation: kernel-locking: mutex_trylock cannot be used in interrupt context
Chapter 6 is right about mutex_trylock, but chapter 10 wasn't.  This error
was introduced during semaphore-to-mutex conversion of the Unreliable
guide.  :-)

If user context which performs mutex_lock() or mutex_trylock() is
preempted by interrupt context which performs mutex_trylock() on the same
mutex instance, a deadlock occurs.  This is because these functions do not
disable local IRQs when they operate on mutex->wait_lock.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Acked-by: Rusty Russell <rusty@rustcorp.com.au>
Cc: Matthew Wilcox <matthew@wil.cx>
Cc: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-08-20 09:34:56 -07:00
..
dvb V4L/DVB: DocBook/dvb: Update spec to reflect the current FE capabilities 2010-08-02 15:03:17 -03:00
v4l V4L/DVB: v4l: Add driver for Samsung S5P SoC video postprocessor 2010-08-08 23:43:01 -03:00
.gitignore documentation: ignore byproducts from latex 2009-04-02 19:04:53 -07:00
alsa-driver-api.tmpl ALSA: Move ALSA docbooks to be with the rest of the kernel docbooks 2009-03-09 15:22:59 +01:00
debugobjects.tmpl debugfs: Fix terminology inconsistency of dir name to mount debugfs filesystem. 2009-06-15 21:30:28 -07:00
device-drivers.tmpl Driver core: reduce duplicated code for platform_device creation 2010-08-05 13:53:34 -07:00
deviceiobook.tmpl docbook: fix errors from x86 headers merger 2010-03-03 07:32:39 -08:00
drm.tmpl drm: fix typos in Linux DRM Developer's Guide 2010-06-03 13:13:32 +10:00
filesystems.tmpl docbook: move pipe and splice to filesystems docbook 2008-02-13 16:21:19 -08:00
gadget.tmpl usb gadget: cdc obex glue 2008-10-17 14:40:53 -07:00
genericirq.tmpl doc: Fix IRQ chip docs 2009-12-04 15:39:57 +01:00
kernel-api.tmpl kfifo: replace the old non generic API 2010-08-11 08:59:23 -07:00
kernel-hacking.tmpl docbook: fix signal_pending() argument 2009-12-09 18:59:52 -08:00
kernel-locking.tmpl Documentation: kernel-locking: mutex_trylock cannot be used in interrupt context 2010-08-20 09:34:56 -07:00
kgdb.tmpl kgdb,docs: Update the kgdb docs to include kms 2010-08-05 10:53:11 -05:00
libata.tmpl Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev 2010-05-20 09:27:37 -07:00
librs.tmpl docbook: librs typo fixes 2007-05-08 11:15:15 -07:00
lsm.tmpl Add missing section ID to lsm.tmpl 2008-02-07 08:42:16 -08:00
mac80211.tmpl mac80211: remove get_tx_stats() driver op 2010-02-08 16:51:01 -05:00
Makefile docbook: need xmldoclinks for all doc types 2010-08-11 08:59:18 -07:00
mcabook.tmpl Rationalise Randy's address a bit 2008-10-30 11:38:47 -07:00
media-entities.tmpl V4L/DVB: DocBook/media: Add LIRC DocBook to media.html 2010-08-02 15:18:40 -03:00
media-indices.tmpl V4L/DVB (13572): v4l2-spec: Digital Video Timings API documentation 2009-12-16 00:18:04 -02:00
media.tmpl V4L/DVB: DocBook/media: Add LIRC DocBook to media.html 2010-08-02 15:18:40 -03:00
mtdnand.tmpl docbook: make mtd nand module init static 2010-05-24 07:30:55 -07:00
networking.tmpl wimax: Makefile, Kconfig and docbook linkage for the stack 2009-01-07 10:00:17 -08:00
rapidio.tmpl docbook: fix fatal rapidio yet again (and more to come) 2008-04-29 20:40:00 -07:00
regulator.tmpl regulator: Add basic DocBook manual 2009-01-08 20:10:34 +00:00
s390-drivers.tmpl docbook: fix s390 fatal error after header files moved 2008-08-05 16:56:29 -07:00
scsi.tmpl Documentation: update broken web addresses. 2010-08-04 15:21:40 +02:00
sh.tmpl sh: fixup the docbook paths for clock framework shuffling. 2010-05-13 18:42:25 +09:00
stylesheet.xsl docbook: use IDs as filenames to support multiple books 2010-08-05 13:21:24 -07:00
tracepoint.tmpl Add DocBook documentation for the block tracepoints. 2010-03-09 09:26:04 +01:00
uio-howto.tmpl uio: add generic driver for PCI 2.3 devices 2009-09-15 09:50:48 -07:00
usb.tmpl USB: remove usb DocBook warnings 2007-05-22 23:45:48 -07:00
writing_usb_driver.tmpl USB: rename usb_buffer_alloc() and usb_buffer_free() users 2010-05-20 13:21:38 -07:00
writing-an-alsa-driver.tmpl ALSA: Update the documentation for changes of proc files 2010-04-13 12:55:09 +02:00
z8530book.tmpl Rationalise Randy's address a bit 2008-10-30 11:38:47 -07:00