From patchwork Wed May 7 04:44:18 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: HIMANGI SARAOGI X-Patchwork-Id: 4125441 Return-Path: X-Original-To: patchwork-linux-media@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id B12B7BFF02 for ; Wed, 7 May 2014 04:44:41 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id E450420256 for ; Wed, 7 May 2014 04:44:40 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 12D3F201E4 for ; Wed, 7 May 2014 04:44:40 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752313AbaEGEoY (ORCPT ); Wed, 7 May 2014 00:44:24 -0400 Received: from mail-pa0-f42.google.com ([209.85.220.42]:52885 "EHLO mail-pa0-f42.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751487AbaEGEoX (ORCPT ); Wed, 7 May 2014 00:44:23 -0400 Received: by mail-pa0-f42.google.com with SMTP id rd3so584770pab.15 for ; Tue, 06 May 2014 21:44:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:cc:subject:message-id:mime-version:content-type :content-disposition:user-agent; bh=H8g/dHqEr42YRAfwA7KdFH4pnkMBSEkx4S1JgnZT9FU=; b=T++lecSgg9hjXJY/r0TTxdPXM0DwylfAyhbA8O9FID2d9R1OdINpHHLT/9VaVkMPGa FLuC/qGHG11xi0Acq1RRYwF0eXoE0xB1hFHj8Yee5gfeNKC0aTO7Q1OYGkyX9+BfLQiz 7lyh62gLTtoZTl3+O3K2RthVaJLl3ZdbMCbmgAU/E4R3Ey9t0hbVuj+UXG6azPDmEikl NBRc36GzBBr3M8E9pv82vn1BzRztZGiwreJQhtyGuuCdHlsfTLKlhwfyDJoe/+omMPTx uoIuNk4uPXKE4VzEsEWa7p+Jb6Ag8vLnYZWMzem4yCyQy8IAvdHsTskwAKqMC7x7O3tB 4wJA== X-Received: by 10.66.141.144 with SMTP id ro16mr14288850pab.131.1399437863219; Tue, 06 May 2014 21:44:23 -0700 (PDT) Received: from localhost ([103.249.27.141]) by mx.google.com with ESMTPSA id ss2sm107328807pab.8.2014.05.06.21.44.20 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Tue, 06 May 2014 21:44:22 -0700 (PDT) Date: Wed, 7 May 2014 10:14:18 +0530 From: Himangi Saraogi To: m.chehab@samsung.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org Cc: julia.lawall@lip6.fr Subject: [PATCH] timblogiw: Introduce the use of the managed version of kzalloc Message-ID: <20140507044418.GA3414@himangi-Dell> MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org X-Spam-Status: No, score=-7.4 required=5.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, T_DKIM_INVALID, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This patch moves data allocated using kzalloc to managed data allocated using devm_kzalloc and cleans now unnecessary kfrees in probe and remove functions.The label err_register is removed as it is no longer required. The following Coccinelle semantic patch was used for making the change: @platform@ identifier p, probefn, removefn; @@ struct platform_driver p = { .probe = probefn, .remove = removefn, }; @prb@ identifier platform.probefn, pdev; expression e, e1, e2; @@ probefn(struct platform_device *pdev, ...) { <+... - e = kzalloc(e1, e2) + e = devm_kzalloc(&pdev->dev, e1, e2) ... ?-kfree(e); ...+> } @rem depends on prb@ identifier platform.removefn; expression e; @@ removefn(...) { <... - kfree(e); ...> } Signed-off-by: Himangi Saraogi --- drivers/media/platform/timblogiw.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/media/platform/timblogiw.c b/drivers/media/platform/timblogiw.c index ccdadd6..fbfdada 100644 --- a/drivers/media/platform/timblogiw.c +++ b/drivers/media/platform/timblogiw.c @@ -800,7 +800,7 @@ static int timblogiw_probe(struct platform_device *pdev) if (!pdata->encoder.module_name) dev_info(&pdev->dev, "Running without decoder\n"); - lw = kzalloc(sizeof(*lw), GFP_KERNEL); + lw = devm_kzalloc(&pdev->dev, sizeof(*lw), GFP_KERNEL); if (!lw) { err = -ENOMEM; goto err; @@ -820,7 +820,7 @@ static int timblogiw_probe(struct platform_device *pdev) strlcpy(lw->v4l2_dev.name, DRIVER_NAME, sizeof(lw->v4l2_dev.name)); err = v4l2_device_register(NULL, &lw->v4l2_dev); if (err) - goto err_register; + goto err; lw->video_dev.v4l2_dev = &lw->v4l2_dev; @@ -837,8 +837,6 @@ static int timblogiw_probe(struct platform_device *pdev) err_request: v4l2_device_unregister(&lw->v4l2_dev); -err_register: - kfree(lw); err: dev_err(&pdev->dev, "Failed to register: %d\n", err); @@ -853,8 +851,6 @@ static int timblogiw_remove(struct platform_device *pdev) v4l2_device_unregister(&lw->v4l2_dev); - kfree(lw); - return 0; }