public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "André Goddard Rosa" <andre.goddard@gmail.com>
To: "linux list" <linux-kernel@vger.kernel.org>,
	"Andrew Morton" <akpm@linux-foundation.org>
Cc: "André Goddard Rosa" <andre.goddard@gmail.com>
Subject: [PATCH v5 00/12] introduce skip_spaces(), reducing code size plus some clean-ups
Date: Sat, 14 Nov 2009 05:11:48 -0200	[thread overview]
Message-ID: <cover.1258181836.git.andre.goddard@gmail.com> (raw)

This patch reduces lib/lib.a code size by 482 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)
  64641     584     592   65817   10119 (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.

Changelog:
   v5: addressed comments and feedback from many people: Jan Engelhardt,
James Bottomley, Rusty Russell, Alan Cox, Henrique de Moraes Holschuh,
Theodore Tso and Julia Lawall (thanks!)
   v4: converted 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/leds/led-class.c              |    2 +-
 drivers/leds/ledtrig-timer.c          |    4 +-
 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 +-
 drivers/video/output.c                |    2 +-
 fs/cachefiles/daemon.c                |    4 +-
 fs/ext4/super.c                       |    7 +-
 include/linux/ctype.h                 |    3 +-
 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                        |  337 ++++++++++++++++-----------------
 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 +-
 28 files changed, 264 insertions(+), 312 deletions(-)


             reply	other threads:[~2009-11-15  7:13 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-11-14  7:11 André Goddard Rosa [this message]
2009-11-14  7:11 ` [PATCH v5 01/12] vsprintf: factorize "(null)" string André Goddard Rosa
2009-11-14  7:11 ` [PATCH v5 02/12] vsprintf: pre-calculate final string length for later use André Goddard Rosa
2009-11-14  7:11 ` [PATCH v5 03/12] vsprintf: give it some care to please checkpatch.pl André Goddard Rosa
2009-11-14  7:11 ` [PATCH v5 04/12] vsprintf: use TOLOWER whenever possible André Goddard Rosa
2009-11-14  7:11 ` [PATCH v5 05/12] vsprintf: reduce code size by avoiding extra check André Goddard Rosa
2009-11-14  7:11 ` [PATCH v5 06/12] vsprintf: move local vars to block local vars and remove unneeded ones André Goddard Rosa
2009-11-14  7:11 ` [PATCH v5 07/12] vsprintf: factor out skip_space code in a separate function André Goddard Rosa
2009-11-14  7:11 ` [PATCH v5 08/12] vsprintf: reuse almost identical simple_strtoulX() functions André Goddard Rosa
2009-11-14  7:11 ` [PATCH v5 09/12] ctype: constify read-only _ctype string André Goddard Rosa
2009-11-14  7:11 ` [PATCH v5 10/12] string: factorize skip_spaces and export it to be generally available André Goddard Rosa
2009-11-15 19:33   ` Anders Larsen
2009-11-14  7:11 ` [PATCH v5 11/12] string: on strstrip(), first remove leading spaces before running over str André Goddard Rosa
2009-11-14  7:12 ` [PATCH v5 12/12] tree-wide: convert open calls to remove spaces to skip_spaces() lib function André Goddard Rosa
2009-11-16 15:02   ` Henrique de Moraes Holschuh

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.1258181836.git.andre.goddard@gmail.com \
    --to=andre.goddard@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.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