Takashi Iwai [Mon, 22 Jun 2009 15:03:48 +0000 (17:03 +0200)]
Merge branch 'topic/hda' into for-linus
* topic/hda:
ALSA: hda - Make jack-plug notification selectable
ALSA: hda - Add digital-mic support to ALC262 auto model
ALSA: hda - Fix check of input source type for realtek codecs
ALSA: hda - Add quirk for Sony VAIO Z21MN
ALSA: hda - Get back Input Source for ALC262 toshiba-s06 model
ALSA: hda - Fix unsigned comparison in patch_sigmatel.c
Takashi Iwai [Mon, 22 Jun 2009 15:03:44 +0000 (17:03 +0200)]
Merge branch 'topic/ctxfi' into for-linus
* topic/ctxfi:
ALSA: ctxfi - Add PM support
ALSA: ctxfi - Allow unknown PCI SSIDs
Takashi Iwai [Mon, 22 Jun 2009 15:03:39 +0000 (17:03 +0200)]
Merge branch 'topic/asoc' into for-linus
* topic/asoc:
ASoC: Blackfin: update the bf5xx_i2s_resume parameters
ASoC: Blackfin: keep better track of SPORT configuration state
Takashi Iwai [Mon, 22 Jun 2009 15:00:38 +0000 (17:00 +0200)]
ALSA: hda - Make jack-plug notification selectable
Make the jack-plug notification via input layer selectable via Kconfig.
This is often unnecessary, and the similr function will be provided
using the ALSA control API in near future anyway.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Wai Yew CHAY [Mon, 22 Jun 2009 12:52:34 +0000 (14:52 +0200)]
ALSA: ctxfi - Add PM support
Added the suspend/resume support to ctxfi driver.
The team tested on the following seems ok:
AMD Athlon 64 3500+ / ASUS A8N-E / 512MB DDR ATI / Radeon X1300
20k1 & 20k2 cards
Signed-off-by: Wai Yew CHAY <wychay@ctl.creative.com>
Singed-off-by: Ryan RICHARDS <ryan_richards@creativelabs.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai [Mon, 22 Jun 2009 08:56:54 +0000 (10:56 +0200)]
ALSA: hda - Add digital-mic support to ALC262 auto model
Add the digital-mic support with ALC262 auto model.
The new ALC262 models have the digital mic at NID 0x12. This widget
isn't checked in the current alc262_auto_create_analog_input_ctls()
since it's under 0x18. So, just reuse the routine for alc269 to fix
the behavior.
But, it doesn't suffice: the digital mic is supported only with the
ADC0, we have to exclude other ADCs when d-mic is detected.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai [Mon, 22 Jun 2009 08:50:19 +0000 (10:50 +0200)]
ALSA: hda - Fix check of input source type for realtek codecs
Fix the check of the input-source type by checking the widget type of
each capture-source item. Since some codecs can have both the mixer
and selector types depending on the ADC, alc_mux_enum_put() needs to
check each widget.
With this change, spec->capture_style gets unneeded, so it's removed,
too.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai [Mon, 22 Jun 2009 09:03:13 +0000 (11:03 +0200)]
ALSA: hda - Add quirk for Sony VAIO Z21MN
It needs model=toshiba-s06 to work with the digital-mic.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
Takashi Iwai [Mon, 22 Jun 2009 06:16:56 +0000 (08:16 +0200)]
ALSA: hda - Get back Input Source for ALC262 toshiba-s06 model
The commit
f9e336f65b666b8f1764d17e9b7c21c90748a37e
ALSA: hda - Unify capture mixer creation in realtek codes
removed the "Input Source" mixer element creation for toshiba-s06 model
because it contains a digital-mic input.
This patch take the control back.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
Takashi Iwai [Mon, 22 Jun 2009 06:00:10 +0000 (08:00 +0200)]
ALSA: hda - Fix unsigned comparison in patch_sigmatel.c
Fix the comparison of unsigned int that causes a compile warning below
by changing to the right signed type:
patch_sigmatel.c: In function ‘stac92xx_vref_set’:
patch_sigmatel.c:658: warning: comparison of unsigned expression < 0 is always false
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai [Mon, 22 Jun 2009 05:36:52 +0000 (07:36 +0200)]
ALSA: ctxfi - Allow unknown PCI SSIDs
Allow unknown PCI SSIDs for emu20k1 and emu20k2 as "unknown" model.
Also, add a black-list check in case any device has to be listed
as "unsupported". It has a negative value in the pci quirk entry.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai [Sun, 21 Jun 2009 08:59:12 +0000 (10:59 +0200)]
Merge branch 'topic/hda' into for-linus
* topic/hda:
ALSA: hda - Add model=6530g option
ALSA: hda - Acer Inspire 6530G model for Realtek ALC888
ALSA: HDA - Correct trivial typos in comments.
ALSA: HDA - Name-fixes in code (tagra/targa)
ALSA: HDA - Add pci-quirk for MSI MS-7350 motherboard.
ALSA: hda - Fix memory leak at codec creation
Takashi Iwai [Sun, 21 Jun 2009 08:59:10 +0000 (10:59 +0200)]
Merge branch 'topic/caiaq' into for-linus
* topic/caiaq:
ALSA: snd_usb_caiaq: fix legacy input streaming
Takashi Iwai [Sun, 21 Jun 2009 08:59:04 +0000 (10:59 +0200)]
Merge branch 'topic/asoc' into for-linus
* topic/asoc:
ASoC: Kill BUS_ID_SIZE
Takashi Iwai [Sun, 21 Jun 2009 08:56:44 +0000 (10:56 +0200)]
ALSA: hda - Add model=6530g option
Add the new model string corresponding to the previous Acer Aspire
6530G support.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Tony Vroon [Sat, 20 Jun 2009 23:40:10 +0000 (00:40 +0100)]
ALSA: hda - Acer Inspire 6530G model for Realtek ALC888
The selected 4930G model seemed to keep the subwoofer 'tuba'
function from operating correctly. Removing the existing PCI
ID match made this work again, but it was mapped to 'Side'
instead of to LFE as one would expect.
This attempts to enable all functionality and keep the amount
of available mixer sliders low. Any slider that had no audible
effect on the output audio has been removed, and as such EAPD
is not currently enabled.
Signed-off-by: Tony Vroon <tony@linx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Barry Song [Sat, 20 Jun 2009 15:29:57 +0000 (11:29 -0400)]
ASoC: Blackfin: update the bf5xx_i2s_resume parameters
Latest ASoC only passes snd_soc_dai to the resume function.
Signed-off-by: Barry Song <barry.song@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cliff Cai [Sat, 20 Jun 2009 15:29:05 +0000 (11:29 -0400)]
ASoC: Blackfin: keep better track of SPORT configuration state
Do not let the SPORT be reconfigured until there are no more active
streams. Then we can let the system reprogram the SPORT state.
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Daniel Mack [Wed, 17 Jun 2009 15:45:11 +0000 (17:45 +0200)]
ALSA: snd_usb_caiaq: fix legacy input streaming
Seems that nobody recently tried the input on the very first supported
sound card model, RK2. This patch fixes the byte offset to make it
running again.
Signed-off-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai [Wed, 17 Jun 2009 09:42:45 +0000 (11:42 +0200)]
ASoC: Kill BUS_ID_SIZE
Remove the use of BUS_ID_SIZE from txx9aclc.c, as BUS_ID_SIZE will be
removed soon later.
Also, use snprintf() instead of sprintf() as a safer operation.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Sasha Alexandr [Tue, 16 Jun 2009 20:00:15 +0000 (16:00 -0400)]
ALSA: HDA - Correct trivial typos in comments.
Correct some trivial typos in comments.
Signed-off-by: Sasha Alexandr <brina_keith@ns.sympatico.ca>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Sasha Alexandr [Tue, 16 Jun 2009 18:52:54 +0000 (14:52 -0400)]
ALSA: HDA - Name-fixes in code (tagra/targa)
Correct some cut+paste typos from 'tagra' to 'targa'.
Signed-off-by: Sasha Alexandr <brina_keith@ns.sympatico.ca>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Sasha Alexandr [Tue, 16 Jun 2009 18:46:17 +0000 (14:46 -0400)]
ALSA: HDA - Add pci-quirk for MSI MS-7350 motherboard.
Add pci-quirk for MSI MS-7350 motherboard with Realtek ALC888.
Signed-off-by: Sasha Alexandr <brina_keith@ns.sympatico.ca>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai [Wed, 17 Jun 2009 06:22:32 +0000 (08:22 +0200)]
ALSA: hda - Fix memory leak at codec creation
The codec->modelname field is allocated twice in snd_hda_codec_new().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai [Tue, 16 Jun 2009 15:38:50 +0000 (17:38 +0200)]
Merge branch 'topic/usb-audio' into for-linus
* topic/usb-audio:
ALSA: usb-audio - rework quirk for TerraTec Aureon USB 5.1 MkII
Takashi Iwai [Tue, 16 Jun 2009 15:38:46 +0000 (17:38 +0200)]
Merge branch 'topic/intel8x0' into for-linus
* topic/intel8x0:
ALSA: intel8x0 - Fix PCM position craziness
Takashi Iwai [Tue, 16 Jun 2009 15:38:43 +0000 (17:38 +0200)]
Merge branch 'topic/hda' into for-linus
* topic/hda:
ALSA: hda - Add quirk for Acer Aspire 6935G
Takashi Iwai [Tue, 16 Jun 2009 15:38:40 +0000 (17:38 +0200)]
Merge branch 'topic/ctxfi' into for-linus
* topic/ctxfi:
ALSA: ctxfi - Fix deadlock with xfi-timer
ALSA: ctxfi - Replace atc lock to mutex
Takashi Iwai [Tue, 16 Jun 2009 15:38:36 +0000 (17:38 +0200)]
Merge branch 'topic/asoc' into for-linus
* topic/asoc:
ASoC: magician: fix PXA SSP clock polarity
ASoC: Instantiate any forgotten DAPM widgets
ASoC: Revert duplicated code in SSM2602 driver
ASoC: Remove odd bit clock ratios for WM8903
Takashi Iwai [Mon, 15 Jun 2009 12:50:52 +0000 (14:50 +0200)]
ALSA: ctxfi - Fix deadlock with xfi-timer
The PCM x-fi native update routine can cause deadlocks when the
trigger(START) is called while the stream is running.
This patch fixes the deadlock by just postponing the pcm period update
to the next possible wake-up. Also it adds the flip of ti->running
flag (just to be sure as now).
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai [Mon, 15 Jun 2009 10:31:38 +0000 (12:31 +0200)]
ALSA: intel8x0 - Fix PCM position craziness
The PCM pointer callback sometimes returns invalid positions and this
screws up the hw_ptr updater in PCM core. Especially since now the
jiffies check is optional with xrun_debug, the invalid position is
handled as is, and causes serious sound skips, etc.
This patch simplifies the position-fix strategy in intel8x0 to be more
robust:
- just falls back to the last position if bogus position is detected
- another sanity check for the backward move of the position due to
a race of register update and the base-index update
This patch is applicable also for 2.6.30.
Tested-by: David Miller <davem@davemloft.net>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Andrea Borgia [Sun, 14 Jun 2009 10:16:17 +0000 (12:16 +0200)]
ALSA: usb-audio - rework quirk for TerraTec Aureon USB 5.1 MkII
This patch changes yet again the ID for the TTA cards, resulting in a
more reasonable name:
1 [Aureon51MkII ]: USB-Audio - Aureon5.1MkII
TerraTec Aureon5.1MkII at usb-0000:00:03.0-2, full speed
Signed-off-by: Andrea Borgia <andrea@borgia.bo.it>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Philipp Zabel [Sun, 14 Jun 2009 10:51:30 +0000 (12:51 +0200)]
ASoC: magician: fix PXA SSP clock polarity
Follow-up fix needed since "ASoC: pxa-ssp.c fix clock/frame invert".
Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Mark Brown [Sun, 14 Jun 2009 10:33:37 +0000 (11:33 +0100)]
ASoC: Instantiate any forgotten DAPM widgets
With the recent changes to the DAPM power checks it has become important
to explicitly instantiate all widgets but some drivers were forgetting
to do that. Since everything needs to do it add a call to instantiate
them immediately before the card registration - it does no harm when it
is called repeatedly and saves work in drivers.
Tested-by: pHilipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Mark Brown [Sat, 13 Jun 2009 10:14:55 +0000 (11:14 +0100)]
ASoC: Revert duplicated code in SSM2602 driver
The Blackfin submission was done as a patch against a different tree
and contained a duplicate hunk which will cause us to loose track of the
substream pointers when shutting down. Remove one of the duplicated
hunks.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Takashi Iwai [Sat, 13 Jun 2009 08:16:43 +0000 (10:16 +0200)]
ALSA: hda - Add quirk for Acer Aspire 6935G
Added model=acer-aspire-8930g for Acer Aspire 6935G (1025:0146).
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai [Sat, 13 Jun 2009 08:12:59 +0000 (10:12 +0200)]
ALSA: ctxfi - Replace atc lock to mutex
The spinlock in atc can cause a sleep in lock:
Kernel failure message 1:
BUG: sleeping function called from invalid context at mm/slub.c:1599
in_atomic(): 0, irqs_disabled(): 1, pid: 2537, name: gstreamer-prope
Pid: 2537, comm: gstreamer-prope Tainted: P
2.6.29.4-167.fc11.x86_64 #1
Call Trace:
[<
ffffffff8103ff0f>] __might_sleep+0x10b/0x110
[<
ffffffff810cd734>] __kmalloc+0x73/0x130
[<
ffffffffa0b4b142>] ? daio_rsc_init+0xaa/0x125 [snd_ctxfi]
[<
ffffffffa0b4b212>] dao_rsc_init+0x55/0x1c0 [snd_ctxfi]
[<
ffffffffa0b4b3d2>] dao_rsc_reinit+0x55/0x5d [snd_ctxfi]
[<
ffffffff813abd6c>] ? _spin_lock_irqsave+0x32/0x3b
[<
ffffffffa0b454fe>] atc_spdif_out_passthru+0x92/0x136 [snd_ctxfi]
...
Since the lock path is no critical path, it can be gracefully
replaced with a mutex.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai [Fri, 12 Jun 2009 18:03:16 +0000 (20:03 +0200)]
Merge branch 'topic/ps3' into for-linus
* topic/ps3:
ALSA: sound/ps3: Correct existing and add missing annotations
ALSA: sound/ps3: Restructure driver source
ALSA: sound/ps3: Fix checkpatch issues
Takashi Iwai [Fri, 12 Jun 2009 18:03:15 +0000 (20:03 +0200)]
Merge branch 'topic/pcm-jiffies-check' into for-linus
* topic/pcm-jiffies-check:
ALSA: pcm - Update document about xrun_debug proc file
Takashi Iwai [Fri, 12 Jun 2009 18:03:13 +0000 (20:03 +0200)]
Merge branch 'topic/misc' into for-linus
* topic/misc:
ALSA: use card device as parent for jack input-devices
Takashi Iwai [Fri, 12 Jun 2009 18:03:11 +0000 (20:03 +0200)]
Merge branch 'topic/lx6464es' into for-linus
* topic/lx6464es:
ALSA: lx6464es - support standard alsa module parameters
Takashi Iwai [Fri, 12 Jun 2009 18:03:09 +0000 (20:03 +0200)]
Merge branch 'topic/hda' into for-linus
* topic/hda:
ALSA: hda - add quirk for STAC92xx (SigmaTel STAC9205)
Takashi Iwai [Fri, 12 Jun 2009 18:03:06 +0000 (20:03 +0200)]
Merge branch 'topic/caiaq' into for-linus
* topic/caiaq:
ALSA: snd_usb_caiaq: set mixername
Takashi Iwai [Fri, 12 Jun 2009 18:03:04 +0000 (20:03 +0200)]
Merge branch 'topic/asoc' into for-linus
* topic/asoc:
ASoC: Fix lm4857 control
Mark Brown [Fri, 12 Jun 2009 15:55:56 +0000 (16:55 +0100)]
ASoC: Remove odd bit clock ratios for WM8903
These are not supported since performance can not be guaranteed
when they are in use.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: stable@kernel.org
Takashi Iwai [Thu, 11 Jun 2009 14:14:11 +0000 (16:14 +0200)]
ALSA: pcm - Update document about xrun_debug proc file
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Tim Blechmann [Thu, 11 Jun 2009 14:03:34 +0000 (16:03 +0200)]
ALSA: lx6464es - support standard alsa module parameters
trivial patch to support the alsa module parameters `index', `id'
and `enable'
Signed-off-by: Tim Blechmann <tim@klingt.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Daniel Mack [Wed, 10 Jun 2009 19:32:01 +0000 (21:32 +0200)]
ALSA: snd_usb_caiaq: set mixername
alsamixer and friends want the mixername to be set. Even though the
driver does not exports a real mixer device, export the name doesn't
harm.
Signed-off-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Simos Xenitellis [Wed, 10 Jun 2009 15:33:31 +0000 (16:33 +0100)]
ALSA: hda - add quirk for STAC92xx (SigmaTel STAC9205)
A quirk is required for 8086:284b (rev 03) [Subsystem: 161f:2073].
The following has been tested with Alsa 1.0.20 (git master).
Background details can be found at
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=4561
http://forum.ubuntu-gr.org/viewtopic.php?f=38&t=5290
Tested-by: Theodora Iliopoulou <th30dr@gmail.com>
Signed-off-by: Simos Xenitellis <simos@gnome.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Kay Sievers [Wed, 10 Jun 2009 17:50:33 +0000 (19:50 +0200)]
ALSA: use card device as parent for jack input-devices
This moves the jack devices from the PCI device into the ALSA card device, which
makes it easier for userspace to find all devices belonging to a specific card
while granting access to logged-in users.
Jack input devices from sound cards can now simply be matched with udev by doing:
SUBSYSTEM="input", SUBSYSTEMS="sound", ...
ls -l /sys/devices/pci0000:00/0000:00:1b.0/sound/card0
controlC0
device -> ../../../0000:00:1b.0
id
input10
input11
input8
input9
number
pcmC0D0c
pcmC0D0p
pcmC0D1p
power
subsystem -> ../../../../../class/sound
uevent
Cc: Lennart Poettering <lennart@0pointer.de>
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Geert Uytterhoeven [Wed, 10 Jun 2009 14:39:03 +0000 (16:39 +0200)]
ALSA: sound/ps3: Correct existing and add missing annotations
probe functions should be __devinit
Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Geert Uytterhoeven [Wed, 10 Jun 2009 14:39:02 +0000 (16:39 +0200)]
ALSA: sound/ps3: Restructure driver source
Sort includes, and reorder code so we can kill the forward declarations
No functional changes
Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Geert Uytterhoeven [Wed, 10 Jun 2009 14:39:01 +0000 (16:39 +0200)]
ALSA: sound/ps3: Fix checkpatch issues
Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Mark Brown [Wed, 10 Jun 2009 12:55:34 +0000 (13:55 +0100)]
ASoC: Fix lm4857 control
Commit
4eaa9819dc08d7bfd1065ce530e31b18a119dcaf changed semantics of
private_value member of kcontrol. This resulted in inability to control
amplifier and subsequently in very low output volume.
Tested-by: Johannes Schauer <josch@pyneo.org>
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Takashi Iwai [Wed, 10 Jun 2009 05:26:49 +0000 (07:26 +0200)]
Merge branch 'topic/usb-audio' into for-linus
* topic/usb-audio:
ALSA: usb - Add boot quirk for C-Media 6206 USB Audio
ALSA: usb-audio - errata corrige for quirk
ALSA: usb-audio - Add quirk for Roland/Edirol M-16DX
ALSA: usb-audio - quirk for USB Aureon cards
Takashi Iwai [Wed, 10 Jun 2009 05:26:48 +0000 (07:26 +0200)]
Merge branch 'topic/seq-kconfig-cleanup' into for-linus
* topic/seq-kconfig-cleanup:
ALSA: clean up the logic for building sequencer modules
Takashi Iwai [Wed, 10 Jun 2009 05:26:46 +0000 (07:26 +0200)]
Merge branch 'topic/section-fix' into for-linus
* topic/section-fix:
ALSA: Add missing __devexit_p() markers
ALSA: powermac - Replace the rest of __init*
ALSA: sound/ppc: update annotations of serveral functions
Takashi Iwai [Wed, 10 Jun 2009 05:26:45 +0000 (07:26 +0200)]
Merge branch 'topic/sc6000' into for-linus
* topic/sc6000:
ALSA: sc6000: enable joystick port
ALSA: sc6000: fix older card initialization
ALSA: sc6000: add support for SC-6600 and SC-7000
Takashi Iwai [Wed, 10 Jun 2009 05:26:44 +0000 (07:26 +0200)]
Merge branch 'topic/riptide' into for-linus
* topic/riptide:
ALSA: riptide - Fix joystick resource handling
ALSA: riptide - Code clean up
Takashi Iwai [Wed, 10 Jun 2009 05:26:43 +0000 (07:26 +0200)]
Merge branch 'topic/pcm-subclass-fix' into for-linus
* topic/pcm-subclass-fix:
ALSA: Remove invalid GENERIC_MIX PCM sublass
Takashi Iwai [Wed, 10 Jun 2009 05:26:41 +0000 (07:26 +0200)]
Merge branch 'topic/pcm-jiffies-check' into for-linus
* topic/pcm-jiffies-check:
ALSA: pcm - A helper function to compose PCM stream name for debug prints
ALSA: pcm - Fix update of runtime->hw_ptr_interrupt
ALSA: pcm - Fix a typo in hw_ptr update check
ALSA: PCM midlevel: lower jiffies check margin using runtime->delay value
ALSA: PCM midlevel: Do not update hw_ptr_jiffies when hw_ptr is not changed
ALSA: PCM midlevel: introduce mask for xrun_debug() macro
ALSA: PCM midlevel: improve fifo_size handling
Takashi Iwai [Wed, 10 Jun 2009 05:26:40 +0000 (07:26 +0200)]
Merge branch 'topic/pcm-delay' into for-linus
* topic/pcm-delay:
ALSA: usbaudio - Add delay account
ALSA: Add extra delay count in PCM
Takashi Iwai [Wed, 10 Jun 2009 05:26:39 +0000 (07:26 +0200)]
Merge branch 'topic/oxygen' into for-linus
* topic/oxygen:
sound: virtuoso: add Xonar Essence ST support
sound: virtuoso: enable HDAV S/PDIF input
sound: virtuoso: add another DX PCI ID
sound: oxygen: reset DMA when stream is closed
Takashi Iwai [Wed, 10 Jun 2009 05:26:37 +0000 (07:26 +0200)]
Merge branch 'topic/misc' into for-linus
* topic/misc:
ALSA: sgio2audio.c: clean up checking
ALSA: burgundy: timeout message is off by one.
ALSA: bt87x - Add a quirk entry for Askey Computer Corp. MagicTView'99
ALSA: parisc/harmony: fix printk format warning
ALSA: keywest: Get rid of useless i2c_device_name() macro
Takashi Iwai [Wed, 10 Jun 2009 05:26:36 +0000 (07:26 +0200)]
Merge branch 'topic/maya44' into for-linus
* topic/maya44:
ALSA: ice1724 - Add ESI Maya44 support
ALSA: ice1724 - Allow spec driver to create own routing controls
ALSA: ice1724 - Add PCI postint to reset sequence
ALSA: ice1724 - Clean up definitions of DMA records
ALSA: ice1724 - Check error in set_rate function
Takashi Iwai [Wed, 10 Jun 2009 05:26:34 +0000 (07:26 +0200)]
Merge branch 'topic/lx6464es' into for-linus
* topic/lx6464es:
ALSA: Add missing description of lx6464es to ALSA-Configuration.txt
ALSA: lx6464es - Disable lx_message_send()
ALSA: lx6464es - Use snd_card_create()
ALSA: lx6464es - driver for the digigram lx6464es interface
Takashi Iwai [Wed, 10 Jun 2009 05:26:32 +0000 (07:26 +0200)]
Merge branch 'topic/hdsp' into for-linus
* topic/hdsp:
ALSA: hdsp - Add a comment about external firmwares for hdsp
ALSA: hdsp: allow firmware loading from inside the kernel
Takashi Iwai [Wed, 10 Jun 2009 05:26:31 +0000 (07:26 +0200)]
Merge branch 'topic/hda' into for-linus
* topic/hda: (51 commits)
ALSA: hda - Fix the previous tagra-8ch patch
ALSA: hda - Add 7.1 support for MSI GX620
ALSA: support Sony Vaio TT
ALSA: hda_intel: fix build error when !PM
ALSA: hda - More Aspire 8930G fixes
ALSA: hda - Acer Aspire 8930G support
ALSA: hda - Limit codec-verb retry to limited hardwares
ALSA: hda - Add codec bus reset and verb-retry at critical errors
ALSA: hda - Reorder and clean-up ALC268 quirk table
ALSA: hda - fix audio on LG R510
ALSA: hda - Macbook[Pro] 5 6ch support
ALSA: hda-intel: improve initialization for ALC262_HP_BPC model
ALSA: hda - Jack Mode changes for Sigmatel boards
ALSA: hda - Support NVIDIA 8 channel HDMI audio
ALSA: hda - Fix a typo in the previous patch
ALSA: hda - Fix reverted LED setup for HP
ALSA: hda - Add more register bits definitions
ALSA: hda - Always sync writes in single_cmd mode
ALSA: hda - Support sync after writing a verb
ALSA: hda - Allow concurrent RIRB access in single_cmd mode
...
Takashi Iwai [Wed, 10 Jun 2009 05:26:29 +0000 (07:26 +0200)]
Merge branch 'topic/emu10k1' into for-linus
* topic/emu10k1:
ALSA: emu10k1 - Fix minimum periods for efx playback
Takashi Iwai [Wed, 10 Jun 2009 05:26:28 +0000 (07:26 +0200)]
Merge branch 'topic/div64-cleanup' into for-linus
* topic/div64-cleanup:
ALSA: Clean up 64bit division functions
Takashi Iwai [Wed, 10 Jun 2009 05:26:27 +0000 (07:26 +0200)]
Merge branch 'topic/ctxfi' into for-linus
* topic/ctxfi: (35 commits)
ALSA: ctxfi - Clear PCM resources at hw_params and hw_free
ALSA: ctxfi - Check the presence of SRC instance in PCM pointer callbacks
ALSA: ctxfi - Add missing start check in atc_pcm_playback_start()
ALSA: ctxfi - Add use_system_timer module option
ALSA: ctxfi - Fix wrong model id for UAA
ALSA: ctxfi - Clean up probe routines
ALSA: ctxfi - Fix / clean up hw20k2 chip code
ALSA: ctxfi - Fix possible buffer pointer overrun
ALSA: ctxfi - Remove useless initializations and cast
ALSA: ctxfi - Fix DMA mask for emu20k2 chip
ALSA: ctxfi - Make volume controls more intuitive
ALSA: ctxfi - Optimize the native timer handling using wc counter
ALSA: ctxfi - Add missing inclusion of linux/math64.h
ALSA: ctxfi - Set device 0 for mixer control elements
ALSA: ctxfi - Clean up / optimize
ALSA: ctxfi - Set periods_min to 2
ALSA: ctxfi - Use native timer interrupt on emu20k1
ALSA: ctxfi - Fix previous fix for 64bit DMA
ALSA: ctxfi - Fix endian-dependent codes
ALSA: ctxfi - Allow 64bit DMA
...
Takashi Iwai [Wed, 10 Jun 2009 05:26:26 +0000 (07:26 +0200)]
Merge branch 'topic/core-id-check' into for-linus
* topic/core-id-check:
ALSA: Core - clean up snd_card_set_id* calls and remove possible id collision
ALSA: Fix double locking of card list in snd_card_register()
Takashi Iwai [Wed, 10 Jun 2009 05:26:24 +0000 (07:26 +0200)]
Merge branch 'topic/cleanup' into for-linus
* topic/cleanup:
ALSA: Remove deprecated include/sound/driver.h
ALSA: Remove deprecated snd_card_new()
Takashi Iwai [Wed, 10 Jun 2009 05:26:23 +0000 (07:26 +0200)]
Merge branch 'topic/caiaq' into for-linus
* topic/caiaq:
ALSA: snd_usb_caiaq: bump version number
ALSA: snd_usb_caiaq: give better shortname
ALSA: Core - add snd_card_set_id() function
ALSA: snd_usb_caiaq: give better longname
ALSA: snd_usb_caiaq: use strlcpy
ALSA: snd_usb_caiaq: clean whitespaces
Takashi Iwai [Wed, 10 Jun 2009 05:26:22 +0000 (07:26 +0200)]
Merge branch 'topic/ca0106' into for-linus
* topic/ca0106:
ALSA: ca0106 - Fix master volume scale
ALSA: ca0106 - Add missing card->mixername field setup
ALSA: ca0106 - Add missing registrations of vmaster controls
Takashi Iwai [Wed, 10 Jun 2009 05:26:21 +0000 (07:26 +0200)]
Merge branch 'topic/au88x0' into for-linus
* topic/au88x0:
ALSA: au88x0: fix wrong period_elapsed() call
ALSA: au88x0: fix .pointer callback
Takashi Iwai [Wed, 10 Jun 2009 05:26:18 +0000 (07:26 +0200)]
Merge branch 'topic/asoc' into for-linus
* topic/asoc: (135 commits)
ASoC: Apostrophe patrol
ASoC: codec tlv320aic23 fix bogus divide by 0 message
ASoC: fix NULL pointer dereference in soc_suspend()
ASoC: Fix build error in twl4030.c
ASoC: SSM2602: assign last substream to the master when shutting down
ASoC: Blackfin: document how anomaly
05000250 is handled
ASoC: Blackfin: set the transfer size according the ac97_frame size
ASoC: SSM2602: remove unsupported sample rates
ASoC: TWL4030: Check the interface format for 4 channel mode
ASoC: TWL4030: Use reg_cache in twl4030_init_chip
ASoC: Initialise dev for the dummy S/PDIF DAI
ASoC: Add dummy S/PDIF codec support
ASoC: correct print specifiers for unsigneds
ASoC: Modify mpc5200 AC97 driver to use V9 of spin_event_timeout()
ASoC: Switch FSL SSI DAI over to symmetric_rates
ASoC: Mark MPC5200 AC97 as BROKEN until PowerPC merge issues are resolved
ASoC: Fabric bindings for STAC9766 on the Efika
ASoC: Support for AC97 on Phytec pmc030 base board.
ASoC: AC97 driver for mpc5200
ASoC: Main rewite of the mpc5200 audio DMA code
...
Linus Torvalds [Wed, 10 Jun 2009 03:05:27 +0000 (20:05 -0700)]
Linux 2.6.30
Peter Botha [Wed, 10 Jun 2009 00:16:32 +0000 (17:16 -0700)]
char: mxser, fix ISA board lookup
There's a bug in the mxser kernel module that still appears in the
2.6.29.4 kernel.
mxser_get_ISA_conf takes a ioaddress as its first argument, by passing the
not of the ioaddr, you're effectively passing 0 which means it won't be
able to talk to an ISA card. I have tested this, and removing the !
fixes the problem.
Cc: "Peter Botha" <peterb@goldcircle.co.za>
Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Jan Kara [Tue, 9 Jun 2009 23:26:26 +0000 (16:26 -0700)]
jbd: fix race in buffer processing in commit code
In commit code, we scan buffers attached to a transaction. During this
scan, we sometimes have to drop j_list_lock and then we recheck whether
the journal buffer head didn't get freed by journal_try_to_free_buffers().
But checking for buffer_jbd(bh) isn't enough because a new journal head
could get attached to our buffer head. So add a check whether the journal
head remained the same and whether it's still at the same transaction and
list.
This is a nasty bug and can cause problems like memory corruption (use after
free) or trigger various assertions in JBD code (observed).
Signed-off-by: Jan Kara <jack@suse.cz>
Cc: <stable@kernel.org>
Cc: <linux-ext4@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Ian Kent [Tue, 9 Jun 2009 23:26:24 +0000 (16:26 -0700)]
autofs4: remove hashed check in validate_wait()
The recent ->lookup() deadlock correction required the directory inode
mutex to be dropped while waiting for expire completion. We were
concerned about side effects from this change and one has been identified.
I saw several error messages.
They cause autofs to become quite confused and don't really point to the
actual problem.
Things like:
handle_packet_missing_direct:1376: can't find map entry for (43,
1827932)
which is usually totally fatal (although in this case it wouldn't be
except that I treat is as such because it normally is).
do_mount_direct: direct trigger not valid or already mounted
/test/nested/g3c/s1/ss1
which is recoverable, however if this problem is at play it can cause
autofs to become quite confused as to the dependencies in the mount tree
because mount triggers end up mounted multiple times. It's hard to
accurately check for this over mounting case and automount shouldn't need
to if the kernel module is doing its job.
There was one other message, similar in consequence of this last one but I
can't locate a log example just now.
When checking if a mount has already completed prior to adding a new mount
request to the wait queue we check if the dentry is hashed and, if so, if
it is a mount point. But, if a mount successfully completed while we
slept on the wait queue mutex the dentry must exist for the mount to have
completed so the test is not really needed.
Mounts can also be done on top of a global root dentry, so for the above
case, where a mount request completes and the wait queue entry has already
been removed, the hashed test returning false can cause an incorrect
callback to the daemon. Also, d_mountpoint() is not sufficient to check
if a mount has completed for the multi-mount case when we don't have a
real mount at the base of the tree.
Signed-off-by: Ian Kent <raven@themaw.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Mike Frysinger [Tue, 9 Jun 2009 23:26:23 +0000 (16:26 -0700)]
shm: fix unused warnings on nommu
The massive nommu update (
8feae131) resulted in these warnings:
ipc/shm.c: In function `sys_shmdt':
ipc/shm.c:974: warning: unused variable `size'
ipc/shm.c:972: warning: unused variable `next'
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Cc: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Tue, 9 Jun 2009 15:48:32 +0000 (08:48 -0700)]
Merge git://git./linux/kernel/git/rusty/linux-2.6-for-linus
* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
kvm: fix kvm reboot crash when MAXSMP is used
cpumask: alloc zeroed cpumask for static cpumask_var_ts
cpumask: introduce zalloc_cpumask_var
Linus Torvalds [Tue, 9 Jun 2009 15:47:43 +0000 (08:47 -0700)]
Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block
* 'for-linus' of git://git.kernel.dk/linux-2.6-block:
bsg: setting rq->bio to NULL
Linus Torvalds [Tue, 9 Jun 2009 15:47:27 +0000 (08:47 -0700)]
Merge git://git./linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
cls_cgroup: Fix oops when user send improperly 'tc filter add' request
r8169: fix crash when large packets are received
Linus Torvalds [Tue, 9 Jun 2009 15:41:22 +0000 (08:41 -0700)]
Merge branch 'for-linus' of git://neil.brown.name/md
* 'for-linus' of git://neil.brown.name/md:
md/raid5: fix bug in reshape code when chunk_size decreases.
md/raid5 - avoid deadlocks in get_active_stripe during reshape
md/raid5: use conf->raid_disks in preference to mddev->raid_disk
FUJITA Tomonori [Tue, 9 Jun 2009 13:17:37 +0000 (15:17 +0200)]
bsg: setting rq->bio to NULL
Due to commit
1cd96c242a829d52f7a5ae98f554ca9775429685 ("block: WARN
in __blk_put_request() for potential bio leak"), BSG SMP requests get
the false warnings:
WARNING: at block/blk-core.c:1068 __blk_put_request+0x52/0xc0()
This sets rq->bio to NULL to avoid that false warnings.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Avi Kivity [Sat, 6 Jun 2009 21:52:35 +0000 (14:52 -0700)]
kvm: fix kvm reboot crash when MAXSMP is used
one system was found there is crash during reboot then kvm/MAXSMP
Sending all processes the KILL signal... done
Please stand by while rebooting the system...
[ 1721.856538] md: stopping all md devices.
[ 1722.852139] kvm: exiting hardware virtualization
[ 1722.854601] BUG: unable to handle kernel NULL pointer dereference at (null)
[ 1722.872219] IP: [<
ffffffff8102c6b6>] hardware_disable+0x4c/0xb4
[ 1722.877955] PGD 0
[ 1722.880042] Oops: 0000 [#1] SMP
[ 1722.892548] last sysfs file: /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/host0/target0:2:0/0:2:0:0/vendor
[ 1722.900977] CPU 9
[ 1722.912606] Modules linked in:
[ 1722.914226] Pid: 0, comm: swapper Not tainted
2.6.30-rc7-tip-01843-g2305324-dirty #299 ...
[ 1722.932589] RIP: 0010:[<
ffffffff8102c6b6>] [<
ffffffff8102c6b6>] hardware_disable+0x4c/0xb4
[ 1722.942709] RSP: 0018:
ffffc900010b6ed8 EFLAGS:
00010046
[ 1722.956121] RAX:
0000000000000000 RBX:
ffffc9000e253140 RCX:
0000000000000009
[ 1722.972202] RDX:
000000000000b020 RSI:
ffffc900010c3220 RDI:
ffffffffffffd790
[ 1722.977399] RBP:
ffffc900010b6f08 R08:
0000000000000000 R09:
0000000000000000
[ 1722.995149] R10:
00000000000004b8 R11:
966912b6c78fddbd R12:
0000000000000009
[ 1723.011551] R13:
000000000000b020 R14:
0000000000000009 R15:
0000000000000000
[ 1723.019898] FS:
0000000000000000(0000) GS:
ffffc900010b3000(0000) knlGS:
0000000000000000
[ 1723.034389] CS: 0010 DS: 0018 ES: 0018 CR0:
000000008005003b
[ 1723.041164] CR2:
0000000000000000 CR3:
0000000001001000 CR4:
00000000000006e0
[ 1723.056192] DR0:
0000000000000000 DR1:
0000000000000000 DR2:
0000000000000000
[ 1723.072546] DR3:
0000000000000000 DR6:
00000000ffff0ff0 DR7:
0000000000000400
[ 1723.080562] Process swapper (pid: 0, threadinfo
ffff88107e464000, task
ffff88047e5a2550)
[ 1723.096144] Stack:
[ 1723.099071]
0000000000000046 ffffc9000e253168 966912b6c78fddbd ffffc9000e253140
[ 1723.115471]
ffff880c7d4304d0 ffffc9000e253168 ffffc900010b6f28 ffffffff81011022
[ 1723.132428]
ffffc900010b6f48 966912b6c78fddbd ffffc900010b6f48 ffffffff8100b83b
[ 1723.141973] Call Trace:
[ 1723.142981] <IRQ> <0> [<
ffffffff81011022>] kvm_arch_hardware_disable+0x26/0x3c
[ 1723.158153] [<
ffffffff8100b83b>] hardware_disable+0x3f/0x55
[ 1723.172168] [<
ffffffff810b95f6>] generic_smp_call_function_interrupt+0x76/0x13c
[ 1723.178836] [<
ffffffff8104cbea>] smp_call_function_interrupt+0x3a/0x5e
[ 1723.194689] [<
ffffffff81035bf3>] call_function_interrupt+0x13/0x20
[ 1723.199750] <EOI> <0> [<
ffffffff814ad3b4>] ? acpi_idle_enter_c1+0xd3/0xf4
[ 1723.217508] [<
ffffffff814ad3ae>] ? acpi_idle_enter_c1+0xcd/0xf4
[ 1723.232172] [<
ffffffff814ad4bc>] ? acpi_idle_enter_bm+0xe7/0x2ce
[ 1723.235141] [<
ffffffff81a8d93f>] ? __atomic_notifier_call_chain+0x0/0xac
[ 1723.253381] [<
ffffffff818c3dff>] ? menu_select+0x58/0xd2
[ 1723.258179] [<
ffffffff818c2c9d>] ? cpuidle_idle_call+0xa4/0xf3
[ 1723.272828] [<
ffffffff81034085>] ? cpu_idle+0xb8/0x101
[ 1723.277085] [<
ffffffff81a80163>] ? start_secondary+0x1bc/0x1d7
[ 1723.293708] Code: b0 00 00 65 48 8b 04 25 28 00 00 00 48 89 45 e0 31 c0 48 8b 04 cd 30 ee 27 82 49 89 cc 49 89 d5 48 8b 04 10 48 8d b8 90 d7 ff ff <48> 8b 87 70 28 00 00 48 8d 98 90 d7 ff ff eb 16 e8 e9 fe ff ff
[ 1723.335524] RIP [<
ffffffff8102c6b6>] hardware_disable+0x4c/0xb4
[ 1723.342076] RSP <
ffffc900010b6ed8>
[ 1723.352021] CR2:
0000000000000000
[ 1723.354348] ---[ end trace
e2aec53dae150aa1 ]---
it turns out that we need clear cpus_hardware_enabled in that case.
Reported-and-tested-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Yinghai Lu [Sat, 6 Jun 2009 21:51:36 +0000 (14:51 -0700)]
cpumask: alloc zeroed cpumask for static cpumask_var_ts
These are defined as static cpumask_var_t so if MAXSMP is not used,
they are cleared already. Avoid surprises when MAXSMP is enabled.
Signed-off-by: Yinghai Lu <yinghai.lu@kernel.org>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Yinghai Lu [Sat, 6 Jun 2009 21:50:36 +0000 (14:50 -0700)]
cpumask: introduce zalloc_cpumask_var
So can get cpumask_var with cpumask_clear
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Minoru Usui [Tue, 9 Jun 2009 11:03:09 +0000 (04:03 -0700)]
cls_cgroup: Fix oops when user send improperly 'tc filter add' request
I found a bug in cls_cgroup_change() in cls_cgroup.c.
cls_cgroup_change() expected tca[TCA_OPTIONS] was set from user space properly,
but tc in iproute2-2.6.29-1 (which I used) didn't set it.
In the current source code of tc in git, it set tca[TCA_OPTIONS].
git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git
If we always use a newest iproute2 in git when we use cls_cgroup,
we don't face this oops probably.
But I think, kernel shouldn't panic regardless of use program's behaviour.
Signed-off-by: Minoru Usui <usui@mxm.nes.nec.co.jp>
Signed-off-by: David S. Miller <davem@davemloft.net>
Eric Dumazet [Tue, 9 Jun 2009 11:01:02 +0000 (04:01 -0700)]
r8169: fix crash when large packets are received
Michael Tokarev reported receiving a large packet could crash
a machine with RTL8169 NIC.
( original thread at http://lkml.org/lkml/2009/6/8/192 )
Problem is this driver tells that NIC frames up to 16383 bytes
can be received but provides skb to rx ring allocated with
smaller sizes (1536 bytes in case standard 1500 bytes MTU is used)
When a frame larger than what was allocated by driver is received,
dma transfert can occurs past the end of buffer and corrupt
kernel memory.
Fix is to tell to NIC what is the maximum size a frame can be.
This bug is very old, (before git introduction, linux-2.6.10), and
should be backported to stable versions.
Reported-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Tested-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: David S. Miller <davem@davemloft.net>
NeilBrown [Tue, 9 Jun 2009 06:32:22 +0000 (16:32 +1000)]
md/raid5: fix bug in reshape code when chunk_size decreases.
Now that we support changing the chunksize, we calculate
"reshape_sectors" to be the max of number of sectors in old
and new chunk size.
However there is one please where we still use 'chunksize'
rather than 'reshape_sectors'.
This causes a reshape that reduces the size of chunks to freeze.
Signed-off-by: NeilBrown <neilb@suse.de>
Takashi Iwai [Tue, 9 Jun 2009 06:19:02 +0000 (08:19 +0200)]
ALSA: ctxfi - Clear PCM resources at hw_params and hw_free
Currently the PCM resources are allocated only once and ever in prepare
callback, assuming that the PCM parameters are never changed. But it's
not true.
This patch adds the call of atc->pcm_release_resources() at hw_params
and hw_free callbacks to assure that the PCM setup is done correctly
for each h/w parameter changes.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai [Tue, 9 Jun 2009 06:17:14 +0000 (08:17 +0200)]
ALSA: ctxfi - Check the presence of SRC instance in PCM pointer callbacks
The SRC instances may not exist when PCM pointer callback is called at
the state before initialization is finished. Add the NULL check just
to be sure.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai [Tue, 9 Jun 2009 06:16:20 +0000 (08:16 +0200)]
ALSA: ctxfi - Add missing start check in atc_pcm_playback_start()
Signed-off-by: Takashi Iwai <tiwai@suse.de>
NeilBrown [Tue, 9 Jun 2009 04:39:59 +0000 (14:39 +1000)]
md/raid5 - avoid deadlocks in get_active_stripe during reshape
md has functionality to 'quiesce' and array so that all pending
IO completed and no new IO starts. This is used to achieve a
stable state before making internal changes.
Currently this quiescing applies equally to normal IO, resync
IO, and reshape IO.
However there is a problem with applying it to reshape IO.
Reshape can have multiple 'stripe_heads' that must be active together.
If the quiesce come between allocating the first and the last of
such a collection, then we deadlock, as the last will not be allocated
until the quiesce is lifted, the quiesce will not be lifted until the
first (which has been allocated) gets used, and that first cannot be
used until the last is allocated.
It is not necessary to inhibit reshape IO when a quiesce is
requested. Those places in the code that require a full quiesce will
ensure the reshape thread is not running at all.
So allow reshape requests to get access to new stripe_heads without
being blocked by a 'quiesce'.
This only affects in-place reshapes (i.e. where the array does not
grow or shrink) and these are only newly supported. So this patch is
not needed in earlier kernels.
Signed-off-by: NeilBrown <neilb@suse.de>
NeilBrown [Tue, 9 Jun 2009 04:30:31 +0000 (14:30 +1000)]
md/raid5: use conf->raid_disks in preference to mddev->raid_disk
mddev->raid_disks can be changed and any time by a request from
user-space. It is a suggestion as to what number of raid_disks is
desired.
conf->raid_disks can only be changed by the raid5 module with suitable
locks in place. It is a statement as to the current number of
raid_disks.
There are two places where the latter should be used, but the former
is used. This can lead to a crash when reshaping an array.
This patch changes to mddev-> to conf->
Signed-off-by: NeilBrown <neilb@suse.de>
Takashi Iwai [Mon, 8 Jun 2009 19:31:50 +0000 (21:31 +0200)]
ALSA: ctxfi - Add use_system_timer module option
Added use_system_timer module option to force to use the system timer
instead of emu20k1 timer irq for debugging.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Linus Torvalds [Mon, 8 Jun 2009 19:31:53 +0000 (12:31 -0700)]
async: Fix lack of boot-time console due to insufficient synchronization
Our async work synchronization was broken by "async: make sure
independent async domains can't accidentally entangle" (commit
d5a877e8dd409d8c702986d06485c374b705d340), because it would report
the wrong lowest active async ID when there was both running and
pending async work.
This caused things like no being able to read the root filesystem,
resulting in missing console devices and inability to run 'init',
causing a boot-time panic.
This fixes it by properly returning the lowest pending async ID: if
there is any running async work, that will have a lower ID than any
pending work, and we should _not_ look at the pending work list.
There were alternative patches from Jaswinder and James, but this one
also cleans up the code by removing the pointless 'ret' variable and
the unnecesary testing for an empty list around 'for_each_entry()' (if
the list is empty, the for_each_entry() thing just won't execute).
Fixes-bug: http://bugzilla.kernel.org/show_bug.cgi?id=13474
Reported-and-tested-by: Chris Clayton <chris2553@googlemail.com>
Cc: Jaswinder Singh Rajput <jaswinder@kernel.org>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>