From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751320AbdAYGts (ORCPT ); Wed, 25 Jan 2017 01:49:48 -0500 Received: from mail3-relais-sop.national.inria.fr ([192.134.164.104]:39190 "EHLO mail3-relais-sop.national.inria.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751289AbdAYGtq (ORCPT ); Wed, 25 Jan 2017 01:49:46 -0500 X-IronPort-AV: E=Sophos;i="5.33,282,1477954800"; d="scan'208";a="210801780" Date: Wed, 25 Jan 2017 07:49:43 +0100 (CET) From: Julia Lawall X-X-Sender: jll@hadrien To: Joe Perches cc: Dan Williams , Bhumika Goyal , "linux-nvdimm@lists.01.org" , "linux-kernel@vger.kernel.org" Subject: Re: [PATCH] nvdimm: constify device_type structures In-Reply-To: <1485312569.12563.52.camel@perches.com> Message-ID: References: <1485285847-7006-1-git-send-email-bhumirks@gmail.com> <1485311842.12563.50.camel@perches.com> <1485312569.12563.52.camel@perches.com> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: multipart/mixed; BOUNDARY="8323329-1623351688-1485326984=:2011" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --8323329-1623351688-1485326984=:2011 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8BIT On Tue, 24 Jan 2017, Joe Perches wrote: > On Tue, 2017-01-24 at 18:40 -0800, Dan Williams wrote: > > On Tue, Jan 24, 2017 at 6:37 PM, Joe Perches wrote: > > > On Wed, 2017-01-25 at 00:54 +0530, Bhumika Goyal wrote: > > > > Declare device_type structure as const as it is only stored in the > > > > type field of a device structure. This field is of type const, so add > > > > const to declaration of device_type structure. > > > > > > > > File size before: > > > > text data bss dec hex filename > > > > 19278 3199 16 22493 57dd nvdimm/namespace_devs.o > > > > > > > > File size after: > > > > text data bss dec hex filename > > > > 19929 3160 16 23105 5a41 nvdimm/namespace_devs.o > > > > > > Fine, but are you sure about the sizes? > > > > > > It seems odd the text went up 651 bytes > > > while the data went down just 39 bytes. > > > > > > > Right, the size data wasn't why I applied it. It was the general rule > > of "make function pointer data read-only whenever possible to > > eliminate a kernel attack vector". > > Exactly the correct reason it's a fine patch and one > that should be applied. > > > Bhumika, you might want to mention > > this as the motivating reason to apply the patch if you do more of > > these changes. > > Regardless, the object sizes are still odd. > > The config should be mentioned because actually, > the commonly compiles sizes reported are not correct. > > with an x86-64 defconfig I get: > > $ size drivers/nvdimm/namespace_devs.o* >    text    data     bss     dec     hex filename >   14615     519      16   15150    3b2e drivers/nvdimm/namespace_devs.o.new >   14439     695      16   15150    3b2e drivers/nvdimm/namespace_devs.o.old What does the data column actually represent? I tried size on the .o file generated from: commit a65f0161f4d69d6738d4821e649448312cd818e2 Author: Stephen Rothwell Date: Tue Jan 17 15:22:28 2017 +1100 with CONFIG_X86_64=y and I get: text data bss dec hex filename 19726 3480 16 23222 5ab6 drivers/nvdimm/namespace_devs.o but when I run objdump -sh drivers/nvdimm/namespace_devs.o, I find a .data segment of size 1008 and a .data.unlikely segment of size 8, which don't match up with the results of size. julia --8323329-1623351688-1485326984=:2011--