Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752198AbcDSG5I (ORCPT ); Tue, 19 Apr 2016 02:57:08 -0400 Received: from metis.ext.4.pengutronix.de ([92.198.50.35]:58421 "EHLO metis.ext.4.pengutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752034AbcDSG5G (ORCPT ); Tue, 19 Apr 2016 02:57:06 -0400 Date: Tue, 19 Apr 2016 08:56:57 +0200 From: Michael Grzeschik To: Julia Lawall Cc: kernel-janitors@vger.kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, "Luis R . Rodriguez" , Josh Triplett Subject: Re: [PATCH 2/5] arcnet: com90xx: add __init attribute Message-ID: <20160419065657.GD2471@pengutronix.de> References: <1460991338-9845-1-git-send-email-Julia.Lawall@lip6.fr> <1460991338-9845-3-git-send-email-Julia.Lawall@lip6.fr> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1460991338-9845-3-git-send-email-Julia.Lawall@lip6.fr> X-Sent-From: Pengutronix Hildesheim X-URL: http://www.pengutronix.de/ X-IRC: #ptxdist @freenode X-Accept-Language: de,en X-Accept-Content-Type: text/plain X-Uptime: 08:56:12 up 42 days, 9:55, 43 users, load average: 0.14, 0.10, 0.07 User-Agent: Mutt/1.5.23 (2014-03-12) X-SA-Exim-Connect-IP: 2001:67c:670:100:1d::c0 X-SA-Exim-Mail-From: mgr@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1837 Lines: 49 On Mon, Apr 18, 2016 at 04:55:35PM +0200, Julia Lawall wrote: > Add __init attribute on a function that is only called from other __init > functions and that is not inlined, at least with gcc version 4.8.4 on an > x86 machine with allyesconfig. Currently, the function is put in the > .text.unlikely segment. Declaring it as __init will cause it to be put in > the .init.text and to disappear after initialization. > > The result of objdump -x on the function before the change is as follows: > > 0000000000000000 l F .text.unlikely 00000000000000bf check_mirror > > And after the change it is as follows: > > 0000000000000000 l F .init.text 00000000000000ba check_mirror > > Done with the help of Coccinelle. The semantic patch checks for local > static non-init functions that are called from an __init function and are > not called from any other function. > > Signed-off-by: Julia Lawall > Acked-by: Michael Grzeschik > --- > drivers/net/arcnet/com90xx.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/arcnet/com90xx.c b/drivers/net/arcnet/com90xx.c > index 0d9b45f..81f90c4 100644 > --- a/drivers/net/arcnet/com90xx.c > +++ b/drivers/net/arcnet/com90xx.c > @@ -433,7 +433,7 @@ static void __init com90xx_probe(void) > kfree(iomem); > } > > -static int check_mirror(unsigned long addr, size_t size) > +static int __init check_mirror(unsigned long addr, size_t size) > { > void __iomem *p; > int res = -1; > > -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |