[PATCH] ALSA: usb-audio: Fix superfluous autosuspend recovery

Takashi Iwai tiwai at suse.de
Mon Jul 26 08:26:56 CEST 2021


On Mon, 26 Jul 2021 05:09:11 +0200,
Kai-Heng Feng wrote:
> 
> On Sun, Jul 25, 2021 at 6:23 PM Takashi Iwai <tiwai at suse.de> wrote:
> >
> > The change to restore the autosuspend from the disabled state uses a
> > wrong check: namely, it should have been the exact comparison of the
> > quirk_type instead of the logical and (&&).  Otherwise it matches
> > wrongly with the other quirk types.
> >
> > Although re-enabling the autosuspend for the already enabled device
> > shouldn't matter much, it's better to fix the unbalanced call.
> >
> > Fixes: 9799110825db ("ALSA: usb-audio: Disable USB autosuspend properly in setup_disable_autosuspend()")
> > Cc: <stable at vger.kernel.org>
> > Signed-off-by: Takashi Iwai <tiwai at suse.de>
> > ---
> >  sound/usb/card.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/sound/usb/card.c b/sound/usb/card.c
> > index 2f6a62416c05..a1f8c3a026f5 100644
> > --- a/sound/usb/card.c
> > +++ b/sound/usb/card.c
> > @@ -907,7 +907,7 @@ static void usb_audio_disconnect(struct usb_interface *intf)
> >                 }
> >         }
> >
> > -       if (chip->quirk_type & QUIRK_SETUP_DISABLE_AUTOSUSPEND)
> 
> It was bitwise and, not logical and...

Gah, the commit message was just wrong.
The revised one is below.


thanks,

Takashi

-- 8< --
From: Takashi Iwai <tiwai at suse.de>
Subject: [PATCH v2] ALSA: usb-audio: Fix superfluous autosuspend recovery

The change to restore the autosuspend from the disabled state uses a
wrong check: namely, it should have been the exact comparison of the
quirk_type instead of the bitwise and (&).  Otherwise it matches
wrongly with the other quirk types.

Although re-enabling the autosuspend for the already enabled device
shouldn't matter much, it's better to fix the unbalanced call.

Fixes: 9799110825db ("ALSA: usb-audio: Disable USB autosuspend properly in setup_disable_autosuspend()")
Cc: <stable at vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai at suse.de>
---
 sound/usb/card.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/usb/card.c b/sound/usb/card.c
index 2f6a62416c05..a1f8c3a026f5 100644
--- a/sound/usb/card.c
+++ b/sound/usb/card.c
@@ -907,7 +907,7 @@ static void usb_audio_disconnect(struct usb_interface *intf)
 		}
 	}
 
-	if (chip->quirk_type & QUIRK_SETUP_DISABLE_AUTOSUSPEND)
+	if (chip->quirk_type == QUIRK_SETUP_DISABLE_AUTOSUSPEND)
 		usb_enable_autosuspend(interface_to_usbdev(intf));
 
 	chip->num_interfaces--;
-- 
2.26.2



More information about the Alsa-devel mailing list