lkml.org 
[lkml]   [2016]   [Jan]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: [PATCH 3.14 30/59] xhci: refuse loading if nousb is used
    On Wed, Jan 27, 2016 at 10:15:18AM -0800, Greg Kroah-Hartman wrote:
    > 3.14-stable review patch. If anyone has any objections, please let me know.
    >
    > ------------------
    >
    > From: Oliver Neukum <oneukum@suse.com>
    >
    > commit 1eaf35e4dd592c59041bc1ed3248c46326da1f5f upstream.
    >
    > The module should fail to load.
    >
    > Signed-off-by: Oliver Neukum <oneukum@suse.com>
    > Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    >
    > ---
    > drivers/usb/host/xhci.c | 4 ++++
    > 1 file changed, 4 insertions(+)
    >
    > --- a/drivers/usb/host/xhci.c
    > +++ b/drivers/usb/host/xhci.c
    > @@ -4893,6 +4893,10 @@ static int __init xhci_hcd_init(void)
    > BUILD_BUG_ON(sizeof(struct xhci_intr_reg) != 8*32/8);
    > /* xhci_run_regs has eight fields and embeds 128 xhci_intr_regs */
    > BUILD_BUG_ON(sizeof(struct xhci_run_regs) != (8+8*128)*32/8);
    > +
    > + if (usb_disabled())
    > + return -ENODEV;
    > +

    I believe the error path should actually call xhci_unregister_pci().
    Something like the patch below. The same is applies to the 3.10
    kernel.

    Cheers,
    --
    Luís

    > return 0;
    > unreg_pci:
    > xhci_unregister_pci();
    >
    >
    > --
    > To unsubscribe from this list: send the line "unsubscribe stable" in
    > the body of a message to majordomo@vger.kernel.org
    > More majordomo info at http://vger.kernel.org/majordomo-info.html

    From 870b9e9479b67df493e2ca3c763102b10d4dd9da Mon Sep 17 00:00:00 2001
    From: Oliver Neukum <oneukum@suse.com>
    Date: Thu, 3 Dec 2015 15:03:34 +0100
    Subject: xhci: refuse loading if nousb is used

    commit 1eaf35e4dd592c59041bc1ed3248c46326da1f5f upstream.

    The module should fail to load.

    Signed-off-by: Oliver Neukum <oneukum@suse.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    [ luis: need to call xhci_unregister_pci() in the error path ]
    Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
    ---
    drivers/usb/host/xhci.c | 6 ++++++
    1 file changed, 6 insertions(+)

    diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
    index 20209e870a99..4c78dc564b3a 100644
    --- a/drivers/usb/host/xhci.c
    +++ b/drivers/usb/host/xhci.c
    @@ -4955,6 +4955,12 @@ static int __init xhci_hcd_init(void)
    BUILD_BUG_ON(sizeof(struct xhci_intr_reg) != 8*32/8);
    /* xhci_run_regs has eight fields and embeds 128 xhci_intr_regs */
    BUILD_BUG_ON(sizeof(struct xhci_run_regs) != (8+8*128)*32/8);
    +
    + if (usb_disabled()) {
    + retval = -ENODEV;
    + goto unreg_pci;
    + }
    +
    return 0;
    unreg_pci:
    xhci_unregister_pci();
    \
     
     \ /
      Last update: 2016-01-28 19:21    [W:4.029 / U:0.880 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site