diff options
author | Anton Vorontsov <avorontsov@mvista.com> | 2010-06-25 08:20:53 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@redhat.com> | 2010-08-01 19:36:03 -0400 |
commit | da10a2002cf25a11f18fa1b5e327b9ed717f819c (patch) | |
tree | c2f6a3f63c7ee156f99f02987b539af49ba866e9 | |
parent | 08354809d6c73eb73973e132502a0a4e53250971 (diff) |
ahci_platform: Remove unneeded ahci_driver.probe assignment
The driver is using platform_driver_probe() during initialization,
so ahci_driver.probe hook is never used.
But it causes the following (harmless, luckily) section mismatch:
WARNING: vmlinux.o(.data+0x2fb20): Section mismatch in reference
from the variable ahci_driver to the function .init.text:ahci_probe()
This patch removes the ahci_driver.probe assignment, thus fixes
the warning.
p.s. Note that there's another patch[1] from Rene Bolldorf that
tried to solve the same issue by __refdata annotation. __refdata
says that this reference is actually OK, but in fact it is not OK,
because dereferencing .probe() will cause problems. So the proper
fix is to remove the assignment.
[1] http://kerneltrap.org/mailarchive/linux-kernel/2010/3/18/4549547
Signed-off-by: Anton Vorontsov <avorontsov@mvista.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
-rw-r--r-- | drivers/ata/ahci_platform.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/ata/ahci_platform.c b/drivers/ata/ahci_platform.c index 68ef6b563b7d..4e97f33cca44 100644 --- a/drivers/ata/ahci_platform.c +++ b/drivers/ata/ahci_platform.c | |||
@@ -171,7 +171,6 @@ static int __devexit ahci_remove(struct platform_device *pdev) | |||
171 | } | 171 | } |
172 | 172 | ||
173 | static struct platform_driver ahci_driver = { | 173 | static struct platform_driver ahci_driver = { |
174 | .probe = ahci_probe, | ||
175 | .remove = __devexit_p(ahci_remove), | 174 | .remove = __devexit_p(ahci_remove), |
176 | .driver = { | 175 | .driver = { |
177 | .name = "ahci", | 176 | .name = "ahci", |