lkml.org 
[lkml]   [2016]   [Nov]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH 3.2 069/152] USB: serial: mos7840: fix non-atomic allocation in write path
    3.2.84-rc1 review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Alexey Khoroshilov <khoroshilov@ispras.ru>

    commit 3b7c7e52efda0d4640060de747768360ba70a7c0 upstream.

    There is an allocation with GFP_KERNEL flag in mos7840_write(),
    while it may be called from interrupt context.

    Follow-up for commit 191252837626 ("USB: kobil_sct: fix non-atomic
    allocation in write path")

    Found by Linux Driver Verification project (linuxtesting.org).

    Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
    Signed-off-by: Johan Hovold <johan@kernel.org>
    [bwh: Backported to 3.2: adjust context]
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
    ---
    drivers/usb/serial/mos7840.c | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)

    --- a/drivers/usb/serial/mos7840.c
    +++ b/drivers/usb/serial/mos7840.c
    @@ -1524,8 +1524,8 @@ static int mos7840_write(struct tty_stru
    }

    if (urb->transfer_buffer == NULL) {
    - urb->transfer_buffer =
    - kmalloc(URB_TRANSFER_BUFFER_SIZE, GFP_KERNEL);
    + urb->transfer_buffer = kmalloc(URB_TRANSFER_BUFFER_SIZE,
    + GFP_ATOMIC);

    if (urb->transfer_buffer == NULL) {
    dev_err(&port->dev, "%s no more kernel memory...\n",
    \
     
     \ /
      Last update: 2016-11-14 03:44    [W:4.070 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site