1. 10 2月, 2014 2 次提交
  2. 23 1月, 2014 2 次提交
  3. 15 1月, 2014 1 次提交
  4. 11 1月, 2014 1 次提交
    • T
      ALSA: PCM: Warn when buffer preallocation fails · 6ab08ced
      Takashi Iwai 提交于
      The failures of buffer preallocations at driver initializations aren't
      critical but it's still helpful to inform, so that user can know that
      something doesn't work as expected.
      
      For example, the recent page allocator change triggered regressions,
      but developers didn't notice until recently because the driver didn't
      complain.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      6ab08ced
  5. 09 1月, 2014 4 次提交
  6. 05 1月, 2014 1 次提交
  7. 17 12月, 2013 1 次提交
  8. 15 11月, 2013 2 次提交
  9. 12 11月, 2013 1 次提交
  10. 07 11月, 2013 1 次提交
    • V
      ALSA: compress: fix drain calls blocking other compress functions (v6) · f44f2a54
      Vinod Koul 提交于
      The drain and drain_notify callback were blocked by low level driver
      until the draining was complete. Due to this being invoked with big
      fat mutex held, others ops like reading timestamp, calling pause, drop
      were blocked.
      
      So to fix this we add a new snd_compr_drain_notify() API. This would
      be required to be invoked by low level driver when drain or partial
      drain has been completed by the DSP. Thus we make the drain and
      partial_drain callback as non blocking and driver returns immediately
      after notifying DSP.  The waiting is done while releasing the lock so
      that other ops can go ahead.
      
      [ The commit 917f4b5c was wrongly applied from the preliminary
        patch.  This commit corrects to the final version.
        Sorry for inconvenience!  -- tiwai ]
      Signed-off-by: NVinod Koul <vinod.koul@intel.com>
      CC: stable@vger.kernel.org
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      f44f2a54
  11. 01 11月, 2013 1 次提交
    • R
      ALSA: fix oops in snd_pcm_info() caused by ASoC DPCM · a4461f41
      Russell King 提交于
      Unable to handle kernel NULL pointer dereference at virtual address 00000008
      pgd = d5300000
      [00000008] *pgd=0d265831, *pte=00000000, *ppte=00000000
      Internal error: Oops: 17 [#1] PREEMPT ARM
      CPU: 0 PID: 2295 Comm: vlc Not tainted 3.11.0+ #755
      task: dee74800 ti: e213c000 task.ti: e213c000
      PC is at snd_pcm_info+0xc8/0xd8
      LR is at 0x30232065
      pc : [<c031b52c>]    lr : [<30232065>]    psr: a0070013
      sp : e213dea8  ip : d81cb0d0  fp : c05f7678
      r10: c05f7770  r9 : fffffdfd  r8 : 00000000
      r7 : d8a968a8  r6 : d8a96800  r5 : d8a96200  r4 : d81cb000
      r3 : 00000000  r2 : d81cb000  r1 : 00000001  r0 : d8a96200
      Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
      Control: 10c5387d  Table: 15300019  DAC: 00000015
      Process vlc (pid: 2295, stack limit = 0xe213c248)
      [<c031b52c>] (snd_pcm_info) from [<c031b570>] (snd_pcm_info_user+0x34/0x9c)
      [<c031b570>] (snd_pcm_info_user) from [<c03164a4>] (snd_pcm_control_ioctl+0x274/0x280)
      [<c03164a4>] (snd_pcm_control_ioctl) from [<c0311458>] (snd_ctl_ioctl+0xc0/0x55c)
      [<c0311458>] (snd_ctl_ioctl) from [<c00eca84>] (do_vfs_ioctl+0x80/0x31c)
      [<c00eca84>] (do_vfs_ioctl) from [<c00ecd5c>] (SyS_ioctl+0x3c/0x60)
      [<c00ecd5c>] (SyS_ioctl) from [<c000e500>] (ret_fast_syscall+0x0/0x48)
      Code: e1a00005 e59530dc e3a01001 e1a02004 (e5933008)
      ---[ end trace cb3d9bdb8dfefb3c ]---
      
      This is provoked when the ASoC front end is open along with its backend,
      (which causes the backend to have a runtime assigned to it) and then the
      SNDRV_CTL_IOCTL_PCM_INFO is requested for the (visible) backend device.
      
      Resolve this by ensuring that ASoC internal backend devices are not
      visible to userspace, just as the commentry for snd_pcm_new_internal()
      says it should be.
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      Acked-by: NMark Brown <broonie@linaro.org>
      Cc: <stable@vger.kernel.org> [v3.4+]
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      a4461f41
  12. 29 10月, 2013 5 次提交
  13. 28 10月, 2013 2 次提交
  14. 25 10月, 2013 1 次提交
  15. 24 10月, 2013 3 次提交
  16. 26 9月, 2013 1 次提交
  17. 20 9月, 2013 1 次提交
  18. 19 8月, 2013 1 次提交
    • T
      ALSA: pcm: Use snd_printd_ratelimit() · 74d779ab
      Tim Gardner 提交于
      The use of snd_printd_ratelimit() supresses superfluous output from
      printk_ratelimit() when CONFIG_SND_DEBUG is not defined. For example,
      
      [   43.753692] snd_pcm_update_hw_ptr0: 26 callbacks suppressed
      [   48.822131] snd_pcm_update_hw_ptr0: 25 callbacks suppressed
      [   53.894953] snd_pcm_update_hw_ptr0: 25 callbacks suppressed
      [   58.997761] snd_pcm_update_hw_ptr0: 25 callbacks suppressed
      [   64.100952] snd_pcm_update_hw_ptr0: 25 callbacks suppressed
      
      fills the log even when no debug output is actually produced.
      
      Cc: Jaroslav Kysela <perex@perex.cz>
      Cc: Takashi Iwai <tiwai@suse.de>
      Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
      Cc: Lars-Peter Clausen <lars@metafoo.de>
      Cc: Yacine Belkadi <yacine.belkadi.1@gmail.com>
      Signed-off-by: NTim Gardner <tim.gardner@canonical.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      74d779ab
  19. 16 8月, 2013 1 次提交
  20. 15 8月, 2013 1 次提交
  21. 29 7月, 2013 1 次提交
  22. 17 7月, 2013 1 次提交
    • T
      ALSA: seq-oss: Initialize MIDI clients asynchronously · 256ca9c3
      Takashi Iwai 提交于
      We've got bug reports that the module loading stuck on Debian system
      with 3.10 kernel.  The debugging session revealed that the initial
      registration of OSS sequencer clients stuck at module loading time,
      which involves again with request_module() at the init phase.  This is
      triggered only by special --install stuff Debian is using, but it's
      still not good to have such loops.
      
      As a workaround, call the registration part asynchronously.  This is a
      better approach irrespective of the hang fix, in anyway.
      Reported-and-tested-by: NPhilipp Matthias Hahn <pmhahn@pmhahn.de>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      256ca9c3
  23. 03 7月, 2013 1 次提交
  24. 29 6月, 2013 1 次提交
  25. 24 6月, 2013 1 次提交
    • T
      ALSA: vmaster: Add snd_ctl_sync_vmaster() helper function · 1ca2f2ec
      Takashi Iwai 提交于
      Introduce a new helper function, snd_ctl_sync_vmaster(), which updates
      the slave put callbacks forcibly as well as calling the hook.  This
      will be used in the upcoming patch in HD-audio codec driver for
      toggling the mute in vmaster slaves.
      
      Along with the new function, the old snd_ctl_sync_vmaster_hook() is
      replaced as a macro calling with the argument hook_only=true.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      1ca2f2ec
  26. 15 6月, 2013 1 次提交
  27. 24 5月, 2013 1 次提交
    • T
      ALSA: Add kconfig to specify the max card numbers · 7bb2491b
      Takashi Iwai 提交于
      Currently ALSA supports up to 32 card instances when the dynamic minor
      is used.  While 32 cards are usually big enough for normal use cases,
      there are sometimes weird requirements with more card support.
      
      Actually, this limitation, 32, comes from the index option, where you
      can pass the bit mask to assign the card.  Other than that, we can
      actually give more cards up to the minor number limits (currently 256,
      which can be extended more, too).
      
      This patch adds a new Kconfig to specify the max card numbers, and
      changes a few places to accept more than 32 cards.
      
      The only incompatibility with high card numbers would be the handling
      of index option.  The index option can be still used to pass the
      bitmask for card assignments, but this works only up to 32 slots.
      More than 32, no bitmask style option is available but only a single
      slot can be specified via index option.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      7bb2491b