lkml.org 
[lkml]   [2018]   [Mar]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL for 4.9 043/281] PowerCap: Fix an error code in powercap_register_zone()
    Date
    From: Dan Carpenter <dan.carpenter@oracle.com>

    [ Upstream commit 216c4e9db4c9d1d2a382b42880442dc632cd47d9 ]

    In the current code we accidentally return the successful result from
    idr_alloc() instead of a negative error pointer. The caller is looking
    for an error pointer and so it treats the returned value as a valid
    pointer.

    This one might be a bit serious because if it lets people get around the
    kernel's protection for remapping NULL. I'm not sure.

    Fixes: 75d2364ea0ca (PowerCap: Add class driver)
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
    ---
    drivers/powercap/powercap_sys.c | 1 +
    1 file changed, 1 insertion(+)

    diff --git a/drivers/powercap/powercap_sys.c b/drivers/powercap/powercap_sys.c
    index 14bde0db8c24..5b10b50f8686 100644
    --- a/drivers/powercap/powercap_sys.c
    +++ b/drivers/powercap/powercap_sys.c
    @@ -538,6 +538,7 @@ struct powercap_zone *powercap_register_zone(

    power_zone->id = result;
    idr_init(&power_zone->idr);
    + result = -ENOMEM;
    power_zone->name = kstrdup(name, GFP_KERNEL);
    if (!power_zone->name)
    goto err_name_alloc;
    --
    2.14.1
    \
     
     \ /
      Last update: 2018-03-19 22:40    [W:2.213 / U:0.068 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site