At Tue, 29 Apr 2014 14:04:15 -0400, Bryan Quigley wrote: > > I pastebined the full boots syslog here: http://pastebin.ubuntu.com/7360925/ > > The only kernel error I get is that pulseaudio hangs.. Nothing more > specific as to why. > I can also get a hang if I just run: sudo lsusb -v. It displays > Bus 002 Device 002: ID 046d:0825 Logitech, Inc. Webcam C270 > [blinking cursor]
Thanks. Could you try the patch below? Takashi --- diff --git a/sound/usb/card.c b/sound/usb/card.c index 893d5a1afc3c..28f13def4838 100644 --- a/sound/usb/card.c +++ b/sound/usb/card.c @@ -651,7 +651,7 @@ int snd_usb_autoresume(struct snd_usb_audio *chip) int err = -ENODEV; down_read(&chip->shutdown_rwsem); - if (chip->probing) + if (chip->probing || chip->num_suspended_intf) err = 0; else if (!chip->shutdown) err = usb_autopm_get_interface(chip->pm_intf); @@ -663,7 +663,7 @@ int snd_usb_autoresume(struct snd_usb_audio *chip) void snd_usb_autosuspend(struct snd_usb_audio *chip) { down_read(&chip->shutdown_rwsem); - if (!chip->shutdown && !chip->probing) + if (!chip->shutdown && !chip->probing && !chip->num_suspended_intf) usb_autopm_put_interface(chip->pm_intf); up_read(&chip->shutdown_rwsem); } @@ -695,8 +695,10 @@ static int usb_audio_suspend(struct usb_interface *intf, pm_message_t message) chip->autosuspended = 1; } - list_for_each_entry(mixer, &chip->mixer_list, list) - snd_usb_mixer_suspend(mixer); + if (chip->num_suspended_intf == 1) { + list_for_each_entry(mixer, &chip->mixer_list, list) + snd_usb_mixer_suspend(mixer); + } return 0; } -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/