From: Arnd Bergmann <arnd@arndb.de>
To: linux-arm-kernel@infradead.org
Cc: arm@kernel.org, linux-kernel@vger.kernel.org,
Arnd Bergmann <arnd@arndb.de>, Ben Dooks <ben-linux@fluff.org>,
Kukjin Kim <kgene.kim@samsung.com>
Subject: [PATCH 10/17] ARM: s3c24xx: fix multiple section mismatch warnings
Date: Tue, 2 Oct 2012 18:36:49 +0200 [thread overview]
Message-ID: <1349195816-2225-11-git-send-email-arnd@arndb.de> (raw)
In-Reply-To: <1349195816-2225-1-git-send-email-arnd@arndb.de>
The *_irq_add function should not be marked __init because the driver
subsystem thinks they might be called at a later stage.
The usb_simtec_init function accesses initdata and should be marked
init. This is safe because the only caller is also an init function.
Without this patch, building s3c2410_defconfig results in:
WARNING: arch/arm/mach-s3c24xx/built-in.o(.data+0x1030): Section mismatch in reference from the variable s3c2416_irq_interface to the function .init.text:s3c2416_irq_add()
The variable s3c2416_irq_interface references
the function __init s3c2416_irq_add()
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console
WARNING: arch/arm/mach-s3c24xx/built-in.o(.data+0x1b08): Section mismatch in reference from the variable s3c2443_irq_interface to the function .init.text:s3c2443_irq_add()
The variable s3c2443_irq_interface references
the function __init s3c2443_irq_add()
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console
WARNING: arch/arm/mach-s3c24xx/built-in.o(.data+0xf44): Section mismatch in reference from the variable s3c2416_irq_interface to the function .init.text:s3c2416_irq_add()
The variable s3c2416_irq_interface references
the function __init s3c2416_irq_add()
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console
WARNING: arch/arm/mach-s3c24xx/built-in.o(.text+0x3f7c): Section mismatch in reference from the function usb_simtec_init() to the (unknown reference) .init.data:(unknown)
The function usb_simtec_init() references
the (unknown reference) __initdata (unknown).
This is often because usb_simtec_init lacks a __initdata
annotation or the annotation of (unknown) is wrong.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Ben Dooks <ben-linux@fluff.org>
Cc: Kukjin Kim <kgene.kim@samsung.com>
---
arch/arm/mach-s3c24xx/irq-s3c2416.c | 6 +++---
arch/arm/mach-s3c24xx/irq-s3c2443.c | 4 ++--
arch/arm/mach-s3c24xx/simtec-usb.c | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/arch/arm/mach-s3c24xx/irq-s3c2416.c b/arch/arm/mach-s3c24xx/irq-s3c2416.c
index 23ec973..ff141b0 100644
--- a/arch/arm/mach-s3c24xx/irq-s3c2416.c
+++ b/arch/arm/mach-s3c24xx/irq-s3c2416.c
@@ -232,7 +232,7 @@ struct irq_chip s3c2416_irq_second = {
/* IRQ initialisation code */
-static int __init s3c2416_add_sub(unsigned int base,
+static int s3c2416_add_sub(unsigned int base,
void (*demux)(unsigned int,
struct irq_desc *),
struct irq_chip *chip,
@@ -251,7 +251,7 @@ static int __init s3c2416_add_sub(unsigned int base,
return 0;
}
-static void __init s3c2416_irq_add_second(void)
+static void s3c2416_irq_add_second(void)
{
unsigned long pend;
unsigned long last;
@@ -287,7 +287,7 @@ static void __init s3c2416_irq_add_second(void)
}
}
-static int __init s3c2416_irq_add(struct device *dev,
+static int s3c2416_irq_add(struct device *dev,
struct subsys_interface *sif)
{
printk(KERN_INFO "S3C2416: IRQ Support\n");
diff --git a/arch/arm/mach-s3c24xx/irq-s3c2443.c b/arch/arm/mach-s3c24xx/irq-s3c2443.c
index ac2829f..5e69109 100644
--- a/arch/arm/mach-s3c24xx/irq-s3c2443.c
+++ b/arch/arm/mach-s3c24xx/irq-s3c2443.c
@@ -222,7 +222,7 @@ static struct irq_chip s3c2443_irq_cam = {
/* IRQ initialisation code */
-static int __init s3c2443_add_sub(unsigned int base,
+static int s3c2443_add_sub(unsigned int base,
void (*demux)(unsigned int,
struct irq_desc *),
struct irq_chip *chip,
@@ -241,7 +241,7 @@ static int __init s3c2443_add_sub(unsigned int base,
return 0;
}
-static int __init s3c2443_irq_add(struct device *dev,
+static int s3c2443_irq_add(struct device *dev,
struct subsys_interface *sif)
{
printk("S3C2443: IRQ Support\n");
diff --git a/arch/arm/mach-s3c24xx/simtec-usb.c b/arch/arm/mach-s3c24xx/simtec-usb.c
index d91c1a7..c303d1b 100644
--- a/arch/arm/mach-s3c24xx/simtec-usb.c
+++ b/arch/arm/mach-s3c24xx/simtec-usb.c
@@ -104,7 +104,7 @@ static struct s3c2410_hcd_info usb_simtec_info __initdata = {
};
-int usb_simtec_init(void)
+int __init usb_simtec_init(void)
{
int ret;
--
1.7.10
next prev parent reply other threads:[~2012-10-02 16:41 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1349195816-2225-1-git-send-email-arnd@arndb.de>
2012-10-02 16:36 ` [PATCH 01/17] ARM: shmobile: fix memory size for kota2_defconfig Arnd Bergmann
2012-10-03 0:37 ` Simon Horman
2012-10-04 8:34 ` Arnd Bergmann
2012-10-04 8:58 ` Simon Horman
2012-11-30 22:10 ` Olof Johansson
2012-12-01 0:26 ` Simon Horman
2013-01-07 1:59 ` Simon Horman
2013-01-07 13:33 ` Arnd Bergmann
2013-01-08 0:19 ` Simon Horman
2013-01-08 19:06 ` Arnd Bergmann
2012-10-02 16:36 ` [PATCH 02/17] ARM: shark: fix shark_pci_init return code Arnd Bergmann
2012-10-02 16:36 ` [PATCH 03/17] ARM: pxa: Wunused-result warning in viper board file Arnd Bergmann
2012-10-02 16:50 ` Marc Zyngier
2012-10-02 16:36 ` [PATCH 04/17] ARM: pxa: define palmte2_pxa_keys conditionally Arnd Bergmann
2012-10-03 11:23 ` Marek Vasut
2012-10-02 16:36 ` [PATCH 05/17] ARM: pxa: remove sharpsl_fatal_check function Arnd Bergmann
2012-10-08 2:38 ` Eric Miao
2012-10-08 3:19 ` Haojian Zhuang
2012-10-02 16:36 ` [PATCH 06/17] ARM: pxa: work around duplicate definition of GPIO24_SSP1_SFRM Arnd Bergmann
2012-10-03 6:38 ` Igor Grinberg
2012-10-02 16:36 ` [PATCH 07/17] ARM: at91: skip at91_io_desc definition for NOMMU Arnd Bergmann
2012-10-02 18:56 ` Jean-Christophe PLAGNIOL-VILLARD
2012-10-04 8:23 ` Arnd Bergmann
2012-10-02 16:36 ` [PATCH 08/17] ARM: at91: unused variable in at91_pm_verify_clocks Arnd Bergmann
2012-10-02 18:55 ` Jean-Christophe PLAGNIOL-VILLARD
2012-10-04 8:28 ` Arnd Bergmann
2012-10-04 13:05 ` Jean-Christophe PLAGNIOL-VILLARD
2012-10-02 16:36 ` [PATCH 09/17] ARM: imx: select ARM_CPU_SUSPEND if necessary Arnd Bergmann
2012-10-07 4:12 ` Shawn Guo
2012-10-07 8:33 ` Arnd Bergmann
2012-10-02 16:36 ` Arnd Bergmann [this message]
2012-10-02 16:36 ` [PATCH 11/17] ARM: mv78xx0: mark mv78xx0_timer_init as __init_refok Arnd Bergmann
2012-10-02 16:36 ` [PATCH 12/17] ARM: iop13xx: mark iop13xx_scan_bus as __devinit Arnd Bergmann
2012-10-02 20:08 ` Bjorn Helgaas
2012-10-04 10:32 ` Arnd Bergmann
2012-10-04 14:30 ` Greg KH
2012-10-02 16:36 ` [PATCH 13/17] ARM: iop13xx: fix iq81340sc_atux_map_irq prototype Arnd Bergmann
2012-10-02 16:36 ` [PATCH 14/17] ARM: davinci: don't mark da850_register_cpufreq as __init Arnd Bergmann
2012-10-04 13:18 ` Sekhar Nori
2012-10-02 16:36 ` [PATCH 15/17] ARM: rpc: check device_register return code in ecard_probe Arnd Bergmann
2012-10-02 16:36 ` [PATCH 16/17] ARM: ks8695: __arch_virt_to_dma type handling Arnd Bergmann
2012-10-02 16:36 ` [PATCH 17/17] ARM: soc: dependency warnings for errata Arnd Bergmann
2012-10-02 17:16 ` Stephen Warren
2012-10-03 11:23 ` Linus Walleij
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1349195816-2225-11-git-send-email-arnd@arndb.de \
--to=arnd@arndb.de \
--cc=arm@kernel.org \
--cc=ben-linux@fluff.org \
--cc=kgene.kim@samsung.com \
--cc=linux-arm-kernel@infradead.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®