kernel_optimize_test/drivers
Julia Lawall d98808a253 drivers/char/ppdev.c: put gotten port value
parport_find_number() calls parport_get_port() on its result, so there
should be a corresponding call to parport_put_port() before dropping the
reference.  Similar code is found in the function register_device() in the
same file.

The semantic match that finds this problem is as follows:
(http://coccinelle.lip6.fr/)

  // <smpl>
  @exists@
  local idexpression struct parport * x;
  expression ra,rr;
  statement S1,S2;
  @@

  x = parport_find_number(...)
  ... when != x = rr
      when any
      when != parport_put_port(x,...)
      when != if (...) { ... parport_put_port(x,...) ...}
  (
  if(<+...x...+>) S1 else S2
  |
  if(...) { ... when != x = ra
       when forall
       when != parport_put_port(x,...)
  *return...;
  }
  )
  // </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-05-26 17:12:37 -07:00
..
accessibility
acpi Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging 2011-05-25 16:52:50 -07:00
amba
ata Merge branch 'for-2.6.40/core' of git://git.kernel.dk/linux-2.6-block 2011-05-25 09:14:07 -07:00
atm
auxdisplay
base mm: per-node vmstat: show proper vmstats 2011-05-25 08:39:07 -07:00
bcma drivers/bcma/host_pci.c needs slab.h 2011-05-26 17:12:32 -07:00
block Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client 2011-05-25 11:46:31 -07:00
bluetooth
cdrom
char drivers/char/ppdev.c: put gotten port value 2011-05-26 17:12:37 -07:00
clk
clocksource
connector
cpufreq
cpuidle
crypto
dca
dio
dma mfd: Use mfd cell platform_data for timberdale cells platform bits 2011-05-26 19:45:05 +02:00
edac edac,rcu: use synchronize_rcu() instead of call_rcu()+rcu_barrier() 2011-05-26 17:12:37 -07:00
eisa
firewire
firmware
gpio Merge branch 'gpio/next' of git://git.secretlab.ca/git/linux-2.6 2011-05-26 12:14:41 -07:00
gpu vmscan: change shrinker API by passing shrink_control struct 2011-05-25 08:39:26 -07:00
hid
hwmon hwmon: New driver for the SMSC EMC6W201 2011-05-25 20:43:33 +02:00
hwspinlock
i2c mfd: Use mfd cell platform_data for timberdale cells platform bits 2011-05-26 19:45:05 +02:00
ide Merge branch 'for-2.6.40/core' of git://git.kernel.dk/linux-2.6-block 2011-05-25 09:14:07 -07:00
idle
ieee802154
infiniband Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband 2011-05-26 12:13:57 -07:00
input input: Add support for Qualcomm PMIC8XXX power key 2011-05-26 19:45:54 +02:00
isdn Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 2011-05-26 13:19:00 -07:00
leds leds: Add ASIC3 LED support 2011-05-26 19:45:46 +02:00
lguest
macintosh
mca
md
media Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 2011-05-26 13:19:00 -07:00
memstick
message
mfd mfd: Add omap-usbhs runtime PM support 2011-05-26 19:45:52 +02:00
misc kgdbts: unify/generalize gdb breakpoint adjustment 2011-05-26 17:12:36 -07:00
mmc mmc: Use device platform_data to retrieve tmio_mmc platform bits 2011-05-26 19:44:59 +02:00
mtd mtd: Use platform_data to retrieve tmio_nand platform bits 2011-05-26 19:45:04 +02:00
net Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 2011-05-26 13:19:00 -07:00
nfc
nubus
of
oprofile
parisc
parport Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 2011-05-26 13:19:00 -07:00
pci
pcmcia
platform x86: remove 32-bit versions of readq()/writeq() 2011-05-25 08:39:44 -07:00
pnp
power power_supply: Use max8925 platform_data from cell 2011-05-26 19:45:32 +02:00
pps
ps3
ptp
rapidio
regulator regulator: Fix 88pm8607.c printk format warning 2011-05-26 19:47:29 +02:00
rtc drivers/rtc/rtc-mxc.c: remove defines already included in rtc.h 2011-05-26 17:12:33 -07:00
s390
sbus
scsi Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 2011-05-26 13:19:00 -07:00
sfi
sh
sn
spi Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 2011-05-26 12:14:20 -07:00
ssb
staging Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 2011-05-26 13:19:00 -07:00
target
tc
telephony
thermal
tty m32r: fix spin_lock_irqsave() misuse 2011-05-26 17:12:33 -07:00
uio
usb
uwb
vhost
video drivers/video/mb862xx/mb862xxfbdrv.c needs uaccess.h 2011-05-26 17:12:32 -07:00
virtio
vlynq
w1 w1: Use device platform_data to retrieve ds1wm platform bits 2011-05-26 19:45:00 +02:00
watchdog mfd: Use mfd cell platform_data for rdc321x cells platform bits 2011-05-26 19:45:06 +02:00
xen Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/djm/tmem 2011-05-26 10:50:56 -07:00
zorro
Kconfig
Makefile Merge branch 'timers-ptp-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2011-05-25 08:59:42 -07:00