All of lore.kernel.org
 help / color / mirror / Atom feed
From: Richard Weinberger <richard@nod.at>
To: Matthew Leach <matthew@mattleach.net>
Cc: linux-kernel@vger.kernel.org, "Martin Pärtel" <martin.partel@gmail.com>
Subject: Re: [REGRESSION] uml: signal.c build errors
Date: Wed, 24 Oct 2012 10:08:35 +0200	[thread overview]
Message-ID: <5087A203.4060505@nod.at> (raw)
In-Reply-To: <87pq48lqut.fsf@mattleach.net>

On 24.10.2012 01:18, Matthew Leach wrote:
> Hi,
>
> When building UML against 3.7-rc2 I encounter the following build error:
>
> # make ARCH=uml
> scripts/kconfig/conf --silentoldconfig arch/x86/um/Kconfig
>    CHK     include/generated/uapi/linux/version.h
>    UPD     include/generated/uapi/linux/version.h
>    WRAP    arch/um/include/generated/asm/clkdev.h
>    SYSHDR  arch/x86/syscalls/../include/generated/uapi/asm/unistd_32.h
>    SYSHDR  arch/x86/syscalls/../include/generated/uapi/asm/unistd_64.h
>    SYSHDR  arch/x86/syscalls/../include/generated/uapi/asm/unistd_x32.h
>
> ...
>
>    CC      arch/um/os-Linux/signal.o
> arch/um/os-Linux/signal.c:18:8: error: conflicting types for ‘sig_info’
> In file included from arch/um/os-Linux/signal.c:12:0:
> /home/matthew/Development/linux/arch/um/include/shared/as-layout.h:64:15: note: previous declaration of ‘sig_info’ was here
> arch/um/os-Linux/signal.c:19:2: warning: initialization from incompatible pointer type [enabled by default]
> arch/um/os-Linux/signal.c:19:2: warning: (near initialization for ‘sig_info[5]’) [enabled by default]
> arch/um/os-Linux/signal.c:20:2: warning: initialization from incompatible pointer type [enabled by default]
> arch/um/os-Linux/signal.c:20:2: warning: (near initialization for ‘sig_info[8]’) [enabled by default]
> arch/um/os-Linux/signal.c:21:2: warning: initialization from incompatible pointer type [enabled by default]
> arch/um/os-Linux/signal.c:21:2: warning: (near initialization for ‘sig_info[4]’) [enabled by default]
> arch/um/os-Linux/signal.c:22:2: warning: initialization from incompatible pointer type [enabled by default]
> arch/um/os-Linux/signal.c:22:2: warning: (near initialization for ‘sig_info[28]’) [enabled by default]
> arch/um/os-Linux/signal.c:23:2: warning: initialization from incompatible pointer type [enabled by default]
> arch/um/os-Linux/signal.c:23:2: warning: (near initialization for ‘sig_info[7]’) [enabled by default]
> arch/um/os-Linux/signal.c:24:2: warning: initialization from incompatible pointer type [enabled by default]
> arch/um/os-Linux/signal.c:24:2: warning: (near initialization for ‘sig_info[11]’) [enabled by default]
> arch/um/os-Linux/signal.c:25:2: warning: initialization from incompatible pointer type [enabled by default]
> arch/um/os-Linux/signal.c:25:2: warning: (near initialization for ‘sig_info[29]’) [enabled by default]
> arch/um/os-Linux/signal.c:26:2: warning: initialization from incompatible pointer type [enabled by default]
> arch/um/os-Linux/signal.c:26:2: warning: (near initialization for ‘sig_info[26]’) [enabled by default]
> arch/um/os-Linux/signal.c:133:1: warning: initialization from incompatible pointer type [enabled by default]
> arch/um/os-Linux/signal.c:133:1: warning: (near initialization for ‘handlers[26]’) [enabled by default]
> make[1]: *** [arch/um/os-Linux/signal.o] Error 1
> make: *** [arch/um/os-Linux] Error 2
>
> I have tracked this down to [1] where, indeed, the type of sig_info is
> different; the second parameter in signal.c is 'siginfo_t' where as in
> as-layout.h the second parameter's type is declared as 'struct siginfo'.
>
> [1]: d3c1cfcdb43e023ab1b1c7a555cd9e929026500a

Does this patch fix the issue?
Are you using glibc 2.17?

Thanks,
//richard

---
diff --git a/arch/um/include/shared/as-layout.h b/arch/um/include/shared/as-layout.h
index 694c792..48fcbb0 100644
--- a/arch/um/include/shared/as-layout.h
+++ b/arch/um/include/shared/as-layout.h
@@ -60,9 +60,6 @@ extern unsigned long host_task_size;

  extern int linux_main(int argc, char **argv);

-struct siginfo;
-extern void (*sig_info[])(int, struct siginfo *si, struct uml_pt_regs *);
-
  #endif

  #endif
diff --git a/arch/um/os-Linux/skas/process.c b/arch/um/os-Linux/skas/process.c
index 4625949..3a72936 100644
--- a/arch/um/os-Linux/skas/process.c
+++ b/arch/um/os-Linux/skas/process.c
@@ -23,6 +23,9 @@
  #include <skas_ptrace.h>
  #include <sysdep/stub.h>

+#include <signal.h>
+extern void (*sig_info[NSIG])(int, siginfo_t *, struct uml_pt_regs *);
+
  int is_skas_winch(int pid, int fd, void *data)
  {
  	return pid == getpgrp();


  reply	other threads:[~2012-10-24  8:08 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-23 23:18 [REGRESSION] uml: signal.c build errors Matthew Leach
2012-10-24  8:08 ` Richard Weinberger [this message]
2012-10-24  8:10   ` Richard Weinberger
2012-10-24  9:09   ` Matthew Leach
2012-10-24  9:17     ` Richard Weinberger
2012-12-11 23:15   ` ryanvade
2012-10-24 19:39 ` Richard Weinberger
2012-10-24 19:48   ` Matthew Leach
2012-10-24 19:54     ` Richard Weinberger
2012-10-24 20:06       ` Matthew Leach
2012-10-24 20:09         ` Richard Weinberger
2012-10-24 20:13           ` Matthew Leach
2012-10-24 20:17             ` Richard Weinberger

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=5087A203.4060505@nod.at \
    --to=richard@nod.at \
    --cc=linux-kernel@vger.kernel.org \
    --cc=martin.partel@gmail.com \
    --cc=matthew@mattleach.net \
    /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.