linux-um archives
 help / color / mirror / Atom feed
From: "André Goddard Rosa" <andre.goddard@gmail.com>
To: Martin Schwidefsky <schwidefsky@de.ibm.com>,
	Heiko Carstens <heiko.carstens@de.ibm.com>,
	linux390@de.ibm.com, Michael Holzheu <holzheu@linux.vnet.ibm.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Stoyan Gaydarov <stoyboyker@gmail.com>,
	Julia Lawall <julia@diku.dk>, Jeff Dike <jdike@addtoit.com>,
	James Morris <jmorris@namei.org>, WANG Cong <wangcong@zeuux.org>,
	Pekka Enberg <penberg@cs.helsinki.fi>,
	David Howells <dhowells@redhat.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, "H . Peter Anvin" <hpa@zytor.com>,
	x86@kernel.org, Alexey Dobriyan <adobriyan@gmail.com>,
	Joe Perches <joe@perches.com>,
	Alan Cox <alan@lxorguk.ukuu.org.uk>,
	Arjan van de Ven <arjan@linux.intel.com>,
	Neil Brown <neilb@suse.de>, Alasdair G Kergon <agk@redhat.com>,
	Mike Snitzer <snitzer@redhat.com>,
	Mikulas Patocka <mpatocka@redhat.com>,
	Jens Axboe <jens.axboe@oracle.com>,
	"Martin K . Petersen" <martin.petersen@oracle.com>,
	Andre Noll <maan@systemlinux.org>,
	Kyle McMartin <kyle@mcmartin.ca>, Helge Deller <deller@gmx.de>,
	"James E . J . Bottomley" <jejb@parisc-linux.org>,
	Roel Kluin <roel.kluin@gmail.com>,
	Henrique de Moraes Holschuh <ibm-acpi@hmh.eng.br>,
	Len Brown <len.brown@intel.com>, Adam Belay <abelay@mit.edu>,
	Bjorn Helgaas <bjorn.helgaas@hp.com>,
	Stefan Haberland <stefan.haberland@de.ibm.com>,
	Stefan Weinhuber <wein@de.ibm.com>,
	Richard Purdie <rpurdie@rpsys.net>,
	Andrea Righi <righi.andrea@gmail.com>,
	Greg Kroah-Hartman <gregkh@suse.de>,
	Pavel Roskin <proski@gnu.org>,
	Andrey Borzenkov <arvidjaar@mail.ru>,
	Steve Dickson <steved@redhat.com>,
	Trond Myklebust <Trond.Myklebust@netapp.com>,
	Daire Byrne <Daire.Byrne@framestore.com>,
	Al Viro <viro@zeniv.linux.org.uk>, Theodore Ts'o <tytso@mit.edu>,
	Andreas Dilger <adilger@sun.com>,
	Eric Sandeen <sandeen@redhat.com>, Jan Kara <jack@suse.cz>,
	Rusty Russell <rusty@rustcorp.com.au>,
	Takashi Iwai <tiwai@suse.de>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Sitsofe Wheeler <sitsofe@yahoo.com>,
	Christof Schmitt <christof.schmitt@de.ibm.com>,
	Greg Banks <gnb@melbourne.sgi.com>,
	Jason Baron <jbaron@redhat.com>,
	"David S . Miller" <davem@davemloft.net>,
	Steven Rostedt <rostedt@goodmis.org>,
	Samuel Ortiz <samuel@sortiz.org>,
	Patrick McHardy <kaber@trash.net>,
	Jan Engelhardt <jengelh@medozas.de>,
	Roman Hoog Antink <rha@open.ch>, Jaroslav Kysela <perex@perex.cz>,
	linux-s390@vger.kernel.org, linux-kernel@vger.kernel.org,
	user-mode-linux-devel@lists.sourceforge.net,
	user-mode-linux-user@lists.sourceforge.net, dm-devel@redhat.com,
	linux-raid@vger.kernel.org, linux-parisc@vger.kernel.org,
	ibm-acpi-devel@lists.sourceforge.net, linux-cachefs@redhat.com,
	linux-ext4@vger.kernel.org, netdev@vger.kernel.org,
	netfilter-devel@vger.kernel.org, netfilter@vger.kernel.org,
	coreteam@netfilter.org, alsa-devel@alsa-project.org
Cc: "André Goddard Rosa" <andre.goddard@gmail.com>
Subject: [uml-devel] [PATCH v4 00/12] introduce skip_spaces(), reducing code size plus some clean-ups
Date: Sat,  7 Nov 2009 13:16:08 -0200	[thread overview]
Message-ID: <cover.1257602781.git.andre.goddard@gmail.com> (raw)

