From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: MIME-version: 1.0 Content-type: text/plain; charset=UTF-8 Content-transfer-encoding: 8BIT Message-id: <1424437922.1870.1.camel@AMDC1943> Subject: Re: [RFT PATCH v2 2/2] compal-laptop: Check return value of power_supply_register From: Krzysztof Kozlowski To: Cezary Jackiewicz Cc: Darren Hart , platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org, Guenter Roeck , Matthew Garrett , stable@vger.kernel.org Date: Fri, 20 Feb 2015 14:12:02 +0100 In-reply-to: <1424437480-22364-2-git-send-email-k.kozlowski@samsung.com> References: <1424437480-22364-1-git-send-email-k.kozlowski@samsung.com> <1424437480-22364-2-git-send-email-k.kozlowski@samsung.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: On piÄ…, 2015-02-20 at 14:04 +0100, Krzysztof Kozlowski wrote: > The return value of power_supply_register() call was not checked and > even on error probe() function returned 0. If registering failed then > during unbind the driver tried to unregister power supply which was not > actually registered. > > This could lead to memory corruption because power_supply_unregister() > unconditionally cleans up given power supply. > > Fix this by checking return status of power_supply_register() call. In > case of failure, clean up sysfs entries and fail the probe. > (...) > > @@ -1072,6 +1074,7 @@ static int compal_remove(struct platform_device *pdev) > > data = platform_get_drvdata(pdev); > power_supply_unregister(&data->psy); > + /* FIXME: missing hwmon_device_unregister() */ > > sysfs_remove_group(&pdev->dev.kobj, &compal_platform_attr_group); Crap, I forgot to remove the FIXME note. It is no longer needed because patch 1 fixes this. I'll resend. Sorry for the noise.