2019-12-26 09:50:02

by Paul Menzel

[permalink] [raw]
Subject: [Regression drm-tip] Internal audio device missing

Dear Linux folks,


With

$ git describe --tags drm-tip/drm-tip
v5.5-rc3-1481-ga20d8cd6901a

the internal audio device is not available, and just a dummy device.

Running `alsa-info.sh` [1], the messages below are shown with the
problematic Linux kernel.

alsactl: get_controls:567: snd_ctl_open error: Sound protocol is
not compatible
cat: /tmp/alsa-info.ateDlDjrZX/alsactl.tmp: No such file or directory

Please find the output of `alsa-info.sh` with Linux 5.5-rc3 and drm-tip
attached.


Kind regards,

Paul


[1]: https://www.alsa-project.org/alsa-info.sh


Attachments:
alsa-info-linux-5.5-rc3-drm-tip.txt (32.29 kB)
alsa-info-linux-5.5-rc3.txt (51.92 kB)
Download all attachments

2019-12-26 10:05:58

by Takashi Iwai

[permalink] [raw]
Subject: Re: [Regression drm-tip] Internal audio device missing

On Thu, 26 Dec 2019 10:47:18 +0100,
Paul Menzel wrote:
>
> Dear Linux folks,
>
>
> With
>
> $ git describe --tags drm-tip/drm-tip
> v5.5-rc3-1481-ga20d8cd6901a
>
> the internal audio device is not available, and just a dummy device.
>
> Running `alsa-info.sh` [1], the messages below are shown with the
> problematic Linux kernel.
>
> alsactl: get_controls:567: snd_ctl_open error: Sound protocol is
> not compatible
> cat: /tmp/alsa-info.ateDlDjrZX/alsactl.tmp: No such file or directory

That's an unexpected side-effect of the recent protocol version bump
in sound.git for-next branch. It seems that we can't change the minor
version unless we really want to break something.

Below is the fix patch. Please give it a try.


thanks,

Takashi

-- 8< --
From: Takashi Iwai <[email protected]>
Subject: [PATCH] ALSA: control: Fix incompatible protocol error

The recent change to bump the ALSA control API protocol version from
2.0.7 to 2.1.0 caused a regression on user-space; while the user-space
expects both the major and the minor versions to be identical with the
supported numbers, we changed the minor number from 0 to 1.

For recovering from the incompatibility, this patch changes the
protocol version again to 2.0.8, which is compatible, but yet higher
than the original number 2.0.7, indicating that the protocol change.