This patch reduces lib.a code size by 173 bytes on my Core 2 with gcc 4.4.1
even considering that it exports a newly defined function skip_spaces()
to drivers:
   text    data     bss     dec     hex filename                           
  64867     840     592   66299   102fb (TOTALS-lib.a-before)
  64954     584     588   66126   1024e (TOTALS-lib.a-after)
and implements some code tidy up.

Besides reducing lib.a size, it converts many in-tree drivers to use the
newly defined function, which makes another small reduction on kernel size
overall when those drivers are used.

p.s.: Ingo, I hope to have finally fixed my environment by using send-email now.
Please let me know if you have any problem with these and thank you for the
good advice. get_maintainer.pl gave lots of people as output, I hope that's ok.

Changelog:
   v4: convert drivers over newly defined skip_spaces() function 
   v3: improved comments on patch 5/7 and factorize a switch statement on 6/7
as per suggestions from Ingo and Frederic (thanks!)
   v2: addressed feedback from Frederic Weisbecker review (thanks!!)
and split into separate patches
   v1: original submission

André Goddard Rosa (12):
  vsprintf: factorize "(null)" string
  vsprintf: pre-calculate final string length for later use
  vsprintf: give it some care to please checkpatch.pl
  vsprintf: use TOLOWER whenever possible
  vsprintf: reduce code size by avoiding extra check
  vsprintf: move local vars to block local vars and remove unneeded
    ones
  vsprintf: factor out skip_space code in a separate function
  vsprintf: reuse almost identical simple_strtoulX() functions
  ctype: constify read-only _ctype string
  string: factorize skip_spaces and export it to be generally available
  string: on strstrip(), first remove leading spaces before running
    over str
  tree-wide: convert open calls to remove spaces to skip_spaces() lib
    function

 arch/s390/kernel/debug.c              |    3 +-
 arch/um/drivers/mconsole_kern.c       |   16 +-
 arch/x86/kernel/cpu/mtrr/if.c         |   11 +-
 drivers/md/dm-table.c                 |    6 +-
 drivers/md/md.c                       |    4 +-
 drivers/parisc/pdc_stable.c           |    9 +-
 drivers/platform/x86/thinkpad_acpi.c  |    7 +-
 drivers/pnp/interface.c               |   36 +---
 drivers/s390/block/dasd_proc.c        |    5 +-
 drivers/video/backlight/lcd.c         |    4 +-
 drivers/video/display/display-sysfs.c |    2 +-
 fs/cachefiles/daemon.c                |    8 +-
 fs/ext4/super.c                       |    7 +-
 include/linux/ctype.h                 |    2 +-
 include/linux/string.h                |    1 +
 kernel/params.c                       |    8 +-
 lib/argv_split.c                      |   13 +-
 lib/ctype.c                           |   50 +++---
 lib/dynamic_debug.c                   |    4 +-
 lib/string.c                          |   19 ++-
 lib/vsprintf.c                        |  342 ++++++++++++++++-----------------
 net/irda/irnet/irnet.h                |    1 +
 net/irda/irnet/irnet_ppp.c            |    8 +-
 net/netfilter/xt_recent.c             |    3 +-
 sound/pci/hda/hda_hwdep.c             |    7 +-
 25 files changed, 264 insertions(+), 312 deletions(-)


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

             reply	other threads:[~2009-11-07 15:16 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-11-07 15:16 André Goddard Rosa [this message]
2009-11-07 15:16 ` [uml-devel] [PATCH v4 01/12] vsprintf: factorize "(null)" string André Goddard Rosa
2009-11-07 15:16 ` [uml-devel] [PATCH v4 02/12] vsprintf: pre-calculate final string length for later use André Goddard Rosa
2009-11-07 15:16 ` [uml-devel] [PATCH v4 03/12] vsprintf: give it some care to please checkpatch.pl André Goddard Rosa
2009-11-07 15:16 ` [uml-devel] [PATCH v4 04/12] vsprintf: use TOLOWER whenever possible André Goddard Rosa
2009-11-07 15:16 ` [uml-devel] [PATCH v4 05/12] vsprintf: reduce code size by avoiding extra check André Goddard Rosa
2009-11-07 15:16 ` [uml-devel] [PATCH v4 06/12] vsprintf: move local vars to block local vars and remove unneeded ones André Goddard Rosa
2009-11-07 15:16 ` [uml-devel] [PATCH v4 07/12] vsprintf: factor out skip_space code in a separate function André Goddard Rosa
2009-11-07 15:16 ` [uml-devel] [PATCH v4 08/12] vsprintf: reuse almost identical simple_strtoulX() functions André Goddard Rosa
2009-11-07 15:16 ` [uml-devel] [PATCH v4 09/12] ctype: constify read-only _ctype string André Goddard Rosa
2009-11-07 15:16 ` [uml-devel] [PATCH v4 10/12] string: factorize skip_spaces and export it to be generally available André Goddard Rosa
2009-11-08 16:50   ` Alan Cox
2009-11-07 15:16 ` [uml-devel] [PATCH v4 11/12] string: on strstrip(), first remove leading spaces before running over str André Goddard Rosa
2009-11-07 15:16 ` [uml-devel] [PATCH v4 12/12] tree-wide: convert open calls to remove spaces to skip_spaces() lib function André Goddard Rosa
2009-11-08 18:47   ` Theodore Tso
2009-11-08 20:23     ` Julia Lawall
2009-11-08 16:05 ` [uml-devel] [dm-devel] [PATCH v4 00/12] introduce skip_spaces(), reducing code size plus some clean-ups James Bottomley
2009-11-08 16:52   ` André Goddard Rosa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1257602781.git.andre.goddard@gmail.com \
    --to=andre.goddard@gmail.com \
    --cc=Daire.Byrne@framestore.com \
    --cc=Trond.Myklebust@netapp.com \
    --cc=abelay@mit.edu \
    --cc=adilger@sun.com \
    --cc=adobriyan@gmail.com \
    --cc=agk@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=alsa-devel@alsa-project.org \
    --cc=arjan@linux.intel.com \
    --cc=arvidjaar@mail.ru \
    --cc=bjorn.helgaas@hp.com \
    --cc=christof.schmitt@de.ibm.com \
    --cc=coreteam@netfilter.org \
    --cc=davem@davemloft.net \
    --cc=deller@gmx.de \
    --cc=dhowells@redhat.com \
    --cc=dm-devel@redhat.com \
    --cc=fweisbec@gmail.com \
    --cc=gnb@melbourne.sgi.com \
    --cc=gregkh@suse.de \
    --cc=heiko.carstens@de.ibm.com \
    --cc=holzheu@linux.vnet.ibm.com \
    --cc=hpa@zytor.com \
    --cc=ibm-acpi-devel@lists.sourceforge.net \
    --cc=ibm-acpi@hmh.eng.br \
    --cc=jack@suse.cz \
    --cc=jbaron@redhat.com \
    --cc=jdike@addtoit.com \
    --cc=jejb@parisc-linux.org \
    --cc=jengelh@medozas.de \
    --cc=jens.axboe@oracle.com \
    --cc=jmorris@namei.org \
    --cc=joe@perches.com \
    --cc=julia@diku.dk \
    --cc=kaber@trash.net \
    --cc=kyle@mcmartin.ca \
    --cc=len.brown@intel.com \
    --cc=linux-cachefs@redhat.com \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-parisc@vger.kernel.org \
    --cc=linux-raid@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=linux390@de.ibm.com \
    --cc=maan@systemlinux.org \
    --cc=martin.petersen@oracle.com \
    --cc=mingo@redhat.com \
    --cc=mpatocka@redhat.com \
    --cc=neilb@suse.de \
    --cc=netdev@vger.kernel.org \
    --cc=netfilter-devel@vger.kernel.org \
    --cc=netfilter@vger.kernel.org \
    --cc=penberg@cs.helsinki.fi \
    --cc=perex@perex.cz \
    --cc=proski@gnu.org \
    --cc=rha@open.ch \
    --cc=righi.andrea@gmail.com \
    --cc=roel.kluin@gmail.com \
    --cc=rostedt@goodmis.org \
    --cc=rpurdie@rpsys.net \
    --cc=rusty@rustcorp.com.au \
    --cc=samuel@sortiz.org \
    --cc=sandeen@redhat.com \
    --cc=schwidefsky@de.ibm.com \
    --cc=sitsofe@yahoo.com \
    --cc=snitzer@redhat.com \
    --cc=stefan.haberland@de.ibm.com \
    --cc=steved@redhat.com \
    --cc=stoyboyker@gmail.com \
    --cc=tglx@linutronix.de \
    --cc=tiwai@suse.de \
    --cc=tytso@mit.edu \
    --cc=user-mode-linux-devel@lists.sourceforge.net \
    --cc=user-mode-linux-user@lists.sourceforge.net \
    --cc=viro@zeniv.linux.org.uk \
    --cc=wangcong@zeuux.org \
    --cc=wein@de.ibm.com \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox