From: Ingo Molnar <mingo@elte.hu>
To: WANG Cong <xiyou.wangcong@gmail.com>
Cc: user-mode-linux-devel@lists.sourceforge.net,
Jeff Dike <jdike@addtoit.com>,
Paolo Giarrusso <p.giarrusso@gmail.com>,
linux-kernel@vger.kernel.org, Nix <nix@esperi.org.uk>,
Rob Landley <rob@landley.net>, Al Viro <viro@ftp.linux.org.uk>,
Sam Ravnborg <sam@ravnborg.org>
Subject: Re: [uml-devel] User Mode Linux still doesn't build in 2.6.23-final.
Date: Mon, 22 Oct 2007 14:30:41 +0200 [thread overview]
Message-ID: <20071022123041.GA4990@elte.hu> (raw)
In-Reply-To: <20071022122504.GL2998@hacking>
* WANG Cong <xiyou.wangcong@gmail.com> wrote:
> On Mon, Oct 22, 2007 at 12:36:00PM +0100, Al Viro wrote:
> >On Mon, Oct 22, 2007 at 03:48:23PM +0800, WANG Cong wrote:
> >> I just followed what Sam told me, errors are much fewer this time,
> >> but still exist. Error messages are:
> >>
> >> CC arch/um/kernel/syscall.o
> >> CC arch/um/kernel/sysrq.o
> >> arch/um/kernel/sysrq.c: In function ???show_stack???:
> >> arch/um/kernel/sysrq.c:63: error: ???UESP??? undeclared (first use in this function)
> >> arch/um/kernel/sysrq.c:63: error: (Each undeclared identifier is reported only once
> >> arch/um/kernel/sysrq.c:63: error: for each function it appears in.)
> >> make[1]: *** [arch/um/kernel/sysrq.o] Error 1
> >> make: *** [arch/um/kernel] Error 2
> >>
> >> Or I missed something again?
> >>
> >> And I use `make defconfig ARCH=um' to generate .config, my tree
> >> is 2.6.23-git16 (Al, is this OK?).
> >
> >Now apply the patch upthread, it should've fixed that one (and yes, you
> >are down to the stuff this patch is supposed to fix - and does so here).
>
> Yes, this one is fixed. Thanks for your patch.
>
> But another one comes out. ;(
>
> CC kernel/sched.o
> kernel/sched.c:3902: error: conflicting types for ‘wait_for_completion_interruptible’
> include/linux/completion.h:46: error: previous declaration of ‘wait_for_completion_interruptible’ was here
> kernel/sched.c:3908: error: conflicting types for ‘wait_for_completion_interruptible’
> include/linux/completion.h:46: error: previous declaration of ‘wait_for_completion_interruptible’ was here
> make[1]: *** [kernel/sched.o] Error 1
> make: *** [kernel] Error 2
does the patch below ontop of latest -git help?
Ingo
---------------->
Subject: sched: fix fastcall mismatch in completion APIs
From: Ingo Molnar <mingo@elte.hu>
Jeff Dike noticed that wait_for_completion_interruptible()'s prototype
had a mismatched fastcall.
Fix this by removing the fastcall attributes from all the completion APIs.
Found-by: Jeff Dike <jdike@linux.intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
---
include/linux/completion.h | 16 ++++++++--------
kernel/sched.c | 10 +++++-----
2 files changed, 13 insertions(+), 13 deletions(-)
Index: linux/include/linux/completion.h
===================================================================
--- linux.orig/include/linux/completion.h
+++ linux/include/linux/completion.h
@@ -42,15 +42,15 @@ static inline void init_completion(struc
init_waitqueue_head(&x->wait);
}
-extern void FASTCALL(wait_for_completion(struct completion *));
-extern int FASTCALL(wait_for_completion_interruptible(struct completion *x));
-extern unsigned long FASTCALL(wait_for_completion_timeout(struct completion *x,
- unsigned long timeout));
-extern unsigned long FASTCALL(wait_for_completion_interruptible_timeout(
- struct completion *x, unsigned long timeout));
+extern void wait_for_completion(struct completion *);
+extern int wait_for_completion_interruptible(struct completion *x);
+extern unsigned long wait_for_completion_timeout(struct completion *x,
+ unsigned long timeout);
+extern unsigned long wait_for_completion_interruptible_timeout(
+ struct completion *x, unsigned long timeout);
-extern void FASTCALL(complete(struct completion *));
-extern void FASTCALL(complete_all(struct completion *));
+extern void complete(struct completion *);
+extern void complete_all(struct completion *);
#define INIT_COMPLETION(x) ((x).done = 0)
Index: linux/kernel/sched.c
===================================================================
--- linux.orig/kernel/sched.c
+++ linux/kernel/sched.c
@@ -3821,7 +3821,7 @@ __wake_up_sync(wait_queue_head_t *q, uns
}
EXPORT_SYMBOL_GPL(__wake_up_sync); /* For internal use only */
-void fastcall complete(struct completion *x)
+void complete(struct completion *x)
{
unsigned long flags;
@@ -3833,7 +3833,7 @@ void fastcall complete(struct completion
}
EXPORT_SYMBOL(complete);
-void fastcall complete_all(struct completion *x)
+void complete_all(struct completion *x)
{
unsigned long flags;
@@ -3885,13 +3885,13 @@ wait_for_common(struct completion *x, lo
return timeout;
}
-void fastcall __sched wait_for_completion(struct completion *x)
+void __sched wait_for_completion(struct completion *x)
{
wait_for_common(x, MAX_SCHEDULE_TIMEOUT, TASK_UNINTERRUPTIBLE);
}
EXPORT_SYMBOL(wait_for_completion);
-unsigned long fastcall __sched
+unsigned long __sched
wait_for_completion_timeout(struct completion *x, unsigned long timeout)
{
return wait_for_common(x, timeout, TASK_UNINTERRUPTIBLE);
@@ -3907,7 +3907,7 @@ int __sched wait_for_completion_interrup
}
EXPORT_SYMBOL(wait_for_completion_interruptible);
-unsigned long fastcall __sched
+unsigned long __sched
wait_for_completion_interruptible_timeout(struct completion *x,
unsigned long timeout)
{
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
WARNING: multiple messages have this Message-ID (diff)
From: Ingo Molnar <mingo@elte.hu>
To: WANG Cong <xiyou.wangcong@gmail.com>
Cc: Al Viro <viro@ftp.linux.org.uk>, Sam Ravnborg <sam@ravnborg.org>,
Nix <nix@esperi.org.uk>, Jeff Dike <jdike@addtoit.com>,
Paolo Giarrusso <p.giarrusso@gmail.com>,
user-mode-linux-devel@lists.sourceforge.net,
linux-kernel@vger.kernel.org, Rob Landley <rob@landley.net>
Subject: Re: [uml-devel] User Mode Linux still doesn't build in 2.6.23-final.
Date: Mon, 22 Oct 2007 14:30:41 +0200 [thread overview]
Message-ID: <20071022123041.GA4990@elte.hu> (raw)
In-Reply-To: <20071022122504.GL2998@hacking>
* WANG Cong <xiyou.wangcong@gmail.com> wrote:
> On Mon, Oct 22, 2007 at 12:36:00PM +0100, Al Viro wrote:
> >On Mon, Oct 22, 2007 at 03:48:23PM +0800, WANG Cong wrote:
> >> I just followed what Sam told me, errors are much fewer this time,
> >> but still exist. Error messages are:
> >>
> >> CC arch/um/kernel/syscall.o
> >> CC arch/um/kernel/sysrq.o
> >> arch/um/kernel/sysrq.c: In function ???show_stack???:
> >> arch/um/kernel/sysrq.c:63: error: ???UESP??? undeclared (first use in this function)
> >> arch/um/kernel/sysrq.c:63: error: (Each undeclared identifier is reported only once
> >> arch/um/kernel/sysrq.c:63: error: for each function it appears in.)
> >> make[1]: *** [arch/um/kernel/sysrq.o] Error 1
> >> make: *** [arch/um/kernel] Error 2
> >>
> >> Or I missed something again?
> >>
> >> And I use `make defconfig ARCH=um' to generate .config, my tree
> >> is 2.6.23-git16 (Al, is this OK?).
> >
> >Now apply the patch upthread, it should've fixed that one (and yes, you
> >are down to the stuff this patch is supposed to fix - and does so here).
>
> Yes, this one is fixed. Thanks for your patch.
>
> But another one comes out. ;(
>
> CC kernel/sched.o
> kernel/sched.c:3902: error: conflicting types for ‘wait_for_completion_interruptible’
> include/linux/completion.h:46: error: previous declaration of ‘wait_for_completion_interruptible’ was here
> kernel/sched.c:3908: error: conflicting types for ‘wait_for_completion_interruptible’
> include/linux/completion.h:46: error: previous declaration of ‘wait_for_completion_interruptible’ was here
> make[1]: *** [kernel/sched.o] Error 1
> make: *** [kernel] Error 2
does the patch below ontop of latest -git help?
Ingo
---------------->
Subject: sched: fix fastcall mismatch in completion APIs
From: Ingo Molnar <mingo@elte.hu>
Jeff Dike noticed that wait_for_completion_interruptible()'s prototype
had a mismatched fastcall.
Fix this by removing the fastcall attributes from all the completion APIs.
Found-by: Jeff Dike <jdike@linux.intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
---
include/linux/completion.h | 16 ++++++++--------
kernel/sched.c | 10 +++++-----
2 files changed, 13 insertions(+), 13 deletions(-)
Index: linux/include/linux/completion.h
===================================================================
--- linux.orig/include/linux/completion.h
+++ linux/include/linux/completion.h
@@ -42,15 +42,15 @@ static inline void init_completion(struc
init_waitqueue_head(&x->wait);
}
-extern void FASTCALL(wait_for_completion(struct completion *));
-extern int FASTCALL(wait_for_completion_interruptible(struct completion *x));
-extern unsigned long FASTCALL(wait_for_completion_timeout(struct completion *x,
- unsigned long timeout));
-extern unsigned long FASTCALL(wait_for_completion_interruptible_timeout(
- struct completion *x, unsigned long timeout));
+extern void wait_for_completion(struct completion *);
+extern int wait_for_completion_interruptible(struct completion *x);
+extern unsigned long wait_for_completion_timeout(struct completion *x,
+ unsigned long timeout);
+extern unsigned long wait_for_completion_interruptible_timeout(
+ struct completion *x, unsigned long timeout);
-extern void FASTCALL(complete(struct completion *));
-extern void FASTCALL(complete_all(struct completion *));
+extern void complete(struct completion *);
+extern void complete_all(struct completion *);
#define INIT_COMPLETION(x) ((x).done = 0)
Index: linux/kernel/sched.c
===================================================================
--- linux.orig/kernel/sched.c
+++ linux/kernel/sched.c
@@ -3821,7 +3821,7 @@ __wake_up_sync(wait_queue_head_t *q, uns
}
EXPORT_SYMBOL_GPL(__wake_up_sync); /* For internal use only */
-void fastcall complete(struct completion *x)
+void complete(struct completion *x)
{
unsigned long flags;
@@ -3833,7 +3833,7 @@ void fastcall complete(struct completion
}
EXPORT_SYMBOL(complete);
-void fastcall complete_all(struct completion *x)
+void complete_all(struct completion *x)
{
unsigned long flags;
@@ -3885,13 +3885,13 @@ wait_for_common(struct completion *x, lo
return timeout;
}
-void fastcall __sched wait_for_completion(struct completion *x)
+void __sched wait_for_completion(struct completion *x)
{
wait_for_common(x, MAX_SCHEDULE_TIMEOUT, TASK_UNINTERRUPTIBLE);
}
EXPORT_SYMBOL(wait_for_completion);
-unsigned long fastcall __sched
+unsigned long __sched
wait_for_completion_timeout(struct completion *x, unsigned long timeout)
{
return wait_for_common(x, timeout, TASK_UNINTERRUPTIBLE);
@@ -3907,7 +3907,7 @@ int __sched wait_for_completion_interrup
}
EXPORT_SYMBOL(wait_for_completion_interruptible);
-unsigned long fastcall __sched
+unsigned long __sched
wait_for_completion_interruptible_timeout(struct completion *x,
unsigned long timeout)
{
next prev parent reply other threads:[~2007-10-22 12:31 UTC|newest]
Thread overview: 96+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-10-11 22:54 [uml-devel] User Mode Linux still doesn't build in 2.6.23-final Rob Landley
2007-10-11 22:54 ` Rob Landley
2007-10-20 0:52 ` [uml-devel] " Paolo Giarrusso
2007-10-20 0:52 ` Paolo Giarrusso
2007-10-20 11:41 ` Nix
2007-10-20 11:41 ` Nix
2007-10-21 11:48 ` WANG Cong
2007-10-21 11:48 ` WANG Cong
2007-10-21 13:08 ` Jeff Dike
2007-10-21 13:08 ` Jeff Dike
2007-10-21 13:20 ` WANG Cong
2007-10-21 13:20 ` WANG Cong
2007-10-21 15:43 ` Al Viro
2007-10-21 15:43 ` Al Viro
2007-10-22 4:37 ` WANG Cong
2007-10-22 4:37 ` WANG Cong
2007-10-22 5:22 ` Al Viro
2007-10-22 5:22 ` Al Viro
2007-10-22 6:12 ` WANG Cong
2007-10-22 6:12 ` WANG Cong
2007-10-22 6:42 ` Nix
2007-10-22 6:42 ` Nix
2007-10-22 6:52 ` WANG Cong
2007-10-22 6:52 ` WANG Cong
2007-10-22 6:59 ` Sam Ravnborg
2007-10-22 6:59 ` Sam Ravnborg
2007-10-22 7:48 ` WANG Cong
2007-10-22 7:48 ` WANG Cong
2007-10-22 7:58 ` Robert P. J. Day
2007-10-22 7:58 ` Robert P. J. Day
2007-10-22 11:36 ` Al Viro
2007-10-22 11:36 ` Al Viro
2007-10-22 12:25 ` WANG Cong
2007-10-22 12:25 ` WANG Cong
2007-10-22 12:30 ` Ingo Molnar [this message]
2007-10-22 12:30 ` Ingo Molnar
2007-10-22 12:39 ` WANG Cong
2007-10-22 12:39 ` WANG Cong
2007-10-22 12:43 ` Al Viro
2007-10-22 12:43 ` Al Viro
2007-10-22 12:45 ` Ingo Molnar
2007-10-22 12:45 ` Ingo Molnar
2007-10-22 23:14 ` Jeremy Fitzhardinge
2007-10-22 23:14 ` Jeremy Fitzhardinge
2007-10-22 23:19 ` Ingo Molnar
2007-10-22 23:19 ` Ingo Molnar
2007-10-22 23:26 ` Jeremy Fitzhardinge
2007-10-22 23:26 ` Jeremy Fitzhardinge
2007-10-22 23:56 ` Jeremy Fitzhardinge
2007-10-22 23:56 ` Jeremy Fitzhardinge
2007-10-23 8:45 ` Ingo Molnar
2007-10-23 8:45 ` Ingo Molnar
2007-10-23 12:55 ` Andi Kleen
2007-10-23 12:55 ` Andi Kleen
2007-10-23 13:10 ` Ingo Molnar
2007-10-23 13:10 ` Ingo Molnar
2007-10-23 14:01 ` Andi Kleen
2007-10-23 14:01 ` Andi Kleen
2007-10-23 14:20 ` Ingo Molnar
2007-10-23 14:20 ` Ingo Molnar
2007-10-23 14:31 ` Jeremy Fitzhardinge
2007-10-23 14:31 ` Jeremy Fitzhardinge
2007-10-23 14:47 ` Ingo Molnar
2007-10-23 14:47 ` Ingo Molnar
2007-10-23 15:11 ` Adrian Bunk
2007-10-23 15:11 ` Adrian Bunk
2007-10-23 14:48 ` Andi Kleen
2007-10-23 14:48 ` Andi Kleen
2007-10-23 15:13 ` Ingo Molnar
2007-10-23 15:13 ` Ingo Molnar
2007-10-23 15:44 ` Ingo Molnar
2007-10-23 15:44 ` Ingo Molnar
2007-10-23 16:57 ` Andi Kleen
2007-10-23 16:57 ` Andi Kleen
2007-10-23 13:25 ` Adrian Bunk
2007-10-23 13:25 ` Adrian Bunk
2007-10-23 14:20 ` Jeremy Fitzhardinge
2007-10-23 14:20 ` Jeremy Fitzhardinge
2007-10-22 15:33 ` Jeff Dike
2007-10-22 15:33 ` Jeff Dike
2007-10-22 7:01 ` Robert P. J. Day
2007-10-22 7:01 ` Robert P. J. Day
2007-10-22 7:27 ` Al Viro
2007-10-22 7:27 ` Al Viro
2007-10-22 20:24 ` Jeff Dike
2007-10-22 20:24 ` Jeff Dike
2007-10-24 15:22 ` Jeff Dike
2007-10-24 15:22 ` Jeff Dike
2007-10-24 16:14 ` Sam Ravnborg
2007-10-24 16:14 ` Sam Ravnborg
2007-10-24 16:14 ` Sam Ravnborg
2007-10-24 21:46 ` Rob Landley
2007-10-24 21:46 ` Rob Landley
2007-10-25 0:43 ` Jeff Dike
2007-10-25 0:43 ` Jeff Dike
2007-10-25 0:43 ` Jeff Dike
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=20071022123041.GA4990@elte.hu \
--to=mingo@elte.hu \
--cc=jdike@addtoit.com \
--cc=linux-kernel@vger.kernel.org \
--cc=nix@esperi.org.uk \
--cc=p.giarrusso@gmail.com \
--cc=rob@landley.net \
--cc=sam@ravnborg.org \
--cc=user-mode-linux-devel@lists.sourceforge.net \
--cc=viro@ftp.linux.org.uk \
--cc=xiyou.wangcong@gmail.com \
/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.