From: Takashi Sakamoto <o-takashi@sakamocchi.jp>
To: Takashi Iwai <tiwai@suse.de>
Cc: alsa-devel@alsa-project.org, Meng_Cai@novatek.com.cn
Subject: Re: [PATCH] ALSA: pcm: Fix missing fixup call in compat hw_refine ioctl
Date: Tue, 29 Aug 2023 22:52:56 +0900 [thread overview]
Message-ID: <20230829135256.GA116864@workstation.local> (raw)
In-Reply-To: <20230829134344.31588-1-tiwai@suse.de>
Hi,
On Tue, Aug 29, 2023 at 03:43:44PM +0200, Takashi Iwai wrote:
> The update of rate_num/den and msbits were factored out to
> fixup_unreferenced_params() function to be called explicitly after the
> hw_refine or hw_params procedure. It's called from
> snd_pcm_hw_refine_user(), but it's forgotten in the PCM compat ioctl.
> This ended up with the incomplete rate_num/den and msbits parameters
> when 32bit compat ioctl is used.
>
> This patch adds the missing call in snd_pcm_ioctl_hw_params_compat().
>
> Reported-by: Meng_Cai@novatek.com.cn
> Fixes: f9a076bff053 ("ALSA: pcm: calculate non-mask/non-interval parameters always when possible")
> Cc: <stable@vger.kernel.org>
> Signed-off-by: Takashi Iwai <tiwai@suse.de>
> ---
> sound/core/pcm_compat.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
Indeed. I did overlook PCM compat layer. The branch for hw refine compat
ioctl should call the fixup, while the branch for hw params has no need
since the helper function call the fixup.
Reviewed-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
> diff --git a/sound/core/pcm_compat.c b/sound/core/pcm_compat.c
> index 42c2ada8e888..c96483091f30 100644
> --- a/sound/core/pcm_compat.c
> +++ b/sound/core/pcm_compat.c
> @@ -253,10 +253,14 @@ static int snd_pcm_ioctl_hw_params_compat(struct snd_pcm_substream *substream,
> goto error;
> }
>
> - if (refine)
> + if (refine) {
> err = snd_pcm_hw_refine(substream, data);
> - else
> + if (err < 0)
> + goto error;
> + err = fixup_unreferenced_params(substream, data);
> + } else {
> err = snd_pcm_hw_params(substream, data);
> + }
> if (err < 0)
> goto error;
> if (copy_to_user(data32, data, sizeof(*data32)) ||
> --
> 2.35.3
Regards
Takashi Sakamoto
next prev parent reply other threads:[~2023-08-29 13:54 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-29 13:43 [PATCH] ALSA: pcm: Fix missing fixup call in compat hw_refine ioctl Takashi Iwai
2023-08-29 13:52 ` Takashi Sakamoto [this message]
2023-08-29 13:58 ` Jaroslav Kysela
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230829135256.GA116864@workstation.local \
--to=o-takashi@sakamocchi.jp \
--cc=Meng_Cai@novatek.com.cn \
--cc=alsa-devel@alsa-project.org \
--cc=tiwai@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.