2021-06-15 14:26:27

by Colin King

[permalink] [raw]
Subject: [PATCH][next] ALSA: bebob: Fix bit flag quirk constants

From: Colin Ian King <[email protected]>

The quirking bit-flags are currently set as contiguous integer enum values
and so currently SND_BEBOB_QUIRK_INITIAL_DISCONTINUOUS_DBC is zero and so
he quirking never getting set or tested correctly for this quirk. Fix this
by setting the quirking constants as shifted bit values.

Addresses-Coverity: ("Bitwise-and with zero")
Fixes: 93cd12d6e88a ("ALSA: bebob: code refactoring for model-dependent quirks")
Signed-off-by: Colin Ian King <[email protected]>
---
sound/firewire/bebob/bebob.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sound/firewire/bebob/bebob.h b/sound/firewire/bebob/bebob.h
index c06579d9380e..4d73ecb30d79 100644
--- a/sound/firewire/bebob/bebob.h
+++ b/sound/firewire/bebob/bebob.h
@@ -76,8 +76,8 @@ struct snd_bebob_spec {
};

enum snd_bebob_quirk {
- SND_BEBOB_QUIRK_INITIAL_DISCONTINUOUS_DBC,
- SND_BEBOB_QUIRK_WRONG_DBC,
+ SND_BEBOB_QUIRK_INITIAL_DISCONTINUOUS_DBC = (1 << 0),
+ SND_BEBOB_QUIRK_WRONG_DBC = (1 << 1),
};

struct snd_bebob {
--
2.31.1


2021-06-15 22:41:03

by Takashi Sakamoto

[permalink] [raw]
Subject: Re: [PATCH][next] ALSA: bebob: Fix bit flag quirk constants

Hi,

On Tue, Jun 15, 2021 at 03:20:48PM +0100, Colin King wrote:
> From: Colin Ian King <[email protected]>
>
> The quirking bit-flags are currently set as contiguous integer enum values
> and so currently SND_BEBOB_QUIRK_INITIAL_DISCONTINUOUS_DBC is zero and so
> he quirking never getting set or tested correctly for this quirk. Fix this
> by setting the quirking constants as shifted bit values.
>
> Addresses-Coverity: ("Bitwise-and with zero")
> Fixes: 93cd12d6e88a ("ALSA: bebob: code refactoring for model-dependent quirks")
> Signed-off-by: Colin Ian King <[email protected]>
> ---
> sound/firewire/bebob/bebob.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/sound/firewire/bebob/bebob.h b/sound/firewire/bebob/bebob.h
> index c06579d9380e..4d73ecb30d79 100644
> --- a/sound/firewire/bebob/bebob.h
> +++ b/sound/firewire/bebob/bebob.h
> @@ -76,8 +76,8 @@ struct snd_bebob_spec {
> };
>
> enum snd_bebob_quirk {
> - SND_BEBOB_QUIRK_INITIAL_DISCONTINUOUS_DBC,
> - SND_BEBOB_QUIRK_WRONG_DBC,
> + SND_BEBOB_QUIRK_INITIAL_DISCONTINUOUS_DBC = (1 << 0),
> + SND_BEBOB_QUIRK_WRONG_DBC = (1 << 1),
> };
>
> struct snd_bebob {
> --
> 2.31.1

Nice to catch it. Indeed, I overlook it...

Acked-by: Takashi Sakamoto <[email protected]>


Thanks

Takashi Sakamoto

2021-06-16 06:55:48

by Takashi Iwai

[permalink] [raw]
Subject: Re: [PATCH][next] ALSA: bebob: Fix bit flag quirk constants

On Tue, 15 Jun 2021 16:20:48 +0200,
Colin King wrote:
>
> From: Colin Ian King <[email protected]>
>
> The quirking bit-flags are currently set as contiguous integer enum values
> and so currently SND_BEBOB_QUIRK_INITIAL_DISCONTINUOUS_DBC is zero and so
> he quirking never getting set or tested correctly for this quirk. Fix this
> by setting the quirking constants as shifted bit values.
>
> Addresses-Coverity: ("Bitwise-and with zero")
> Fixes: 93cd12d6e88a ("ALSA: bebob: code refactoring for model-dependent quirks")
> Signed-off-by: Colin Ian King <[email protected]>

Thanks, applied.


Takashi