All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
To: Adrian Bunk <bunk@kernel.org>
Cc: rusty@rustcorp.com.au, LKML <linux-kernel@vger.kernel.org>,
	linux-input@vger.kernel.org, Andy Whitcroft <apw@shadowen.org>,
	Balbir Singh <balbir@linux.vnet.ibm.com>,
	Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Subject: Re: [BUILD_FAILURE] 2.6.24-git18 build fails section type conflict psmouse-base
Date: Fri, 08 Feb 2008 19:53:10 +0530	[thread overview]
Message-ID: <47AC65CE.7090708@linux.vnet.ibm.com> (raw)
In-Reply-To: <20080208133022.GA2254@cs181133002.pp.htv.fi>

Adrian Bunk wrote:
> On Fri, Feb 08, 2008 at 06:20:52PM +0530, Kamalesh Babulal wrote:
>> Adrian Bunk wrote:
>>> On Fri, Feb 08, 2008 at 04:02:59PM +0530, Kamalesh Babulal wrote:
>>>> Hi,
>>>>
>>>> The 2.6.24-git18 kernel build fails on the power machine with following message
>>>>
>>>> drivers/input/mouse/psmouse-base.c:44: error: __param_proto causes a section type conflict
>>>> drivers/input/mouse/psmouse-base.c:44: error: __param_proto causes a section type conflict
>>>> make[3]: *** [drivers/input/mouse/psmouse-base.o] Error 1
>>>> make[2]: *** [drivers/input/mouse] Error 2
>>>> make[1]: *** [drivers/input] Error 2
>>>> make: *** [drivers] Error 2
>>>>
>>>> this failure was reported earlier http://lkml.org/lkml/2007/9/22/64
>>> You need the patch from [1] manually applied (due to changed context) 
>>> and with " || defined(__powerpc__)" added for getting it compiling.
>>>
>>> @Rusty:
>>> Can you look at this issue? It's a modules problem on 3 architectures.
>>>
>>> cu
>>> Adrian
>>>
>>> [1] http://lkml.org/lkml/2007/12/27/29
>>>
>> I tried manually applying the patch and added ||defined(__powerpc__), the above
>> build failure was resolved but it started failing at another place, 
>>
>>   CC      kernel/printk.o
>> kernel/printk.c:568: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘static’
>> make[1]: *** [kernel/printk.o] Error 1
>> make: *** [kernel] Error 2
> 
> Below is what worked for me (based on Ivan's patch).
> 
> The comment is wrong now, the #if's should refer to kconfig variables, 
> and I don't know whether this patch is really the best solution.
> 
> cu
> Adrian
> 
> 
> 1fffe660ace75bd875fc23f7b2121d7341f08464 diff --git a/include/linux/moduleparam.h b/include/linux/moduleparam.h
> index 8126e55..d17ce12 100644
> --- a/include/linux/moduleparam.h
> +++ b/include/linux/moduleparam.h
> @@ -62,6 +62,15 @@ struct kparam_array
>  	void *elem;
>  };
> 
> +/* On alpha and ia64 relocations to global data cannot go into read-only
> +   sections, so 'const' makes no sense and even causes compile failures
> +   with some compilers. */
> +#if defined(__alpha__) || defined(__ia64__) || defined(__powerpc__)
> +#define __moduleparam_const
> +#else
> +#define __moduleparam_const const
> +#endif
> +
>  /* This is the fundamental function for registering boot/module
>     parameters.  perm sets the visibility in sysfs: 000 means it's
>     not there, read bits mean it's readable, write bits mean it's
> @@ -71,7 +80,7 @@ struct kparam_array
>  	static int __param_perm_check_##name __attribute__((unused)) =	\
>  	BUILD_BUG_ON_ZERO((perm) < 0 || (perm) > 0777 || ((perm) & 2));	\
>  	static const char __param_str_##name[] = prefix #name;		\
> -	static struct kernel_param const __param_##name			\
> +	static struct kernel_param __moduleparam_const __param_##name			\
>  	__used								\
>      __attribute__ ((unused,__section__ ("__param"),aligned(sizeof(void *)))) \
>  	= { __param_str_##name, perm, set, get, { arg } }
> --
Hi Adrian,

Thanks the patch resolves the problem, I had a typo when applied the manually :-(.

-- 
Thanks & Regards,
Kamalesh Babulal,
Linux Technology Center,
IBM, ISTL.
-
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
To: Adrian Bunk <bunk@kernel.org>
Cc: rusty@rustcorp.com.au, LKML <linux-kernel@vger.kernel.org>,
	linux-input@vger.kernel.org, Andy Whitcroft <apw@shadowen.org>,
	Balbir Singh <balbir@linux.vnet.ibm.com>,
	Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Subject: Re: [BUILD_FAILURE] 2.6.24-git18 build fails section type conflict psmouse-base
Date: Fri, 08 Feb 2008 19:53:10 +0530	[thread overview]
Message-ID: <47AC65CE.7090708@linux.vnet.ibm.com> (raw)
In-Reply-To: <20080208133022.GA2254@cs181133002.pp.htv.fi>

Adrian Bunk wrote:
> On Fri, Feb 08, 2008 at 06:20:52PM +0530, Kamalesh Babulal wrote:
>> Adrian Bunk wrote:
>>> On Fri, Feb 08, 2008 at 04:02:59PM +0530, Kamalesh Babulal wrote:
>>>> Hi,
>>>>
>>>> The 2.6.24-git18 kernel build fails on the power machine with following message
>>>>
>>>> drivers/input/mouse/psmouse-base.c:44: error: __param_proto causes a section type conflict
>>>> drivers/input/mouse/psmouse-base.c:44: error: __param_proto causes a section type conflict
>>>> make[3]: *** [drivers/input/mouse/psmouse-base.o] Error 1
>>>> make[2]: *** [drivers/input/mouse] Error 2
>>>> make[1]: *** [drivers/input] Error 2
>>>> make: *** [drivers] Error 2
>>>>
>>>> this failure was reported earlier http://lkml.org/lkml/2007/9/22/64
>>> You need the patch from [1] manually applied (due to changed context) 
>>> and with " || defined(__powerpc__)" added for getting it compiling.
>>>
>>> @Rusty:
>>> Can you look at this issue? It's a modules problem on 3 architectures.
>>>
>>> cu
>>> Adrian
>>>
>>> [1] http://lkml.org/lkml/2007/12/27/29
>>>
>> I tried manually applying the patch and added ||defined(__powerpc__), the above
>> build failure was resolved but it started failing at another place, 
>>
>>   CC      kernel/printk.o
>> kernel/printk.c:568: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘static’
>> make[1]: *** [kernel/printk.o] Error 1
>> make: *** [kernel] Error 2
> 
> Below is what worked for me (based on Ivan's patch).
> 
> The comment is wrong now, the #if's should refer to kconfig variables, 
> and I don't know whether this patch is really the best solution.
> 
> cu
> Adrian
> 
> 
> 1fffe660ace75bd875fc23f7b2121d7341f08464 diff --git a/include/linux/moduleparam.h b/include/linux/moduleparam.h
> index 8126e55..d17ce12 100644
> --- a/include/linux/moduleparam.h
> +++ b/include/linux/moduleparam.h
> @@ -62,6 +62,15 @@ struct kparam_array
>  	void *elem;
>  };
> 
> +/* On alpha and ia64 relocations to global data cannot go into read-only
> +   sections, so 'const' makes no sense and even causes compile failures
> +   with some compilers. */
> +#if defined(__alpha__) || defined(__ia64__) || defined(__powerpc__)
> +#define __moduleparam_const
> +#else
> +#define __moduleparam_const const
> +#endif
> +
>  /* This is the fundamental function for registering boot/module
>     parameters.  perm sets the visibility in sysfs: 000 means it's
>     not there, read bits mean it's readable, write bits mean it's
> @@ -71,7 +80,7 @@ struct kparam_array
>  	static int __param_perm_check_##name __attribute__((unused)) =	\
>  	BUILD_BUG_ON_ZERO((perm) < 0 || (perm) > 0777 || ((perm) & 2));	\
>  	static const char __param_str_##name[] = prefix #name;		\
> -	static struct kernel_param const __param_##name			\
> +	static struct kernel_param __moduleparam_const __param_##name			\
>  	__used								\
>      __attribute__ ((unused,__section__ ("__param"),aligned(sizeof(void *)))) \
>  	= { __param_str_##name, perm, set, get, { arg } }
> --
Hi Adrian,

Thanks the patch resolves the problem, I had a typo when applied the manually :-(.

-- 
Thanks & Regards,
Kamalesh Babulal,
Linux Technology Center,
IBM, ISTL.

  reply	other threads:[~2008-02-08 14:23 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-08 10:32 [BUILD_FAILURE] 2.6.24-git18 build fails section type conflict psmouse-base Kamalesh Babulal
2008-02-08 10:48 ` Adrian Bunk
2008-02-08 12:50   ` Kamalesh Babulal
2008-02-08 12:50     ` Kamalesh Babulal
2008-02-08 13:30     ` Adrian Bunk
2008-02-08 13:30       ` Adrian Bunk
2008-02-08 14:23       ` Kamalesh Babulal [this message]
2008-02-08 14:23         ` Kamalesh Babulal
2008-02-08 22:25       ` Ivan Kokshaysky
2008-03-03  4:35   ` Rusty Russell
2008-03-03  8:13     ` Adrian Bunk
2008-03-04  2:35       ` Rusty Russell

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=47AC65CE.7090708@linux.vnet.ibm.com \
    --to=kamalesh@linux.vnet.ibm.com \
    --cc=apw@shadowen.org \
    --cc=balbir@linux.vnet.ibm.com \
    --cc=bunk@kernel.org \
    --cc=ink@jurassic.park.msu.ru \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rusty@rustcorp.com.au \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.