* [patch] ASoC: Intel: Skylake: pointer math issue
@ 2015-12-08 5:53 Dan Carpenter
2015-12-09 16:14 ` Vinod Koul
0 siblings, 1 reply; 3+ messages in thread
From: Dan Carpenter @ 2015-12-08 5:53 UTC (permalink / raw)
To: Liam Girdwood
Cc: Mark Brown, Jaroslav Kysela, Takashi Iwai, Vinod Koul, Jeeja KP,
Subhransu S. Prusty, Hardik T Shah, alsa-devel, kernel-janitors
"data" is a u32 pointer so this copies the information to wrong place
entirely.
Fixes: 140adfba5280 ('ASoC: Intel: Skylake: Add tlv byte kcontrols')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
diff --git a/sound/soc/intel/skylake/skl-topology.c b/sound/soc/intel/skylake/skl-topology.c
index dde8d3c..2c4405e 100644
--- a/sound/soc/intel/skylake/skl-topology.c
+++ b/sound/soc/intel/skylake/skl-topology.c
@@ -885,9 +885,9 @@ static int skl_tplg_tlv_control_get(struct snd_kcontrol *kcontrol,
if (bc->params) {
if (copy_to_user(data, &bc->param_id, sizeof(u32)))
return -EFAULT;
- if (copy_to_user(data + sizeof(u32), &size, sizeof(u32)))
+ if (copy_to_user(data + 1, &size, sizeof(u32)))
return -EFAULT;
- if (copy_to_user(data + 2 * sizeof(u32), bc->params, size))
+ if (copy_to_user(data + 2, bc->params, size))
return -EFAULT;
}
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [patch] ASoC: Intel: Skylake: pointer math issue
2015-12-08 5:53 [patch] ASoC: Intel: Skylake: pointer math issue Dan Carpenter
@ 2015-12-09 16:14 ` Vinod Koul
2015-12-16 14:53 ` Vinod Koul
0 siblings, 1 reply; 3+ messages in thread
From: Vinod Koul @ 2015-12-09 16:14 UTC (permalink / raw)
To: Dan Carpenter
Cc: alsa-devel, Hardik T Shah, kernel-janitors, Takashi Iwai,
Liam Girdwood, Mark Brown, Jeeja KP, Subhransu S. Prusty
On Tue, Dec 08, 2015 at 08:53:22AM +0300, Dan Carpenter wrote:
> "data" is a u32 pointer so this copies the information to wrong place
> entirely.
Thanks this patch makes sense, I will test this tomorrow and get back
>
> Fixes: 140adfba5280 ('ASoC: Intel: Skylake: Add tlv byte kcontrols')
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
>
> diff --git a/sound/soc/intel/skylake/skl-topology.c b/sound/soc/intel/skylake/skl-topology.c
> index dde8d3c..2c4405e 100644
> --- a/sound/soc/intel/skylake/skl-topology.c
> +++ b/sound/soc/intel/skylake/skl-topology.c
> @@ -885,9 +885,9 @@ static int skl_tplg_tlv_control_get(struct snd_kcontrol *kcontrol,
> if (bc->params) {
> if (copy_to_user(data, &bc->param_id, sizeof(u32)))
> return -EFAULT;
> - if (copy_to_user(data + sizeof(u32), &size, sizeof(u32)))
> + if (copy_to_user(data + 1, &size, sizeof(u32)))
> return -EFAULT;
> - if (copy_to_user(data + 2 * sizeof(u32), bc->params, size))
> + if (copy_to_user(data + 2, bc->params, size))
> return -EFAULT;
> }
>
--
~Vinod
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [patch] ASoC: Intel: Skylake: pointer math issue
2015-12-09 16:14 ` Vinod Koul
@ 2015-12-16 14:53 ` Vinod Koul
0 siblings, 0 replies; 3+ messages in thread
From: Vinod Koul @ 2015-12-16 14:53 UTC (permalink / raw)
To: Dan Carpenter
Cc: Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai,
Jeeja KP, Subhransu S. Prusty, Hardik T Shah, alsa-devel,
kernel-janitors
On Wed, Dec 09, 2015 at 09:32:13PM +0530, Vinod Koul wrote:
> On Tue, Dec 08, 2015 at 08:53:22AM +0300, Dan Carpenter wrote:
> > "data" is a u32 pointer so this copies the information to wrong place
> > entirely.
>
> Thanks this patch makes sense, I will test this tomorrow and get back
Sorry this took a little while longer but this works
Acked-by: Vinod Koul <vinod.koul@intel.com>
Tested-by: Dharageswari R <dharageswari.r@intel.com>
> >
> > Fixes: 140adfba5280 ('ASoC: Intel: Skylake: Add tlv byte kcontrols')
> > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
> >
> > diff --git a/sound/soc/intel/skylake/skl-topology.c b/sound/soc/intel/skylake/skl-topology.c
> > index dde8d3c..2c4405e 100644
> > --- a/sound/soc/intel/skylake/skl-topology.c
> > +++ b/sound/soc/intel/skylake/skl-topology.c
> > @@ -885,9 +885,9 @@ static int skl_tplg_tlv_control_get(struct snd_kcontrol *kcontrol,
> > if (bc->params) {
> > if (copy_to_user(data, &bc->param_id, sizeof(u32)))
> > return -EFAULT;
> > - if (copy_to_user(data + sizeof(u32), &size, sizeof(u32)))
> > + if (copy_to_user(data + 1, &size, sizeof(u32)))
> > return -EFAULT;
> > - if (copy_to_user(data + 2 * sizeof(u32), bc->params, size))
> > + if (copy_to_user(data + 2, bc->params, size))
> > return -EFAULT;
> > }
> >
>
> --
> ~Vinod
--
~Vinod
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-12-16 14:53 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-12-08 5:53 [patch] ASoC: Intel: Skylake: pointer math issue Dan Carpenter
2015-12-09 16:14 ` Vinod Koul
2015-12-16 14:53 ` Vinod Koul
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).