1. 03 Jun, 2009 1 commit
    • Mark Brown's avatar
      ALSA: Fix double locking of card list in snd_card_register() · 872c7820
      Mark Brown authored
      The introduction of snd_card_set_id() added a lock on the card list
      to the old choose_default_id() function when using it to implement
      the new API call. This lock is needed to allow us to walk the list
      and check to see if our new name is a duplicate. Unfortunately this
      causes a lockup when called from snd_card_register() (in cases
      where no ID is supplied for the card) since the card list is already
      locked there.
      
      Fix this fairly hideously by factoring out the implementation and
      using a flag to indicate if the lock should be held. A better fix
      would probably be to refactor snd_card_register() to move the
      _set_id() outside the locking region but I can't immediately see
      anything I can convince myself is safe.
      Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      872c7820
  2. 02 Jun, 2009 1 commit
    • Jaroslav Kysela's avatar
      ALSA: Core - add snd_card_set_id() function · 10a8ebbb
      Jaroslav Kysela authored
      Introduce snd_card_set_id() function to allow lowlevel drivers to set
      default identification name for card slot. The function checks also
      for identification name collisions and tries to create unique name.
      
      Also, the snd_card_create() function is simplified, because this new
      function is used. As bonus, proper name collision checks are evaluated
      at the card create time.
      Signed-off-by: default avatarJaroslav Kysela <perex@perex.cz>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      10a8ebbb
  3. 29 May, 2009 27 commits
  4. 28 May, 2009 11 commits