Patch "ASoC: Intel: Atom: add a missing star in a memcpy call" has been added to the 4.4-stable tree
Subsystems (4)
This is a note to let you know that I've just added the patch titled
ASoC: Intel: Atom: add a missing star in a memcpy call
to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
asoc-intel-atom-add-a-missing-star-in-a-memcpy-call.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
61ab0d403bbd9d5f6e000e3b5734049141b91f6fMon Sep 17 00:00:00 2001
From: Nicolas Iooss <[email protected]>
Date: Sun, 28 Aug 2016 21:10:04 +0200
Subject: ASoC: Intel: Atom: add a missing star in a memcpy call
From: Nicolas Iooss <[email protected]>
commit 61ab0d403bbd9d5f6e000e3b5734049141b91f6f upstream.
In sst_prepare_and_post_msg(), when a response is received in "block", the following code gets executed:
*data = kzalloc(block->size, GFP_KERNEL);
memcpy(data, (void *) block->data, block->size);The memcpy() call overwrites the content of the *data pointer instead of filling the newly-allocated memory (which pointer is hold by *data). Fix this by merging kzalloc+memcpy into a single kmemdup() call.
Thanks Joe Perches for suggesting using kmemdup()
--- sound/soc/intel/atom/sst/sst_pvt.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-)
sound/soc/intel/atom/sst/sst_pvt.c +6 -8
@@ -279,17 +279,15 @@ int sst_prepare_and_post_msg(struct inteif (response) { ret =sst_wait_timeout (sst, block); -if (ret <0 ) { +if (ret <0 ) goto out; - }else if (block->data) { -if (!data) - goto out; - *data =kzalloc (block->size,GFP_KERNEL ); -if (!(*data)) { + +if (data && block->data) { + *data =kmemdup (block->data, block->size,GFP_KERNEL ); +if (!*data) { ret = -ENOMEM ; goto out; - }else -memcpy (data, (void *) block->data, block->size); + } } } out:
Patches currently in stable-queue which might be from [email protected] are
queue-4.4/asoc-intel-atom-add-a-missing-star-in-a-memcpy-call.patch