OpenCloudOS-Kernel/drivers
Uwe Kleine-König 1b07193b34 platform-drivers: move probe to .devinit.text in drivers/scsi
A pointer to a probe callback is passed to the core via
platform_driver_register and so the function must not disappear when the
.init sections are discarded.  Otherwise (if also having HOTPLUG=y)
unbinding and binding a device to the driver via sysfs will result in an
oops as does a device being registered late.

An alternative to this patch is using platform_driver_probe instead of
platform_driver_register plus removing the pointer to the probe function
from the struct platform_driver.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Cc: Dmitri Vorobiev <dmitri.vorobiev@movial.fi>
Cc: Henrik Kretzschmar <henne@nachtwindheim.de>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Kay Sievers <kay.sievers@vrfy.org>
Cc: peter fuerst <post@pfrst.de>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Acked-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-03-07 17:04:50 -08:00
..
accessibility
acpi Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq 2010-03-07 12:52:38 -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
base Driver core: make struct platform_driver.id_table const 2010-03-07 17:04:49 -08:00
block Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -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 Merge git://git.kernel.org/pub/scm/linux/kernel/git/amit/virtio-console 2010-03-07 16:04:03 -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 Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
eisa eisa: fix coding style for eisa bus code 2010-03-06 11:26:32 -08:00
firewire Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 2010-03-03 08:08:44 -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 Merge branch 'for-linus/i2c' of git://git.fluff.org/bjdooks/linux 2010-03-07 15:56:25 -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 block: Rename blk_queue_max_sectors to blk_queue_max_hw_sectors 2010-02-26 13:58:08 +01: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 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2010-03-01 10:38:09 -08:00
mca
md Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
media Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 2010-03-03 08:48:58 -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 mfd/mmc: SDHI Kconfig update 2010-03-07 22:17:32 +01: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 Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
pcmcia pcmcia: disable pcmcia ioctl for !ARM, prepare for removal 2010-03-03 08:37:41 +01:00
platform Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86 2010-03-03 07:41:24 -08:00
pnp
power power_supply: Enable power supply of max8925 2010-03-07 22:17:17 +01:00
pps
ps3
rapidio
regulator regulator: Add max8925 support 2010-03-07 22:17:08 +01:00
rtc rtc: Enable rtc in max8925 2010-03-07 22:17:16 +01:00
s390 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6 2010-03-02 07:55:08 -08:00
sbus
scsi platform-drivers: move probe to .devinit.text in drivers/scsi 2010-03-07 17:04:50 -08:00
serial Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 2010-03-07 15:47:19 -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 Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
usb USB: remove unused defintion of struct usb_device_status 2010-03-07 12:51:52 -08:00
uwb Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
vhost vhost-net: restart tx poll on sk_sndbuf full 2010-02-28 19:50:33 +02:00
video Driver core: Constify struct sysfs_ops in struct kobj_type 2010-03-07 17:04:49 -08:00
virtio virtio: set pci bus master enable bit 2010-03-02 13:41:14 +02:00
vlynq
w1
watchdog Merge with mainline to remove plat-omap/Kconfig conflict 2010-03-01 14:19:05 -08: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