stable.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Brüns, Stefan" <Stefan.Bruens@rwth-aachen.de>
To: "stable@vger.kernel.org" <stable@vger.kernel.org>
Cc: "gregkh@linuxfoundation.org" <gregkh@linuxfoundation.org>,
	"mchehab@s-opensource.com" <mchehab@s-opensource.com>
Subject: Re: FAILED: patch "[PATCH] [media] dvb-usb-firmware: don't do DMA on stack" failed to apply to 4.11-stable tree
Date: Tue, 23 May 2017 13:28:07 +0000	[thread overview]
Message-ID: <2206542.kVfVQDmVMf@sbruens-linux> (raw)
In-Reply-To: <1495542835161183@kroah.com>

On Dienstag, 23. Mai 2017 14:33:55 CEST gregkh@linuxfoundation.org wrote:
> The patch below does not apply to the 4.11-stable tree.
> If someone wants it applied there, or to any other stable or longterm
> tree, then please email the backport, including the original git commit
> id to <stable@vger.kernel.org>.

Please apply this:
67b0503db9c29b04eadfeede6bebbfe5ddad94ef ("[media] dvb-usb-firmware: don't do 
DMA on stack")

on top of commit:
43fab9793c1f44e665b4f98035a14942edf03ddc ("[media] dvb-usb: don't use stack 
for firmware load")

(both from mainline)

Kind regards,

Stefan

> ------------------ original commit in Linus's tree ------------------
> 
> From f9fa0f2bebaa629aff839b7b992298b1fce453d2 Mon Sep 17 00:00:00 2001
> From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <stefan.bruens@rwth-aachen.de>
> Date: Sun, 12 Feb 2017 13:02:13 -0200
> Subject: [PATCH] [media] dvb-usb-firmware: don't do DMA on stack
> MIME-Version: 1.0
> Content-Type: text/plain; charset=UTF-8
> Content-Transfer-Encoding: 8bit
> 
> The buffer allocation for the firmware data was changed in
> commit 43fab9793c1f ("[media] dvb-usb: don't use stack for firmware load")
> but the same applies for the reset value.
> 
> Fixes: 43fab9793c1f ("[media] dvb-usb: don't use stack for firmware load")
> Cc: stable@vger.kernel.org
> Signed-off-by: Stefan Br�ns <stefan.bruens@rwth-aachen.de>
> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
> 
> diff --git a/drivers/media/usb/dvb-usb/dvb-usb-firmware.c
> b/drivers/media/usb/dvb-usb/dvb-usb-firmware.c index
> ab9866024ec7..04033efe7ad5 100644
> --- a/drivers/media/usb/dvb-usb/dvb-usb-firmware.c
> +++ b/drivers/media/usb/dvb-usb/dvb-usb-firmware.c
> @@ -36,16 +36,18 @@ static int usb_cypress_writemem(struct usb_device
> *udev,u16 addr,u8 *data, u8 le int usb_cypress_load_firmware(struct
> usb_device *udev, const struct firmware *fw, int type) {
>  	struct hexline *hx;
> -	u8 reset;
> -	int ret,pos=0;
> +	u8 *buf;
> +	int ret, pos = 0;
> +	u16 cpu_cs_register = cypress[type].cpu_cs_register;
> 
> -	hx = kmalloc(sizeof(*hx), GFP_KERNEL);
> -	if (!hx)
> +	buf = kmalloc(sizeof(*hx), GFP_KERNEL);
> +	if (!buf)
>  		return -ENOMEM;
> +	hx = (struct hexline *)buf;
> 
>  	/* stop the CPU */
> -	reset = 1;
> -	if ((ret =
> usb_cypress_writemem(udev,cypress[type].cpu_cs_register,&reset,1)) != 1)
> +	buf[0] = 1;
> +	if (usb_cypress_writemem(udev, cpu_cs_register, buf, 1) != 1)
>  		err("could not stop the USB controller CPU.");
> 
>  	while ((ret = dvb_usb_get_hexline(fw, hx, &pos)) > 0) {
> @@ -61,21 +63,21 @@ int usb_cypress_load_firmware(struct usb_device *udev,
> const struct firmware *fw }
>  	if (ret < 0) {
>  		err("firmware download failed at %d with %d",pos,ret);
> -		kfree(hx);
> +		kfree(buf);
>  		return ret;
>  	}
> 
>  	if (ret == 0) {
>  		/* restart the CPU */
> -		reset = 0;
> -		if (ret ||
> usb_cypress_writemem(udev,cypress[type].cpu_cs_register,&reset,1) != 1) {
> +		buf[0] = 0;
> +		if (usb_cypress_writemem(udev, cpu_cs_register, buf, 1) != 1) {
>  			err("could not restart the USB controller CPU.");
>  			ret = -EINVAL;
>  		}
>  	} else
>  		ret = -EIO;
> 
> -	kfree(hx);
> +	kfree(buf);
> 
>  	return ret;
>  }

  reply	other threads:[~2017-05-23 13:38 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-23 12:33 FAILED: patch "[PATCH] [media] dvb-usb-firmware: don't do DMA on stack" failed to apply to 4.11-stable tree gregkh
2017-05-23 13:28 ` Brüns, Stefan [this message]
2017-05-23 13:54   ` gregkh

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=2206542.kVfVQDmVMf@sbruens-linux \
    --to=stefan.bruens@rwth-aachen.de \
    --cc=gregkh@linuxfoundation.org \
    --cc=mchehab@s-opensource.com \
    --cc=stable@vger.kernel.org \
    /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 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).