Fixes: bd3eb4e87eb3 ("ALSA: ctl: bump protocol version up to v2.1.0")
Reported-by: Paul Menzel <[email protected]>
Signed-off-by: Takashi Iwai <[email protected]>
---
include/uapi/sound/asound.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/uapi/sound/asound.h b/include/uapi/sound/asound.h
index e36dadaf84ba..30ebb2a42983 100644
--- a/include/uapi/sound/asound.h
+++ b/include/uapi/sound/asound.h
@@ -936,7 +936,7 @@ struct snd_timer_tread {
* *
****************************************************************************/

-#define SNDRV_CTL_VERSION SNDRV_PROTOCOL_VERSION(2, 1, 0)
+#define SNDRV_CTL_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 8)

struct snd_ctl_card_info {
int card; /* card number */
--
2.16.4

2019-12-26 14:42:37

by Paul Menzel

[permalink] [raw]
Subject: Re: [Regression drm-tip] Internal audio device missing

Dear Takashi,


Am 26.12.19 um 11:03 schrieb Takashi Iwai:
> On Thu, 26 Dec 2019 10:47:18 +0100, Paul Menzel wrote:

>> With
>>
>> $ git describe --tags drm-tip/drm-tip
>> v5.5-rc3-1481-ga20d8cd6901a
>>
>> the internal audio device is not available, and just a dummy device.
>>
>> Running `alsa-info.sh` [1], the messages below are shown with the
>> problematic Linux kernel.
>>
>> alsactl: get_controls:567: snd_ctl_open error: Sound protocol is
>> not compatible
>> cat: /tmp/alsa-info.ateDlDjrZX/alsactl.tmp: No such file or directory
>
> That's an unexpected side-effect of the recent protocol version bump
> in sound.git for-next branch. It seems that we can't change the minor
> version unless we really want to break something.
>
> Below is the fix patch. Please give it a try.

Thank you for the quick reply and fix.

> -- 8< --
> From: Takashi Iwai <[email protected]>
> Subject: [PATCH] ALSA: control: Fix incompatible protocol error
>
> The recent change to bump the ALSA control API protocol version from
> 2.0.7 to 2.1.0 caused a regression on user-space; while the user-space
> expects both the major and the minor versions to be identical with the
> supported numbers, we changed the minor number from 0 to 1.
>
> For recovering from the incompatibility, this patch changes the
> protocol version again to 2.0.8, which is compatible, but yet higher
> than the original number 2.0.7, indicating that the protocol change.
>
> Fixes: bd3eb4e87eb3 ("ALSA: ctl: bump protocol version up to v2.1.0")
> Reported-by: Paul Menzel <[email protected]>
> Signed-off-by: Takashi Iwai <[email protected]>
> ---
> include/uapi/sound/asound.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/uapi/sound/asound.h b/include/uapi/sound/asound.h
> index e36dadaf84ba..30ebb2a42983 100644
> --- a/include/uapi/sound/asound.h
> +++ b/include/uapi/sound/asound.h
> @@ -936,7 +936,7 @@ struct snd_timer_tread {
> * *
> ****************************************************************************/
>
> -#define SNDRV_CTL_VERSION SNDRV_PROTOCOL_VERSION(2, 1, 0)
> +#define SNDRV_CTL_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 8)
>
> struct snd_ctl_card_info {
> int card; /* card number */
>

Tested-by: Paul Menzel <[email protected]>

Are there CI systems, which should have caught this problem?

Which user-space component should forward this problem to the user
(desktop environment displaying a warning)?


Kind regards,

Paul

2019-12-26 15:46:05

by Takashi Iwai

[permalink] [raw]
Subject: Re: [Regression drm-tip] Internal audio device missing

On Thu, 26 Dec 2019 15:41:34 +0100,
Paul Menzel wrote:
>
> Dear Takashi,
>
>
> Am 26.12.19 um 11:03 schrieb Takashi Iwai:
> > On Thu, 26 Dec 2019 10:47:18 +0100, Paul Menzel wrote:
>
> >> With
> >>
> >> $ git describe --tags drm-tip/drm-tip
> >> v5.5-rc3-1481-ga20d8cd6901a
> >>
> >> the internal audio device is not available, and just a dummy device.
> >>
> >> Running `alsa-info.sh` [1], the messages below are shown with the
> >> problematic Linux kernel.
> >>
> >> alsactl: get_controls:567: snd_ctl_open error: Sound protocol is
> >> not compatible
> >> cat: /tmp/alsa-info.ateDlDjrZX/alsactl.tmp: No such file or directory
> >
> > That's an unexpected side-effect of the recent protocol version bump
> > in sound.git for-next branch. It seems that we can't change the minor
> > version unless we really want to break something.
> >
> > Below is the fix patch. Please give it a try.
>
> Thank you for the quick reply and fix.
>
> > -- 8< --
> > From: Takashi Iwai <[email protected]>
> > Subject: [PATCH] ALSA: control: Fix incompatible protocol error
> >
> > The recent change to bump the ALSA control API protocol version from
> > 2.0.7 to 2.1.0 caused a regression on user-space; while the user-space
> > expects both the major and the minor versions to be identical with the
> > supported numbers, we changed the minor number from 0 to 1.
> >
> > For recovering from the incompatibility, this patch changes the
> > protocol version again to 2.0.8, which is compatible, but yet higher
> > than the original number 2.0.7, indicating that the protocol change.
> >
> > Fixes: bd3eb4e87eb3 ("ALSA: ctl: bump protocol version up to v2.1.0")
> > Reported-by: Paul Menzel <[email protected]>
> > Signed-off-by: Takashi Iwai <[email protected]>
> > ---
> > include/uapi/sound/asound.h | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/include/uapi/sound/asound.h b/include/uapi/sound/asound.h
> > index e36dadaf84ba..30ebb2a42983 100644
> > --- a/include/uapi/sound/asound.h
> > +++ b/include/uapi/sound/asound.h
> > @@ -936,7 +936,7 @@ struct snd_timer_tread {
> > * *
> > ****************************************************************************/
> > -#define SNDRV_CTL_VERSION SNDRV_PROTOCOL_VERSION(2, 1,
> > 0)
> > +#define SNDRV_CTL_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 8)
> > struct snd_ctl_card_info {
> > int card; /* card number */
> >
>
> Tested-by: Paul Menzel <[email protected]>
>
> Are there CI systems, which should have caught this problem?
>
> Which user-space component should forward this problem to the user
> (desktop environment displaying a warning)?

Unfortunately no -- I'd love to have it, though.
I usually test and push more carefully, but it was a bit rush before
the holidays :)

Now merged and pushed out.


thanks,

Takashi