Re: [PATCH] X86: intel_ips, check for kzalloc properly

From: Jiri Slaby
Date: Mon Jun 21 2010 - 11:34:01 EST


On 06/21/2010 05:25 PM, Jesse Barnes wrote:
> On Mon, 21 Jun 2010 17:02:11 +0200
> Jiri Slaby <jslaby@xxxxxxx> wrote:
>
>> Stanse found that there are two NULL checks missing in ips_monitor. So
>> check their value too and bail out appropriately if the allocation
>> failed.
>>
>> Signed-off-by: Jiri Slaby <jslaby@xxxxxxx>
>> Cc: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
>> Cc: Matthew Garrett <mjg@xxxxxxxxxx>
>> ---
>> drivers/platform/x86/intel_ips.c | 3 ++-
>> 1 files changed, 2 insertions(+), 1 deletions(-)
>>
>> diff --git a/drivers/platform/x86/intel_ips.c b/drivers/platform/x86/intel_ips.c
>> index cdaf40e..3c7ea9a 100644
>> --- a/drivers/platform/x86/intel_ips.c
>> +++ b/drivers/platform/x86/intel_ips.c
>> @@ -931,7 +931,8 @@ static int ips_monitor(void *data)
>> mch_samples = kzalloc(sizeof(u16) * IPS_SAMPLE_COUNT, GFP_KERNEL);
>> cpu_samples = kzalloc(sizeof(u32) * IPS_SAMPLE_COUNT, GFP_KERNEL);
>> mchp_samples = kzalloc(sizeof(u32) * IPS_SAMPLE_COUNT, GFP_KERNEL);
>> - if (!mcp_samples || !ctv1_samples || !ctv2_samples || !mch_samples) {
>> + if (!mcp_samples || !ctv1_samples || !ctv2_samples || !mch_samples ||
>> + !cpu_samples || !mchp_samples) {
>> dev_err(&ips->dev->dev,
>> "failed to allocate sample array, ips disabled\n");
>> kfree(mcp_samples);
>
> Ah cool, am I also missing the appropriate kfree() calls for the last
> two? The context doesn't have it. Otherwise,

I checked when I was patching that and the last is not freed there.
However I didn't add it since at least one must be non-NULL and in this
case it can be only the last. (Until somebody add another allocation
indeed.) So should I add even the last free there?

thanks,
--
js
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/