linux/drivers
André Goddard Rosa e7d2860b69 tree-wide: convert open calls to remove spaces to skip_spaces() lib function
Makes use of skip_spaces() defined in lib/string.c for removing leading
spaces from strings all over the tree.

It decreases lib.a code size by 47 bytes and reuses the function tree-wide:
   text    data     bss     dec     hex filename
  64688     584     592   65864   10148 (TOTALS-BEFORE)
  64641     584     592   65817   10119 (TOTALS-AFTER)

Also, while at it, if we see (*str && isspace(*str)), we can be sure to
remove the first condition (*str) as the second one (isspace(*str)) also
evaluates to 0 whenever *str == 0, making it redundant. In other words,
"a char equals zero is never a space".

Julia Lawall tried the semantic patch (http://coccinelle.lip6.fr) below,
and found occurrences of this pattern on 3 more files:
    drivers/leds/led-class.c
    drivers/leds/ledtrig-timer.c
    drivers/video/output.c

@@
expression str;
@@

( // ignore skip_spaces cases
while (*str &&  isspace(*str)) { \(str++;\|++str;\) }
|
- *str &&
isspace(*str)
)

Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
Cc: Julia Lawall <julia@diku.dk>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Jeff Dike <jdike@addtoit.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Cc: Neil Brown <neilb@suse.de>
Cc: Kyle McMartin <kyle@mcmartin.ca>
Cc: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Cc: David Howells <dhowells@redhat.com>
Cc: <linux-ext4@vger.kernel.org>
Cc: Samuel Ortiz <samuel@sortiz.org>
Cc: Patrick McHardy <kaber@trash.net>
Cc: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-12-15 08:53:32 -08:00
..
accessibility
acpi Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq 2009-12-11 15:59:23 -08:00
amba
ata Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2009-12-12 14:27:24 -08:00
atm Merge branch 'master' of /home/davem/src/GIT/linux-2.6/ 2009-12-11 17:12:17 -08:00
auxdisplay
base mm: slab-allocate memory section nodemask for large systems 2009-12-15 08:53:20 -08:00
block floppy: Add an extra bound check on ioctl arguments 2009-12-15 08:53:25 -08:00
bluetooth USB: remove the auto_pm flag 2009-12-11 11:55:21 -08:00
cdrom Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 2009-12-09 19:03:16 -08:00
char vt: introduce and use vt_kmsg_redirect() function 2009-12-15 08:53:28 -08:00
clocksource cs5535: add a generic clock event MFGPT driver 2009-12-15 08:53:28 -08:00
connector
cpufreq Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu 2009-12-14 09:58:24 -08:00
cpuidle drivers/cpuidle: Move dereference after NULL test 2009-12-15 08:53:25 -08:00
crypto Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu 2009-12-14 09:58:24 -08:00
dca
dio
dma const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
edac x86, msr: Add support for non-contiguous cpumasks 2009-12-11 10:59:21 -08:00
eisa
firewire Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 2009-12-11 15:22:27 -08:00
firmware firmware_class: make request_firmware_nowait more useful 2009-12-11 11:24:52 -08:00
gpio cs5535: drop the Geode-specific MFGPT/GPIO code 2009-12-15 08:53:28 -08:00
gpu Merge branch 'drm-nouveau-pony' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 2009-12-11 14:32:49 -08:00
hid USB: remove the auto_pm flag 2009-12-11 11:55:21 -08:00
hwmon const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
i2c const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
ide Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2009-12-12 14:27:24 -08:00
idle
ieee1394 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2009-12-09 19:43:33 -08:00
ieee802154
infiniband Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu 2009-12-14 09:58:24 -08:00
input const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
isdn Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 2009-12-14 12:33:02 -08:00
leds tree-wide: convert open calls to remove spaces to skip_spaces() lib function 2009-12-15 08:53:32 -08:00
lguest Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu 2009-12-14 09:58:24 -08:00
macintosh Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2009-12-12 14:27:24 -08:00
mca
md tree-wide: convert open calls to remove spaces to skip_spaces() lib function 2009-12-15 08:53:32 -08:00
media const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
memstick
message Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2009-12-09 19:43:33 -08:00
mfd mfd: Add twl6030 regulator subdevices 2009-12-14 00:26:26 +01:00
misc cs5535: drop the Geode-specific MFGPT/GPIO code 2009-12-15 08:53:28 -08:00
mmc const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
mtd const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
net const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
nubus
of Merge commit 'origin/master' into next 2009-12-09 17:14:38 +11:00
oprofile Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu 2009-12-14 09:58:24 -08:00
parisc tree-wide: convert open calls to remove spaces to skip_spaces() lib function 2009-12-15 08:53:32 -08:00
parport Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k 2009-12-08 08:13:35 -08:00
pci const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
pcmcia const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
platform tree-wide: convert open calls to remove spaces to skip_spaces() lib function 2009-12-15 08:53:32 -08:00
pnp tree-wide: convert open calls to remove spaces to skip_spaces() lib function 2009-12-15 08:53:32 -08:00
power const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
pps
ps3
rapidio
regulator regulator: Add support for twl6030 regulators 2009-12-14 00:26:20 +01:00
rtc const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
s390 tree-wide: convert open calls to remove spaces to skip_spaces() lib function 2009-12-15 08:53:32 -08:00
sbus
scsi drivers/scsi/sym53c8xx_2/sym_glue.c: rename skip_spaces() to sym_skip_spaces() 2009-12-15 08:53:32 -08:00
serial ioc3/ioc4: fix error path on driver registration 2009-12-15 08:53:27 -08:00
sfi
sh
sn ioc3/ioc4: fix error path on driver registration 2009-12-15 08:53:27 -08:00
spi const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
ssb
staging Staging: batman: fix debug Kconfig option 2009-12-11 15:49:27 -08:00
tc
telephony
thermal
uio const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
usb const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
uwb
video tree-wide: convert open calls to remove spaces to skip_spaces() lib function 2009-12-15 08:53:32 -08:00
virtio
vlynq
w1
watchdog const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
xen Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2009-12-11 12:18:16 -08:00
zorro
Kconfig cs5535: add a generic clock event MFGPT driver 2009-12-15 08:53:28 -08:00
Makefile