1. 24 8月, 2011 2 次提交
  2. 26 5月, 2011 1 次提交
  3. 22 3月, 2011 1 次提交
  4. 11 3月, 2011 1 次提交
  5. 08 3月, 2011 2 次提交
    • C
      ALSA: control: clean up snd_ctl_hole_check() · 0e82e5fa
      Clemens Ladisch 提交于
      The return value of snd_ctl_hole_check() is used only to detect whether
      to continue the loop in snd_ctl_find_hole() or not, so we can simplify
      the code by changing this return type to a boolean.  Also rename this
      function to better show what it actually does.
      Signed-off-by: NClemens Ladisch <clemens@ladisch.de>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      0e82e5fa
    • C
      ALSA: control: fix numid conflict check for new controls · 7c733587
      Clemens Ladisch 提交于
      The purpose of the snd_ctl_hole_check() function is to find conflicts
      between the numerical IDs of the new control and those of any existing
      controls.  However, it would fail to detect an existing control whose
      count is smaller than the new control's count and whose interval of IDs
      is entirely contained in the interval of the new control's IDs.
      
      To fix this, use the correct formula to detect overlapping intervals,
      which happens to simplify the condition.
      
      This problem was not encountered so far because ALSA does not yet allow
      drivers to allocate specific control IDs.
      Signed-off-by: NClemens Ladisch <clemens@ladisch.de>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      7c733587
  6. 10 1月, 2011 1 次提交
  7. 29 9月, 2010 1 次提交
    • D
      ALSA: prevent heap corruption in snd_ctl_new() · 5591bf07
      Dan Rosenberg 提交于
      The snd_ctl_new() function in sound/core/control.c allocates space for a
      snd_kcontrol struct by performing arithmetic operations on a
      user-provided size without checking for integer overflow.  If a user
      provides a large enough size, an overflow will occur, the allocated
      chunk will be too small, and a second user-influenced value will be
      written repeatedly past the bounds of this chunk.  This code is
      reachable by unprivileged users who have permission to open
      a /dev/snd/controlC* device (on many distros, this is group "audio") via
      the SNDRV_CTL_IOCTL_ELEM_ADD and SNDRV_CTL_IOCTL_ELEM_REPLACE ioctls.
      Signed-off-by: NDan Rosenberg <drosenberg@vsecurity.com>
      Cc: <stable@kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      5591bf07
  8. 13 4月, 2010 1 次提交
    • T
      ALSA: core - Define llseek fops · 02f4865f
      Takashi Iwai 提交于
      Set no_llseek to llseek file ops of each sound component (but for hwdep).
      This avoids the implicit BKL invocation via generic_file_llseek() used
      as default when fops.llseek is NULL.
      
      Also call nonseekable_open() at each open ops to ensure the file flags
      have no seek bit.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      02f4865f
  9. 01 2月, 2010 2 次提交
  10. 18 11月, 2009 1 次提交
  11. 06 11月, 2009 2 次提交
  12. 17 8月, 2009 4 次提交
  13. 14 4月, 2009 1 次提交
  14. 16 3月, 2009 1 次提交
    • J
      Rationalize fasync return values · 60aa4924
      Jonathan Corbet 提交于
      Most fasync implementations do something like:
      
           return fasync_helper(...);
      
      But fasync_helper() will return a positive value at times - a feature used
      in at least one place.  Thus, a number of other drivers do:
      
           err = fasync_helper(...);
           if (err < 0)
                   return err;
           return 0;
      
      In the interests of consistency and more concise code, it makes sense to
      map positive return values onto zero where ->fasync() is called.
      
      Cc: Al Viro <viro@ZenIV.linux.org.uk>
      Signed-off-by: NJonathan Corbet <corbet@lwn.net>
      60aa4924
  15. 02 11月, 2008 1 次提交
    • A
      saner FASYNC handling on file close · 233e70f4
      Al Viro 提交于
      As it is, all instances of ->release() for files that have ->fasync()
      need to remember to evict file from fasync lists; forgetting that
      creates a hole and we actually have a bunch that *does* forget.
      
      So let's keep our lives simple - let __fput() check FASYNC in
      file->f_flags and call ->fasync() there if it's been set.  And lose that
      crap in ->release() instances - leaving it there is still valid, but we
      don't have to bother anymore.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      233e70f4
  16. 29 10月, 2008 1 次提交
  17. 09 9月, 2008 1 次提交
  18. 13 8月, 2008 1 次提交
  19. 13 6月, 2008 1 次提交
  20. 01 2月, 2008 2 次提交
    • T
      [ALSA] Remove sound/driver.h · 9004acc7
      Takashi Iwai 提交于
      This header file exists only for some hacks to adapt alsa-driver
      tree.  It's useless for building in the kernel.  Let's move a few
      lines in it to sound/core.h and remove it.
      With this patch, sound/driver.h isn't removed but has just a single
      compile warning to include it.  This should be really killed in
      future.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      Signed-off-by: NJaroslav Kysela <perex@perex.cz>
      9004acc7
    • T
      [ALSA] Remove indirect control access · 8ace4f3c
      Takashi Iwai 提交于
      This patch removes the indirect control access to the control elements.
      The indirect access has never been used and is even broken on 32bit
      ioctl wrapper.  Let's clean it up.
      The pointers still remain in snd_ctl_elem_* structs just to make sure
      that the struct size won't change.  Once after checking the size
      consistency, we can get rid of them, too.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      Signed-off-by: NJaroslav Kysela <perex@perex.cz>
      8ace4f3c
  21. 23 10月, 2007 1 次提交
  22. 16 10月, 2007 3 次提交
  23. 09 5月, 2007 1 次提交
  24. 13 2月, 2007 1 次提交
  25. 09 2月, 2007 2 次提交
  26. 20 12月, 2006 1 次提交
  27. 22 10月, 2006 1 次提交
  28. 23 9月, 2006 2 次提交