Currently the annotation for function eeepc_enable_camera() is
__init, and refers to a
function eeepc_hotk_add() which is non-init. Use __devinit for both
functions which is
more appropriate and fixes a section mismatch warning.
We were warned by the following warning:
LD drivers/platform/x86/built-in.o
WARNING: drivers/platform/x86/built-in.o(.text+0x12e1): Section
mismatch in reference from the function eeepc_hotk_add() to the
function .init.text:eeepc_enable_camera()
The function eeepc_hotk_add() references
the function __init eeepc_enable_camera().
This is often because eeepc_hotk_add lacks a __init
annotation or the annotation of eeepc_enable_camera is wrong.
---
Signed-off-by: Rakib Mullick <[email protected]>
--- linus/drivers/platform/x86/eeepc-laptop.c 2009-10-03
12:44:40.000000000 +0600
+++ rakib/drivers/platform/x86/eeepc-laptop.c 2009-10-03
12:48:42.000000000 +0600
@@ -350,7 +350,7 @@ static const struct rfkill_ops eeepc_rfk
.set_block = eeepc_rfkill_set,
};
-static void __init eeepc_enable_camera(void)
+static void __devinit eeepc_enable_camera(void)
{
/*
* If the following call to set_acpi() fails, it's because there's no
@@ -1189,7 +1189,7 @@ static int eeepc_input_init(struct devic
return 0;
}
-static int eeepc_hotk_add(struct acpi_device *device)
+static int __devinit eeepc_hotk_add(struct acpi_device *device)
{
struct device *dev;
int result;
On Saturday 03 October 2009 08:24:53 Rakib Mullick wrote:
> Currently the annotation for function eeepc_enable_camera() is
> __init, and refers to a
> function eeepc_hotk_add() which is non-init. Use __devinit for both
> functions which is
> more appropriate and fixes a section mismatch warning.
>
> We were warned by the following warning:
>
> LD drivers/platform/x86/built-in.o
> WARNING: drivers/platform/x86/built-in.o(.text+0x12e1): Section
> mismatch in reference from the function eeepc_hotk_add() to the
> function .init.text:eeepc_enable_camera()
> The function eeepc_hotk_add() references
> the function __init eeepc_enable_camera().
> This is often because eeepc_hotk_add lacks a __init
> annotation or the annotation of eeepc_enable_camera is wrong.
>
> ---
> Signed-off-by: Rakib Mullick <[email protected]>
>
> --- linus/drivers/platform/x86/eeepc-laptop.c 2009-10-03
> 12:44:40.000000000 +0600
> +++ rakib/drivers/platform/x86/eeepc-laptop.c 2009-10-03
> 12:48:42.000000000 +0600
> @@ -350,7 +350,7 @@ static const struct rfkill_ops eeepc_rfk
> .set_block = eeepc_rfkill_set,
> };
>
> -static void __init eeepc_enable_camera(void)
> +static void __devinit eeepc_enable_camera(void)
> {
> /*
> * If the following call to set_acpi() fails, it's because there's no
> @@ -1189,7 +1189,7 @@ static int eeepc_input_init(struct devic
> return 0;
> }
>
> -static int eeepc_hotk_add(struct acpi_device *device)
> +static int __devinit eeepc_hotk_add(struct acpi_device *device)
> {
> struct device *dev;
> int result;
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
Hi,
The patch is broken again,
The section
> --- linus/drivers/platform/x86/eeepc-laptop.c 2009-10-03
> 12:44:40.000000000 +0600
> +++ rakib/drivers/platform/x86/eeepc-laptop.c 2009-10-03
> 12:48:42.000000000 +0600
is line-wrapped by mail client when you send it. It happens because
rakib/drivers/platform/x86/eeepc-laptop.c is a very long patch.
The Signed-off-by also should be before ---
Anyway I fixed it and applied your patch in acpi4asus tree.
I'll try to get it merged into 2.6.32.
Please read Documentation/email-clients.txt to fix your mail client
or just use git send-email.
Thanks,
--
Corentin Chary
http://xf.iksaif.net