linux/drivers
Stefan Richter 6ff8147d07 firewire: sbp2: remove obsolete reference counting
Since commit 0278ccd9d5 "firewire: sbp2:
fix panic after rmmod with slow targets", the lifetime of an sbp2_target
instance does no longer extent past the return of sbp2_remove().
Therefore it is no longer necessary to call fw_unit_get/put() and
fw_device_get/put() in sbp2_probe/remove().

Furthermore, said commit also ensures that lu->work is not going to be
executed or requeued at a time when the sbp2_target is no longer in use.
Hence there is no need for sbp2_target reference counting for lu->work.

Other concurrent contexts:

  - Processes which access the sysfs of the SCSI host device or of one
    of its subdevices are safe because these interfaces are all removed
    by scsi_remove_device/host() in sbp2_release_target().

  - SBP-2 command block ORB transactions are finished when
    scsi_remove_device() in sbp2_release_target() returns.

  - SBP-2 management ORB transactions are finished when
    cancel_delayed_work_sync(&lu->work) before sbp2_release_target()
    returns.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
2011-09-16 22:23:56 +02:00
..
accessibility
acpi Merge branch 'battery' into release 2011-08-05 22:16:42 -04:00
amba
ata drivers/ata/sata_dwc_460ex.c: add missing kfree 2011-08-18 23:58:11 -04:00
atm
auxdisplay
base Merge branch 'for-linus' of git://opensource.wolfsonmicro.com/regmap 2011-09-08 16:47:52 -07:00
bcma bcma: add uevent to the bus, to autoload drivers 2011-08-22 14:21:41 -04:00
block Merge branch 'stable/for-jens' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen into for-linus 2011-08-09 20:43:26 +02:00
bluetooth Bluetooth: Add Toshiba laptops AR30XX device ID 2011-08-11 19:50:26 -03:00
cdrom
char drivers/char/msm_smd_pkt.c: don't use IS_ERR() 2011-08-25 16:25:33 -07:00
clk
clocksource Merge branch 'common/core' into sh-latest 2011-08-08 16:33:54 +09:00
connector
cpufreq
cpuidle
crypto
dca
dio
dma dmaengine/ste_dma40: fix memory leak due to prepared descriptors 2011-09-05 17:08:26 +05:30
edac i7core_edac: fixed typo in error count calculation 2011-08-18 14:07:15 -07:00
eisa eisa/pci_eisa.c: fix BUG introduced by 005bdad7b8 2011-08-04 06:32:51 -10:00
firewire firewire: sbp2: remove obsolete reference counting 2011-09-16 22:23:56 +02:00
firmware firmware: fix google/gsmi.c build warning 2011-08-08 13:53:49 -07:00
gpio
gpu drm: Remove duplicate "return" statement 2011-09-09 09:11:44 +01:00
hid Merge branches 'upstream-fixes' and 'magicmouse' into for-linus 2011-09-07 13:53:17 +02:00
hwmon hwmon: (ucd9000/ucd9200) Optimize array walk 2011-09-06 08:56:07 -07:00
hwspinlock
i2c i2c-tegra: fix possible race condition after tx 2011-09-07 00:13:40 +01:00
ide
idle
ieee802154
infiniband Merge branches 'ipoib' and 'iser' into for-next 2011-08-17 10:57:43 -07:00
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2011-08-24 09:19:03 -07:00
iommu iommu/amd: Don't take domain->lock recursivly 2011-09-02 14:19:50 +02:00
isdn
leds drivers/leds/leds-bd2802.c: bd2802_unregister_led_classdev() should unregister all registered leds 2011-08-25 16:25:35 -07:00
lguest
macintosh
mca
md md: Fix handling for devices from 2TB to 4TB in 0.90 metadata. 2011-09-10 17:21:28 +10:00
media [media] vp7045: fix buffer setup 2011-09-11 09:33:41 -03:00
memstick
message
mfd
misc Merge branch 'driver-core-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2011-08-26 13:05:09 -07:00
mmc mmc: sdhci-s3c: Fix mmc card I/O problem 2011-08-31 16:25:52 -04:00
mtd UBI: do not link debug messages when debugging is disabled 2011-08-19 19:02:27 +03:00
net NET: am79c961: fix race in link status code 2011-09-05 08:58:29 +01:00
nfc
nubus
of
oprofile
parisc
parport
pci PCI: Remove MRRS modification from MPS setting code 2011-09-09 19:49:58 -07:00
pcmcia
platform acer-wmi: support Lenovo ideapad S205 wifi switch 2011-08-05 15:21:52 -04:00
pnp
power s3c-adc-battery: Fix compilation error due to missing header (module.h) 2011-08-19 21:01:46 +04:00
pps
ps3
ptp
rapidio rapidio: fix use of non-compatible registers 2011-08-25 16:25:34 -07:00
regulator
rtc Merge branch 'timers-fixes-for-linus' of git://tesla.tglx.de/git/linux-2.6-tip 2011-09-07 13:03:48 -07:00
s390 [S390] memory hotplug: only unassign assigned increments 2011-08-24 17:15:24 +02:00
sbus
scsi scsi: qla4xxx driver depends on NET 2011-09-10 17:31:31 -07:00
sfi
sh Merge branch 'common/core' into sh-latest 2011-08-08 16:33:54 +09:00
sn
spi
ssb
staging staging: tidspbridge: fix compilation on dsp clock functions 2011-08-24 14:35:26 -07:00
target target: Convert acl_node_lock to be IRQ-disabling 2011-08-22 19:28:36 +00:00
tc
telephony
thermal
tty Merge branch 'sh-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x 2011-08-29 13:34:48 -07:00
uio
usb USB: ftdi_sio: add Calao reference board support 2011-08-25 09:44:50 -07:00
uwb
vhost
video backlight: Declare backlight_types[] const 2011-09-10 14:00:02 -07:00
virt
virtio
vlynq
w1 MAINTAINERS: Evgeniy has moved 2011-08-25 16:25:33 -07:00
watchdog
xen xen: self-balloon needs module.h 2011-08-16 07:23:34 -07:00
zorro
Kconfig
Makefile