All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eddie Chapman <eddie@ehuk.net>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	linux-kernel@vger.kernel.org
Cc: stable@vger.kernel.org, Mauro Carvalho Chehab <mchehab@s-opensource.com>
Subject: Re: [PATCH 4.4 02/15] [media] siano: make it work again with CONFIG_VMAP_STACK
Date: Wed, 22 Feb 2017 21:07:24 +0000	[thread overview]
Message-ID: <53bb5fba-1f20-109c-833e-071cbdc782dd@ehuk.net> (raw)
In-Reply-To: <20170221130139.951459920@linuxfoundation.org>

On 21/02/17 13:01, Greg Kroah-Hartman wrote:
> 4.4-stable review patch.  If anyone has any objections, please let me know.
>
> ------------------
>
> From: Mauro Carvalho Chehab <mchehab@s-opensource.com>
>
> commit f9c85ee67164b37f9296eab3b754e543e4e96a1c upstream.
>
> Reported as a Kaffeine bug:
> 	https://bugs.kde.org/show_bug.cgi?id=375811
>
> The USB control messages require DMA to work. We cannot pass
> a stack-allocated buffer, as it is not warranted that the
> stack would be into a DMA enabled area.
>
> On Kernel 4.9, the default is to not accept DMA on stack anymore
> on x86 architecture. On other architectures, this has been a
> requirement since Kernel 2.2. So, after this patch, this driver
> should likely work fine on all archs.
>
> Tested with USB ID 2040:5510: Hauppauge Windham
>
> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
>
> ---
>  drivers/media/usb/siano/smsusb.c |   18 +++++++++++++-----
>  1 file changed, 13 insertions(+), 5 deletions(-)
>
> --- a/drivers/media/usb/siano/smsusb.c
> +++ b/drivers/media/usb/siano/smsusb.c
> @@ -200,22 +200,30 @@ static int smsusb_start_streaming(struct
>  static int smsusb_sendrequest(void *context, void *buffer, size_t size)
>  {
>  	struct smsusb_device_t *dev = (struct smsusb_device_t *) context;
> -	struct sms_msg_hdr *phdr = (struct sms_msg_hdr *) buffer;
> -	int dummy;
> +	struct sms_msg_hdr *phdr;
> +	int dummy, ret;
>
>  	if (dev->state != SMSUSB_ACTIVE) {
>  		pr_debug("Device not active yet\n");
>  		return -ENOENT;
>  	}
>
> +	phdr = kmalloc(size, GFP_KERNEL);
> +	if (!phdr)
> +		return -ENOMEM;
> +	memcpy(phdr, buffer, size);
> +
>  	pr_debug("sending %s(%d) size: %d\n",
>  		  smscore_translate_msg(phdr->msg_type), phdr->msg_type,
>  		  phdr->msg_length);
>
>  	smsendian_handle_tx_message((struct sms_msg_data *) phdr);
> -	smsendian_handle_message_header((struct sms_msg_hdr *)buffer);
> -	return usb_bulk_msg(dev->udev, usb_sndbulkpipe(dev->udev, 2),
> -			    buffer, size, &dummy, 1000);
> +	smsendian_handle_message_header((struct sms_msg_hdr *)phdr);
> +	ret = usb_bulk_msg(dev->udev, usb_sndbulkpipe(dev->udev, 2),
> +			    phdr, size, &dummy, 1000);
> +
> +	kfree(phdr);
> +	return ret;
>  }
>
>  static char *smsusb1_fw_lkup[] = {

Hello Greg,

According to the bug report linked to in the commit message this is only 
needed in 4.9 and higher.

Eddie

  reply	other threads:[~2017-02-22 21:43 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-21 13:01 [PATCH 4.4 00/15] 4.4.51-stable review Greg Kroah-Hartman
2017-02-21 13:01 ` [PATCH 4.4 01/15] vfs: fix uninitialized flags in splice_to_pipe() Greg Kroah-Hartman
2017-02-21 13:01 ` [PATCH 4.4 02/15] [media] siano: make it work again with CONFIG_VMAP_STACK Greg Kroah-Hartman
2017-02-22 21:07   ` Eddie Chapman [this message]
2017-02-22 21:20     ` Mauro Carvalho Chehab
2017-02-21 13:02 ` [PATCH 4.4 03/15] fuse: fix use after free issue in fuse_dev_do_read() Greg Kroah-Hartman
2017-02-21 13:02 ` [PATCH 4.4 04/15] scsi: dont BUG_ON() empty DMA transfers Greg Kroah-Hartman
2017-02-21 13:02 ` [PATCH 4.4 05/15] Fix missing sanity check in /dev/sg Greg Kroah-Hartman
2017-02-21 13:02 ` [PATCH 4.4 06/15] Input: elan_i2c - add ELAN0605 to the ACPI table Greg Kroah-Hartman
2017-02-21 13:02 ` [PATCH 4.4 08/15] drm/dp/mst: fix kernel oops when turning off secondary monitor Greg Kroah-Hartman
2017-02-21 13:02 ` [PATCH 4.4 09/15] futex: Move futex_init() to core_initcall Greg Kroah-Hartman
2017-02-21 13:02 ` [PATCH 4.4 10/15] ARM: 8658/1: uaccess: fix zeroing of 64-bit get_user() Greg Kroah-Hartman
2017-02-21 13:02 ` [PATCH 4.4 11/15] printk: use rcuidle console tracepoint Greg Kroah-Hartman
2017-02-21 13:02 ` [PATCH 4.4 12/15] NTB: ntb_transport: fix debugfs_remove_recursive Greg Kroah-Hartman
2017-02-21 13:02 ` [PATCH 4.4 13/15] ntb_transport: Pick an unused queue Greg Kroah-Hartman
2017-02-21 13:02 ` [PATCH 4.4 14/15] bcache: Make gc wakeup sane, remove set_task_state() Greg Kroah-Hartman
2017-02-21 13:02 ` [PATCH 4.4 15/15] mmc: core: fix multi-bit bus width without high-speed mode Greg Kroah-Hartman
2017-02-21 16:15 ` [PATCH 4.4 00/15] 4.4.51-stable review Guenter Roeck
2017-02-21 23:40 ` Shuah Khan

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=53bb5fba-1f20-109c-833e-071cbdc782dd@ehuk.net \
    --to=eddie@ehuk.net \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.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 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.