lkml.org 
[lkml]   [2020]   [Mar]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.5 049/119] usb: typec: ucsi: displayport: Fix NULL pointer dereference
    Date
    From: Heikki Krogerus <heikki.krogerus@linux.intel.com>

    commit d16e7b62c5adcd13832c6b0ba364c3468d21b856 upstream.

    If the registration of the DisplayPort was not successful,
    or if the port does not support DisplayPort alt mode in the
    first place, the function ucsi_displayport_remove_partner()
    will fail with NULL pointer dereference when it attempts to
    access the driver data.

    Adding a check to the function to make sure there really is
    driver data for the device before modifying it.

    Fixes: af8622f6a585 ("usb: typec: ucsi: Support for DisplayPort alt mode")
    Reported-by: Andrea Gagliardi La Gala <andrea.lagala@gmail.com>
    BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=206365
    Cc: stable@vger.kernel.org
    Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
    Link: https://lore.kernel.org/r/20200311130006.41288-2-heikki.krogerus@linux.intel.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/usb/typec/ucsi/displayport.c | 3 +++
    1 file changed, 3 insertions(+)

    --- a/drivers/usb/typec/ucsi/displayport.c
    +++ b/drivers/usb/typec/ucsi/displayport.c
    @@ -271,6 +271,9 @@ void ucsi_displayport_remove_partner(str
    return;

    dp = typec_altmode_get_drvdata(alt);
    + if (!dp)
    + return;
    +
    dp->data.conf = 0;
    dp->data.status = 0;
    dp->initialized = false;

    \
     
     \ /
      Last update: 2020-03-24 14:23    [W:3.868 / U:0.088 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site