linux/sound
Peter Zijlstra ca109491f6 hrtimer: removing all ur callback modes
Impact: cleanup, move all hrtimer processing into hardirq context

This is an attempt at removing some of the hrtimer complexity by
reducing the number of callback modes to 1.

This means that all hrtimer callback functions will be ran from HARD-irq
context.

I went through all the 30 odd hrtimer callback functions in the kernel
and saw only one that I'm not quite sure of, which is the one in
net/can/bcm.c - hence I'm CC-ing the folks responsible for that code.

Furthermore, the hrtimer core now calls callbacks directly with IRQs
disabled in case you try to enqueue an expired timer. If this timer is a
periodic timer (which should use hrtimer_forward() to advance its time)
then it might be possible to end up in an inf. recursive loop due to the
fact that hrtimer_forward() doesn't round up to the next timer
granularity, and therefore keeps on calling the callback - obviously
this needs a fix.

Aside from that, this seems to compile and actually boot on my dual core
test box - although I'm sure there are some bugs in, me not hitting any
makes me certain :-)

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2008-11-25 15:45:46 +01:00
..
aoa Merge branches 'topic/fix/misc' and 'topic/fix/hda' into for-linus 2008-11-03 16:28:24 +01:00
arm Merge branches 'topic/asoc', 'topic/misc-fixes' and 'topic/hda' into for-linus 2008-10-23 19:20:54 +02:00
core Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 2008-11-03 10:14:59 -08:00
drivers hrtimer: removing all ur callback modes 2008-11-25 15:45:46 +01:00
i2c V4L/DVB (8788): v4l: replace video_get_drvdata(video_devdata(filp)) with video_drvdata(filp) 2008-10-12 09:36:54 -02:00
isa ALSA: gusextreme: Fix build errors 2008-11-10 07:54:25 +01:00
mips removed unused #include <linux/version.h>'s 2008-08-23 12:14:12 -07:00
oss oss: fix O_NONBLOCK in dmasound_core 2008-11-01 12:40:38 -07:00
parisc ALSA: harmony - fix a typo 2008-09-04 10:33:55 +02:00
pci Merge branches 'topic/fix/hda' and 'topic/fix/misc' into for-linus 2008-11-18 13:49:39 +01:00
pcmcia ALSA: Kill snd_assert() in other places 2008-08-13 11:46:40 +02:00
ppc ALSA: ps3: Add support for SPDIF/HDMI passthru 2008-10-20 08:06:39 +02:00
sh ALSA: Fix section for snd-aica platform driver 2008-09-23 08:17:58 +02:00
soc Merge branches 'topic/fix/misc' and 'topic/fix/hda' into for-linus 2008-11-03 16:28:24 +01:00
sparc dbri: check dma_alloc_coherent errors 2008-10-29 15:34:39 -07:00
spi sound: Convert to menuconfig 2008-05-27 15:56:20 +02:00
synth ALSA: Kill snd_assert() in other places 2008-08-13 11:46:40 +02:00
usb ALSA: usb - Add quirk for Edirol UA-25EX advanced modes 2008-10-30 11:37:01 +01:00
ac97_bus.c [ALSA] ac97_bus power management 2007-02-09 09:03:54 +01:00
Kconfig Fix CONFIG_AC97_BUS dependency 2008-09-06 11:43:41 +02:00
last.c [ALSA] Remove sound/driver.h 2008-01-31 17:29:48 +01:00
Makefile [ALSA] Add SPI devices to ALSA Kconfig and Makefile 2007-10-16 15:57:47 +02:00
sound_core.c Merge branches 'topic/fix/asoc', 'topic/fix/hda', 'topic/fix/misc' and 'topic/pci-ioremap-bar' into for-linus 2008-10-27 17:08:11 +01:00
sound_firmware.c Detach sched.h from mm.h 2007-05-21 09:18:19 -07:00