From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
stable@vger.kernel.org,
Nicolas Iooss <nicolas.iooss_linux@m4x.org>
Subject: [PATCH 4.8 05/10] usb: usbip: vudc: fix left shift overflow
Date: Thu, 6 Oct 2016 10:18:28 +0200 [thread overview]
Message-ID: <20161006074741.122945459@linuxfoundation.org> (raw)
In-Reply-To: <20161006074740.913116523@linuxfoundation.org>
4.8-stable review patch. If anyone has any objections, please let me know.
------------------
From: Nicolas Iooss <nicolas.iooss_linux@m4x.org>
commit 238b7bd91b16d5a08326f858db42229b212e53d8 upstream.
In v_recv_cmd_submit(), urb_p->urb->pipe has the type unsigned int
(which is 32-bit long on x86_64) but 11<<30 results in a 34-bit integer.
Therefore the 2 leading bits are truncated and
urb_p->urb->pipe &= ~(11 << 30);
has the same meaning as
urb_p->urb->pipe &= ~(3 << 30);
This second statement seems to be how the code was intended to be
written, as PIPE_ constants have values between 0 and 3.
The overflow has been detected with a clang warning:
drivers/usb/usbip/vudc_rx.c:145:27: warning: signed shift result
(0x2C0000000) requires 35 bits to represent, but 'int' only has 32
bits [-Wshift-overflow]
urb_p->urb->pipe &= ~(11 << 30);
~~ ^ ~~
Fixes: 79c02cb1fd5c ("usbip: vudc: Add vudc_rx")
Signed-off-by: Nicolas Iooss <nicolas.iooss_linux@m4x.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
drivers/usb/usbip/vudc_rx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/drivers/usb/usbip/vudc_rx.c
+++ b/drivers/usb/usbip/vudc_rx.c
@@ -142,7 +142,7 @@ static int v_recv_cmd_submit(struct vudc
urb_p->urb->status = -EINPROGRESS;
/* FIXME: more pipe setup to please usbip_common */
- urb_p->urb->pipe &= ~(11 << 30);
+ urb_p->urb->pipe &= ~(3 << 30);
switch (urb_p->ep->type) {
case USB_ENDPOINT_XFER_BULK:
urb_p->urb->pipe |= (PIPE_BULK << 30);
next prev parent reply other threads:[~2016-10-06 8:19 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20161006081902uscas1p14629784f61bb4f76ecbc7f7298e4eeb3@uscas1p1.samsung.com>
2016-10-06 8:18 ` [PATCH 4.8 00/10] 4.8.1-stable review Greg Kroah-Hartman
2016-10-06 8:18 ` [PATCH 4.8 01/10] arm64: debug: avoid resetting stepping state machine when TIF_SINGLESTEP Greg Kroah-Hartman
2016-10-06 8:18 ` [PATCH 4.8 02/10] Using BUG_ON() as an assert() is _never_ acceptable Greg Kroah-Hartman
2016-10-06 8:18 ` [PATCH 4.8 03/10] usb: misc: legousbtower: Fix NULL pointer deference Greg Kroah-Hartman
2016-10-06 8:18 ` [PATCH 4.8 04/10] Staging: fbtft: Fix bug in fbtft-core Greg Kroah-Hartman
2016-10-06 8:18 ` Greg Kroah-Hartman [this message]
2016-10-06 8:18 ` [PATCH 4.8 06/10] USB: serial: cp210x: Add ID for a Juniper console Greg Kroah-Hartman
2016-10-06 8:18 ` [PATCH 4.8 07/10] Revert "usbtmc: convert to devm_kzalloc" Greg Kroah-Hartman
2016-10-06 8:18 ` [PATCH 4.8 08/10] ALSA: hda - Adding one more ALC255 pin definition for headset problem Greg Kroah-Hartman
2016-10-06 8:18 ` [PATCH 4.8 09/10] ALSA: hda - Fix headset mic detection problem for several Dell laptops Greg Kroah-Hartman
2016-10-06 8:18 ` [PATCH 4.8 10/10] ALSA: hda - Add the top speaker pin config for HP Spectre x360 Greg Kroah-Hartman
2016-10-06 18:51 ` [PATCH 4.8 00/10] 4.8.1-stable review Guenter Roeck
2016-10-07 4:05 ` Greg Kroah-Hartman
2016-10-06 19:56 ` Shuah Khan
2016-10-07 4:05 ` Greg Kroah-Hartman
[not found] ` <57f820fc.4398c20a.3305b.cf51@mx.google.com>
2016-10-08 14:03 ` Greg Kroah-Hartman
2016-10-08 16:11 ` Kevin Hilman
2016-10-08 17:22 ` Guenter Roeck
2016-10-10 9:38 ` Mark Brown
2016-10-10 12:54 ` Guenter Roeck
2016-10-10 19:11 ` Mark Brown
2016-10-10 19:47 ` Guenter Roeck
2016-10-11 7:24 ` Mark Brown
2016-10-11 10:19 ` Mark Brown
2016-10-11 13:37 ` Guenter Roeck
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=20161006074741.122945459@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nicolas.iooss_linux@m4x.org \
--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.