linux/drivers
Julia Lawall 0fbcae222b drivers/char/mmtimer.c: eliminate useless code
The variable x is initialized twice to the same (side effect-free)
expression.  Drop one initialization.

A simplified version of the semantic match that finds this problem is:
(http://coccinelle.lip6.fr/)

// <smpl>
@forall@
idexpression *x;
identifier f!=ERR_PTR;
@@

x = f(...)
... when != x
(
x = f(...,<+...x...+>,...)
|
* x = f(...)
)
// </smpl>

Stefan observed:

  The next x = rb_entry(mn->next, struct mmtimer, list); is preceded by a
  test whether mn->next is NULL.

  Unless that test is redundant too, your patch fixes a potential NULL
  pointer dereference, introduced by commit cbacdd95 "SGI Altix mmtimer:
  allow larger number of timers per node" in 2.6.26.

Signed-off-by: Julia Lawall <julia@diku.dk>
Cc: Stefan Richter <stefanr@s5r6.in-berlin.de>
Cc: Dimitri Sivanich <sivanich@sgi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-03-12 15:52:43 -08:00
..
accessibility
acpi sysfs: Use sysfs_attr_init and sysfs_bin_attr_init on dynamic attributes 2010-03-07 17:04:51 -08:00
amba
ata Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev 2010-03-01 13:04:58 -08:00
atm
auxdisplay auxdisplay: move cfag12864bfb's probe function to .devinit.text 2010-03-07 17:04:50 -08:00
base Driver core: create lock/unlock functions for struct device 2010-03-07 17:04:52 -08:00
block drivers/block/floppy.c: remove unnecessary casting in fd_ioctl 2010-03-12 15:52:31 -08:00
bluetooth Bluetooth: Convert Marvell driver to use per adapter debugfs 2010-02-27 14:05:38 +01:00
cdrom block: Consolidate phys_segment and hw_segment limits 2010-02-26 13:58:08 +01:00
char drivers/char/mmtimer.c: eliminate useless code 2010-03-12 15:52:43 -08:00
clocksource MFGPT: move clocksource menu 2010-03-06 11:26:28 -08:00
connector
cpufreq Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
cpuidle Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
crypto Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2010-02-26 16:50:02 -08:00
dca
dio
dma Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
edac edac: e752x: add dram scrubbing support 2010-03-12 15:52:40 -08:00
eisa eisa: fix coding style for eisa bus code 2010-03-06 11:26:32 -08:00
firewire Driver core: create lock/unlock functions for struct device 2010-03-07 17:04:52 -08:00
firmware Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
gpio driver-core: Add attribute argument to class_attribute show/store 2010-03-07 17:04:48 -08:00
gpu Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
hid USB: Push BKL on open down into the drivers 2010-03-02 14:54:23 -08:00
hwmon Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging 2010-03-06 11:33:09 -08:00
i2c i2c: move i2c_omap's probe function to .devinit.text 2010-03-07 17:04:50 -08:00
ide Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-next-2.6 2010-03-04 08:24:06 -08:00
idle
ieee1394 Driver core: create lock/unlock functions for struct device 2010-03-07 17:04:52 -08:00
ieee802154
infiniband Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
input input: Support onkey in 88pm860x 2010-03-07 22:17:20 +01:00
isdn Merge branch 'master' of /home/davem/src/GIT/linux-2.6/ 2010-02-28 19:23:06 -08:00
leds led: Enable led in 88pm860x 2010-03-07 22:17:05 +01:00
lguest
macintosh sysfs: windfarm: init sysfs attributes 2010-03-07 17:04:51 -08:00
mca
md Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
media media: move omap24xxcam's probe function to .devinit.text 2010-03-07 17:04:50 -08:00
memstick block: Consolidate phys_segment and hw_segment limits 2010-02-26 13:58:08 +01:00
message Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6 2010-03-02 07:55:08 -08:00
mfd mfd: Fix ucb1x00 build failure for collie_defconfig 2010-03-07 22:17:39 +01:00
misc driver core: Convert some drivers to CLASS_ATTR_STRING 2010-03-07 17:04:48 -08:00
mmc sdio: recognize io card without powercycle 2010-03-12 15:52:28 -08:00
mtd driver-core: Add attribute argument to class_attribute show/store 2010-03-07 17:04:48 -08:00
net Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
nubus
of
oprofile
parisc Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
parport serial: 8250_pci: add support for MCS9865 / SYBA 6x Serial Port Card 2010-03-02 14:43:08 -08:00
pci dma-mapping: pci: move pci_set_dma_mask and pci_set_consistent_dma_mask to pci-dma-compat.h 2010-03-12 15:52:42 -08:00
pcmcia Driver core: create lock/unlock functions for struct device 2010-03-07 17:04:52 -08:00
platform msi-laptop: depends on RFKILL 2010-03-07 17:04:53 -08:00
pnp
power power_supply: Enable power supply of max8925 2010-03-07 22:17:17 +01:00
pps pps: serial clients support 2010-03-12 15:52:43 -08:00
ps3
rapidio
regulator regulator: Add max8925 support 2010-03-07 22:17:08 +01:00
rtc rtc/hctosys: only claim the RTC provided the system time if it did 2010-03-12 15:52:28 -08:00
s390 [S390] smsgiucv_app: deliver z/VM CP special messages (SMSG) as uevents 2010-03-08 12:26:28 +01:00
sbus
scsi drivers/scsi/ses.c: eliminate double free 2010-03-12 15:52:28 -08:00
serial serial amba-pl010: enable PPS support 2010-03-12 15:52:43 -08:00
sfi
sh
sn
spi Merge with mainline to remove plat-omap/Kconfig conflict 2010-03-01 14:19:05 -08:00
ssb
staging driver core: Convert some drivers to CLASS_ATTR_STRING 2010-03-07 17:04:48 -08:00
tc
telephony
thermal
uio UIO: Remove SMX Cryptengine driver 2010-03-07 17:04:51 -08:00
usb Driver core: create lock/unlock functions for struct device 2010-03-07 17:04:52 -08:00
uwb Driver core: create lock/unlock functions for struct device 2010-03-07 17:04:52 -08:00
vhost vhost-net: restart tx poll on sk_sndbuf full 2010-02-28 19:50:33 +02:00
video fbdev: bfin-lq035q1-fb: remove duplicated #include 2010-03-12 15:52:34 -08:00
virtio virtio: set pci bus master enable bit 2010-03-02 13:41:14 +02:00
vlynq
w1 w1: mxc_w1: move probe() and remove() to the dev* text area 2010-03-12 15:52:43 -08:00
watchdog [WATCHDOG] i6300esb.c: change platform_driver to pci_driver 2010-03-08 13:48:01 +00:00
xen Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
zorro
Kconfig MFGPT: move clocksource menu 2010-03-06 11:26:28 -08:00
Makefile