* untangle the <asm/siginfo.h> mess
@ 2017-06-03 19:00 ` Christoph Hellwig
0 siblings, 0 replies; 27+ messages in thread
From: Christoph Hellwig @ 2017-06-03 19:00 UTC (permalink / raw)
To: Arnd Bergmann, Thomas Gleixner, David S. Miller, Tony Luck, Fenghua Yu
Cc: linux-arch, sparclinux, linux-ia64, linux-kernel
We currently have uapi versions of <asm/siginfo.h> which at least on a few
architectures define bits of the userspace ABI before including an uapi
asm-generic version, and also non-uapi versions which do almost nothing
except for making sure other headers include the right uapi one before
including an asm-generic that defined two prototypes and a few defines
that aren't architecture specific in any.
This series completely gets rid of the non-uapi versions and cleans up
various small bits on the way.
Note that Thomas has some posix-timers work overlapping with this, so
it might make sense to take these through the tip tree.
^ permalink raw reply [flat|nested] 27+ messages in thread
* untangle the <asm/siginfo.h> mess
@ 2017-06-03 19:00 ` Christoph Hellwig
0 siblings, 0 replies; 27+ messages in thread
From: Christoph Hellwig @ 2017-06-03 19:00 UTC (permalink / raw)
To: Arnd Bergmann, Thomas Gleixner, David S. Miller, Tony Luck, Fenghua Yu
Cc: linux-arch, sparclinux, linux-ia64, linux-kernel
We currently have uapi versions of <asm/siginfo.h> which at least on a few
architectures define bits of the userspace ABI before including an uapi
asm-generic version, and also non-uapi versions which do almost nothing
except for making sure other headers include the right uapi one before
including an asm-generic that defined two prototypes and a few defines
that aren't architecture specific in any.
This series completely gets rid of the non-uapi versions and cleans up
various small bits on the way.
Note that Thomas has some posix-timers work overlapping with this, so
it might make sense to take these through the tip tree.
^ permalink raw reply [flat|nested] 27+ messages in thread
* [PATCH 1/5] sparc: simplify <asm/siginfo.h>
2017-06-03 19:00 ` Christoph Hellwig
@ 2017-06-03 19:00 ` Christoph Hellwig
-1 siblings, 0 replies; 27+ messages in thread
From: Christoph Hellwig @ 2017-06-03 19:00 UTC (permalink / raw)
To: Arnd Bergmann, Thomas Gleixner, David S. Miller, Tony Luck, Fenghua Yu
Cc: linux-arch, sparclinux, linux-ia64, linux-kernel
There is no need for the forward declaration of compat_siginfo provided
here. We can't yet use the generic header as we need to pull in the
sparc-specific version of the uapi <asm/siginfo.h>, but this prepares
for removing the non-uapi <asm/siginfo.h> entirely.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
arch/sparc/include/asm/siginfo.h | 12 ------------
1 file changed, 12 deletions(-)
diff --git a/arch/sparc/include/asm/siginfo.h b/arch/sparc/include/asm/siginfo.h
index 48c34c19f810..dd2f2fce976b 100644
--- a/arch/sparc/include/asm/siginfo.h
+++ b/arch/sparc/include/asm/siginfo.h
@@ -1,13 +1 @@
-#ifndef __SPARC_SIGINFO_H
-#define __SPARC_SIGINFO_H
-
#include <uapi/asm/siginfo.h>
-
-
-#ifdef CONFIG_COMPAT
-
-struct compat_siginfo;
-
-#endif /* CONFIG_COMPAT */
-
-#endif /* !(__SPARC_SIGINFO_H) */
--
2.11.0
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH 1/5] sparc: simplify <asm/siginfo.h>
@ 2017-06-03 19:00 ` Christoph Hellwig
0 siblings, 0 replies; 27+ messages in thread
From: Christoph Hellwig @ 2017-06-03 19:00 UTC (permalink / raw)
To: Arnd Bergmann, Thomas Gleixner, David S. Miller, Tony Luck, Fenghua Yu
Cc: linux-arch, sparclinux, linux-ia64, linux-kernel
There is no need for the forward declaration of compat_siginfo provided
here. We can't yet use the generic header as we need to pull in the
sparc-specific version of the uapi <asm/siginfo.h>, but this prepares
for removing the non-uapi <asm/siginfo.h> entirely.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
arch/sparc/include/asm/siginfo.h | 12 ------------
1 file changed, 12 deletions(-)
diff --git a/arch/sparc/include/asm/siginfo.h b/arch/sparc/include/asm/siginfo.h
index 48c34c19f810..dd2f2fce976b 100644
--- a/arch/sparc/include/asm/siginfo.h
+++ b/arch/sparc/include/asm/siginfo.h
@@ -1,13 +1 @@
-#ifndef __SPARC_SIGINFO_H
-#define __SPARC_SIGINFO_H
-
#include <uapi/asm/siginfo.h>
-
-
-#ifdef CONFIG_COMPAT
-
-struct compat_siginfo;
-
-#endif /* CONFIG_COMPAT */
-
-#endif /* !(__SPARC_SIGINFO_H) */
--
2.11.0
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH 2/5] ia64: remove HAVE_ARCH_COPY_SIGINFO
2017-06-03 19:00 ` Christoph Hellwig
@ 2017-06-03 19:00 ` Christoph Hellwig
-1 siblings, 0 replies; 27+ messages in thread
From: Christoph Hellwig @ 2017-06-03 19:00 UTC (permalink / raw)
To: Arnd Bergmann, Thomas Gleixner, David S. Miller, Tony Luck, Fenghua Yu
Cc: linux-arch, sparclinux, linux-ia64, linux-kernel
Since ia64 defines __ARCH_SI_PREAMBLE_SIZE it can just use the generic
copy_siginfo implementation, which is identical to the architecture
specific one.
With that support for HAVE_ARCH_COPY_SIGINFO can go away entirely.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
arch/ia64/include/asm/siginfo.h | 22 ----------------------
arch/ia64/include/uapi/asm/siginfo.h | 1 -
include/linux/signal.h | 7 +------
3 files changed, 1 insertion(+), 29 deletions(-)
diff --git a/arch/ia64/include/asm/siginfo.h b/arch/ia64/include/asm/siginfo.h
index 6f2e2dd0f28f..dd2f2fce976b 100644
--- a/arch/ia64/include/asm/siginfo.h
+++ b/arch/ia64/include/asm/siginfo.h
@@ -1,23 +1 @@
-/*
- * Based on <asm-i386/siginfo.h>.
- *
- * Modified 1998-2002
- * David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
- */
-#ifndef _ASM_IA64_SIGINFO_H
-#define _ASM_IA64_SIGINFO_H
-
-#include <linux/string.h>
#include <uapi/asm/siginfo.h>
-
-static inline void
-copy_siginfo (siginfo_t *to, siginfo_t *from)
-{
- if (from->si_code < 0)
- memcpy(to, from, sizeof(siginfo_t));
- else
- /* _sigchld is currently the largest know union member */
- memcpy(to, from, 4*sizeof(int) + sizeof(from->_sifields._sigchld));
-}
-
-#endif /* _ASM_IA64_SIGINFO_H */
diff --git a/arch/ia64/include/uapi/asm/siginfo.h b/arch/ia64/include/uapi/asm/siginfo.h
index f72bf0172bb2..4694c64252d6 100644
--- a/arch/ia64/include/uapi/asm/siginfo.h
+++ b/arch/ia64/include/uapi/asm/siginfo.h
@@ -11,7 +11,6 @@
#define __ARCH_SI_PREAMBLE_SIZE (4 * sizeof(int))
#define HAVE_ARCH_SIGINFO_T
-#define HAVE_ARCH_COPY_SIGINFO
#define HAVE_ARCH_COPY_SIGINFO_TO_USER
#include <asm-generic/siginfo.h>
diff --git a/include/linux/signal.h b/include/linux/signal.h
index 1f5a16620693..80c7418be359 100644
--- a/include/linux/signal.h
+++ b/include/linux/signal.h
@@ -3,16 +3,13 @@
#include <linux/bug.h>
#include <linux/signal_types.h>
+#include <linux/string.h>
struct task_struct;
/* for sysctl */
extern int print_fatal_signals;
-#ifndef HAVE_ARCH_COPY_SIGINFO
-
-#include <linux/string.h>
-
static inline void copy_siginfo(struct siginfo *to, struct siginfo *from)
{
if (from->si_code < 0)
@@ -22,8 +19,6 @@ static inline void copy_siginfo(struct siginfo *to, struct siginfo *from)
memcpy(to, from, __ARCH_SI_PREAMBLE_SIZE + sizeof(from->_sifields._sigchld));
}
-#endif
-
/*
* Define some primitives to manipulate sigset_t.
*/
--
2.11.0
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH 2/5] ia64: remove HAVE_ARCH_COPY_SIGINFO
@ 2017-06-03 19:00 ` Christoph Hellwig
0 siblings, 0 replies; 27+ messages in thread
From: Christoph Hellwig @ 2017-06-03 19:00 UTC (permalink / raw)
To: Arnd Bergmann, Thomas Gleixner, David S. Miller, Tony Luck, Fenghua Yu
Cc: linux-arch, sparclinux, linux-ia64, linux-kernel
Since ia64 defines __ARCH_SI_PREAMBLE_SIZE it can just use the generic
copy_siginfo implementation, which is identical to the architecture
specific one.
With that support for HAVE_ARCH_COPY_SIGINFO can go away entirely.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
arch/ia64/include/asm/siginfo.h | 22 ----------------------
arch/ia64/include/uapi/asm/siginfo.h | 1 -
include/linux/signal.h | 7 +------
3 files changed, 1 insertion(+), 29 deletions(-)
diff --git a/arch/ia64/include/asm/siginfo.h b/arch/ia64/include/asm/siginfo.h
index 6f2e2dd0f28f..dd2f2fce976b 100644
--- a/arch/ia64/include/asm/siginfo.h
+++ b/arch/ia64/include/asm/siginfo.h
@@ -1,23 +1 @@
-/*
- * Based on <asm-i386/siginfo.h>.
- *
- * Modified 1998-2002
- * David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
- */
-#ifndef _ASM_IA64_SIGINFO_H
-#define _ASM_IA64_SIGINFO_H
-
-#include <linux/string.h>
#include <uapi/asm/siginfo.h>
-
-static inline void
-copy_siginfo (siginfo_t *to, siginfo_t *from)
-{
- if (from->si_code < 0)
- memcpy(to, from, sizeof(siginfo_t));
- else
- /* _sigchld is currently the largest know union member */
- memcpy(to, from, 4*sizeof(int) + sizeof(from->_sifields._sigchld));
-}
-
-#endif /* _ASM_IA64_SIGINFO_H */
diff --git a/arch/ia64/include/uapi/asm/siginfo.h b/arch/ia64/include/uapi/asm/siginfo.h
index f72bf0172bb2..4694c64252d6 100644
--- a/arch/ia64/include/uapi/asm/siginfo.h
+++ b/arch/ia64/include/uapi/asm/siginfo.h
@@ -11,7 +11,6 @@
#define __ARCH_SI_PREAMBLE_SIZE (4 * sizeof(int))
#define HAVE_ARCH_SIGINFO_T
-#define HAVE_ARCH_COPY_SIGINFO
#define HAVE_ARCH_COPY_SIGINFO_TO_USER
#include <asm-generic/siginfo.h>
diff --git a/include/linux/signal.h b/include/linux/signal.h
index 1f5a16620693..80c7418be359 100644
--- a/include/linux/signal.h
+++ b/include/linux/signal.h
@@ -3,16 +3,13 @@
#include <linux/bug.h>
#include <linux/signal_types.h>
+#include <linux/string.h>
struct task_struct;
/* for sysctl */
extern int print_fatal_signals;
-#ifndef HAVE_ARCH_COPY_SIGINFO
-
-#include <linux/string.h>
-
static inline void copy_siginfo(struct siginfo *to, struct siginfo *from)
{
if (from->si_code < 0)
@@ -22,8 +19,6 @@ static inline void copy_siginfo(struct siginfo *to, struct siginfo *from)
memcpy(to, from, __ARCH_SI_PREAMBLE_SIZE + sizeof(from->_sifields._sigchld));
}
-#endif
-
/*
* Define some primitives to manipulate sigset_t.
*/
--
2.11.0
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH 3/5] posix-timers: move the do_schedule_next_timer declaration
2017-06-03 19:00 ` Christoph Hellwig
@ 2017-06-03 19:01 ` Christoph Hellwig
-1 siblings, 0 replies; 27+ messages in thread
From: Christoph Hellwig @ 2017-06-03 19:01 UTC (permalink / raw)
To: Arnd Bergmann, Thomas Gleixner, David S. Miller, Tony Luck, Fenghua Yu
Cc: linux-arch, sparclinux, linux-ia64, linux-kernel
Having it in asm-generic/siginfo.h doesn't make any sense as it is in no way
architecture specific. Move it to posix-timers.h instead.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
include/asm-generic/siginfo.h | 1 -
include/linux/posix-timers.h | 3 +++
kernel/signal.c | 1 +
3 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/include/asm-generic/siginfo.h b/include/asm-generic/siginfo.h
index a2508a8f9a9c..5a9394763a66 100644
--- a/include/asm-generic/siginfo.h
+++ b/include/asm-generic/siginfo.h
@@ -15,7 +15,6 @@
#define __SI_CODE(T,N) ((T) | ((N) & 0xffff))
struct siginfo;
-void do_schedule_next_timer(struct siginfo *info);
extern int copy_siginfo_to_user(struct siginfo __user *to, const struct siginfo *from);
diff --git a/include/linux/posix-timers.h b/include/linux/posix-timers.h
index 8c1e43ab14a9..fa25c23192a4 100644
--- a/include/linux/posix-timers.h
+++ b/include/linux/posix-timers.h
@@ -7,6 +7,7 @@
#include <linux/timex.h>
#include <linux/alarmtimer.h>
+struct siginfo;
struct cpu_timer_list {
struct list_head entry;
@@ -125,4 +126,6 @@ long clock_nanosleep_restart(struct restart_block *restart_block);
void update_rlimit_cpu(struct task_struct *task, unsigned long rlim_new);
+void do_schedule_next_timer(struct siginfo *info);
+
#endif
diff --git a/kernel/signal.c b/kernel/signal.c
index ca92bcfeb322..1f85c843be8e 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -39,6 +39,7 @@
#include <linux/compat.h>
#include <linux/cn_proc.h>
#include <linux/compiler.h>
+#include <linux/posix-timers.h>
#define CREATE_TRACE_POINTS
#include <trace/events/signal.h>
--
2.11.0
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH 3/5] posix-timers: move the do_schedule_next_timer declaration
@ 2017-06-03 19:01 ` Christoph Hellwig
0 siblings, 0 replies; 27+ messages in thread
From: Christoph Hellwig @ 2017-06-03 19:01 UTC (permalink / raw)
To: Arnd Bergmann, Thomas Gleixner, David S. Miller, Tony Luck, Fenghua Yu
Cc: linux-arch, sparclinux, linux-ia64, linux-kernel
Having it in asm-generic/siginfo.h doesn't make any sense as it is in no way
architecture specific. Move it to posix-timers.h instead.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
include/asm-generic/siginfo.h | 1 -
include/linux/posix-timers.h | 3 +++
kernel/signal.c | 1 +
3 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/include/asm-generic/siginfo.h b/include/asm-generic/siginfo.h
index a2508a8f9a9c..5a9394763a66 100644
--- a/include/asm-generic/siginfo.h
+++ b/include/asm-generic/siginfo.h
@@ -15,7 +15,6 @@
#define __SI_CODE(T,N) ((T) | ((N) & 0xffff))
struct siginfo;
-void do_schedule_next_timer(struct siginfo *info);
extern int copy_siginfo_to_user(struct siginfo __user *to, const struct siginfo *from);
diff --git a/include/linux/posix-timers.h b/include/linux/posix-timers.h
index 8c1e43ab14a9..fa25c23192a4 100644
--- a/include/linux/posix-timers.h
+++ b/include/linux/posix-timers.h
@@ -7,6 +7,7 @@
#include <linux/timex.h>
#include <linux/alarmtimer.h>
+struct siginfo;
struct cpu_timer_list {
struct list_head entry;
@@ -125,4 +126,6 @@ long clock_nanosleep_restart(struct restart_block *restart_block);
void update_rlimit_cpu(struct task_struct *task, unsigned long rlim_new);
+void do_schedule_next_timer(struct siginfo *info);
+
#endif
diff --git a/kernel/signal.c b/kernel/signal.c
index ca92bcfeb322..1f85c843be8e 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -39,6 +39,7 @@
#include <linux/compat.h>
#include <linux/cn_proc.h>
#include <linux/compiler.h>
+#include <linux/posix-timers.h>
#define CREATE_TRACE_POINTS
#include <trace/events/signal.h>
--
2.11.0
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH 4/5] signal: move copy_siginfo_to_user to <linux/signal.h>
2017-06-03 19:00 ` Christoph Hellwig
@ 2017-06-03 19:01 ` Christoph Hellwig
-1 siblings, 0 replies; 27+ messages in thread
From: Christoph Hellwig @ 2017-06-03 19:01 UTC (permalink / raw)
To: Arnd Bergmann, Thomas Gleixner, David S. Miller, Tony Luck, Fenghua Yu
Cc: linux-arch, sparclinux, linux-ia64, linux-kernel
Having it in asm-generic/siginfo.h doesn't make any sense as it is in no way
architecture specific. Move it to signal.h instead where several related
functions already reside.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
include/asm-generic/siginfo.h | 4 ----
include/linux/signal.h | 2 ++
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/include/asm-generic/siginfo.h b/include/asm-generic/siginfo.h
index 5a9394763a66..31268a5bf63e 100644
--- a/include/asm-generic/siginfo.h
+++ b/include/asm-generic/siginfo.h
@@ -14,8 +14,4 @@
#define __SI_SYS (7 << 16)
#define __SI_CODE(T,N) ((T) | ((N) & 0xffff))
-struct siginfo;
-
-extern int copy_siginfo_to_user(struct siginfo __user *to, const struct siginfo *from);
-
#endif
diff --git a/include/linux/signal.h b/include/linux/signal.h
index 80c7418be359..a39feddd71ba 100644
--- a/include/linux/signal.h
+++ b/include/linux/signal.h
@@ -19,6 +19,8 @@ static inline void copy_siginfo(struct siginfo *to, struct siginfo *from)
memcpy(to, from, __ARCH_SI_PREAMBLE_SIZE + sizeof(from->_sifields._sigchld));
}
+int copy_siginfo_to_user(struct siginfo __user *to, const struct siginfo *from);
+
/*
* Define some primitives to manipulate sigset_t.
*/
--
2.11.0
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH 4/5] signal: move copy_siginfo_to_user to <linux/signal.h>
@ 2017-06-03 19:01 ` Christoph Hellwig
0 siblings, 0 replies; 27+ messages in thread
From: Christoph Hellwig @ 2017-06-03 19:01 UTC (permalink / raw)
To: Arnd Bergmann, Thomas Gleixner, David S. Miller, Tony Luck, Fenghua Yu
Cc: linux-arch, sparclinux, linux-ia64, linux-kernel
Having it in asm-generic/siginfo.h doesn't make any sense as it is in no way
architecture specific. Move it to signal.h instead where several related
functions already reside.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
include/asm-generic/siginfo.h | 4 ----
include/linux/signal.h | 2 ++
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/include/asm-generic/siginfo.h b/include/asm-generic/siginfo.h
index 5a9394763a66..31268a5bf63e 100644
--- a/include/asm-generic/siginfo.h
+++ b/include/asm-generic/siginfo.h
@@ -14,8 +14,4 @@
#define __SI_SYS (7 << 16)
#define __SI_CODE(T,N) ((T) | ((N) & 0xffff))
-struct siginfo;
-
-extern int copy_siginfo_to_user(struct siginfo __user *to, const struct siginfo *from);
-
#endif
diff --git a/include/linux/signal.h b/include/linux/signal.h
index 80c7418be359..a39feddd71ba 100644
--- a/include/linux/signal.h
+++ b/include/linux/signal.h
@@ -19,6 +19,8 @@ static inline void copy_siginfo(struct siginfo *to, struct siginfo *from)
memcpy(to, from, __ARCH_SI_PREAMBLE_SIZE + sizeof(from->_sifields._sigchld));
}
+int copy_siginfo_to_user(struct siginfo __user *to, const struct siginfo *from);
+
/*
* Define some primitives to manipulate sigset_t.
*/
--
2.11.0
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH 5/5] remove non-uapi <asm/siginfo.h>
2017-06-03 19:00 ` Christoph Hellwig
@ 2017-06-03 19:01 ` Christoph Hellwig
-1 siblings, 0 replies; 27+ messages in thread
From: Christoph Hellwig @ 2017-06-03 19:01 UTC (permalink / raw)
To: Arnd Bergmann, Thomas Gleixner, David S. Miller, Tony Luck, Fenghua Yu
Cc: linux-arch, sparclinux, linux-ia64, linux-kernel
By moving the kernel side __SI_* defintions right next to the userspace
ones we can kill the non-uapi versions of <asm/siginfo.h> include
include/asm-generic/siginfo.h and untangle the unholy mess of includes.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
arch/arc/include/asm/Kbuild | 1 -
arch/arm/include/asm/Kbuild | 1 -
arch/arm/include/uapi/asm/Kbuild | 2 ++
arch/c6x/include/asm/Kbuild | 1 -
arch/c6x/include/uapi/asm/Kbuild | 1 +
arch/cris/include/asm/Kbuild | 1 -
arch/cris/include/uapi/asm/Kbuild | 2 ++
arch/h8300/include/asm/Kbuild | 1 -
arch/h8300/include/uapi/asm/Kbuild | 2 ++
arch/hexagon/include/asm/Kbuild | 1 -
arch/ia64/include/asm/siginfo.h | 1 -
arch/m68k/include/asm/Kbuild | 1 -
arch/m68k/include/uapi/asm/Kbuild | 1 +
arch/nios2/include/asm/Kbuild | 1 -
arch/nios2/include/uapi/asm/Kbuild | 1 +
arch/openrisc/include/asm/Kbuild | 1 -
arch/openrisc/include/uapi/asm/Kbuild | 2 ++
arch/sh/include/asm/Kbuild | 1 -
arch/sh/include/uapi/asm/Kbuild | 1 +
arch/sparc/include/asm/siginfo.h | 1 -
arch/unicore32/include/asm/Kbuild | 1 -
arch/xtensa/include/asm/Kbuild | 1 -
arch/xtensa/include/uapi/asm/Kbuild | 1 +
include/asm-generic/siginfo.h | 17 -----------------
include/uapi/asm-generic/siginfo.h | 15 +++++++++++++--
25 files changed, 26 insertions(+), 33 deletions(-)
delete mode 100644 arch/ia64/include/asm/siginfo.h
delete mode 100644 arch/sparc/include/asm/siginfo.h
delete mode 100644 include/asm-generic/siginfo.h
diff --git a/arch/arc/include/asm/Kbuild b/arch/arc/include/asm/Kbuild
index 7bee4e4799fd..3e74ca5e6402 100644
--- a/arch/arc/include/asm/Kbuild
+++ b/arch/arc/include/asm/Kbuild
@@ -36,7 +36,6 @@ generic-y += preempt.h
generic-y += resource.h
generic-y += sembuf.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += socket.h
generic-y += sockios.h
generic-y += stat.h
diff --git a/arch/arm/include/asm/Kbuild b/arch/arm/include/asm/Kbuild
index 3a36d99ff836..d8360501c082 100644
--- a/arch/arm/include/asm/Kbuild
+++ b/arch/arm/include/asm/Kbuild
@@ -28,7 +28,6 @@ generic-y += segment.h
generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += simd.h
generic-y += sizes.h
generic-y += socket.h
diff --git a/arch/arm/include/uapi/asm/Kbuild b/arch/arm/include/uapi/asm/Kbuild
index 607f702c2d62..e9b098d6b766 100644
--- a/arch/arm/include/uapi/asm/Kbuild
+++ b/arch/arm/include/uapi/asm/Kbuild
@@ -4,3 +4,5 @@ include include/uapi/asm-generic/Kbuild.asm
genhdr-y += unistd-common.h
genhdr-y += unistd-oabi.h
genhdr-y += unistd-eabi.h
+
+generic-y += siginfo.h
diff --git a/arch/c6x/include/asm/Kbuild b/arch/c6x/include/asm/Kbuild
index f0eaf0475e7e..a3c8d05c4cc7 100644
--- a/arch/c6x/include/asm/Kbuild
+++ b/arch/c6x/include/asm/Kbuild
@@ -45,7 +45,6 @@ generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += signal.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/c6x/include/uapi/asm/Kbuild b/arch/c6x/include/uapi/asm/Kbuild
index 13a97aa2285f..1c44d3b3eba0 100644
--- a/arch/c6x/include/uapi/asm/Kbuild
+++ b/arch/c6x/include/uapi/asm/Kbuild
@@ -2,3 +2,4 @@
include include/uapi/asm-generic/Kbuild.asm
generic-y += kvm_para.h
+generic-y += siginfo.h
diff --git a/arch/cris/include/asm/Kbuild b/arch/cris/include/asm/Kbuild
index 2890099992a9..acc5781100c2 100644
--- a/arch/cris/include/asm/Kbuild
+++ b/arch/cris/include/asm/Kbuild
@@ -36,7 +36,6 @@ generic-y += resource.h
generic-y += sections.h
generic-y += sembuf.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += socket.h
generic-y += sockios.h
generic-y += statfs.h
diff --git a/arch/cris/include/uapi/asm/Kbuild b/arch/cris/include/uapi/asm/Kbuild
index b15bf6bc0e94..b55fc2ae1e8c 100644
--- a/arch/cris/include/uapi/asm/Kbuild
+++ b/arch/cris/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/h8300/include/asm/Kbuild b/arch/h8300/include/asm/Kbuild
index 757cdeb24e6e..99c824608a31 100644
--- a/arch/h8300/include/asm/Kbuild
+++ b/arch/h8300/include/asm/Kbuild
@@ -54,7 +54,6 @@ generic-y += serial.h
generic-y += setup.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += sizes.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/h8300/include/uapi/asm/Kbuild b/arch/h8300/include/uapi/asm/Kbuild
index b15bf6bc0e94..b55fc2ae1e8c 100644
--- a/arch/h8300/include/uapi/asm/Kbuild
+++ b/arch/h8300/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/hexagon/include/asm/Kbuild b/arch/hexagon/include/asm/Kbuild
index 6b45ef79eb8f..0fc9cb04e6ad 100644
--- a/arch/hexagon/include/asm/Kbuild
+++ b/arch/hexagon/include/asm/Kbuild
@@ -41,7 +41,6 @@ generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += sizes.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/ia64/include/asm/siginfo.h b/arch/ia64/include/asm/siginfo.h
deleted file mode 100644
index dd2f2fce976b..000000000000
--- a/arch/ia64/include/asm/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <uapi/asm/siginfo.h>
diff --git a/arch/m68k/include/asm/Kbuild b/arch/m68k/include/asm/Kbuild
index 82005d2ff717..5ecf4e47b2e2 100644
--- a/arch/m68k/include/asm/Kbuild
+++ b/arch/m68k/include/asm/Kbuild
@@ -25,7 +25,6 @@ generic-y += preempt.h
generic-y += resource.h
generic-y += sections.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += spinlock.h
generic-y += statfs.h
generic-y += termios.h
diff --git a/arch/m68k/include/uapi/asm/Kbuild b/arch/m68k/include/uapi/asm/Kbuild
index 64368077235a..68b45cc87e2c 100644
--- a/arch/m68k/include/uapi/asm/Kbuild
+++ b/arch/m68k/include/uapi/asm/Kbuild
@@ -5,6 +5,7 @@ generic-y += auxvec.h
generic-y += msgbuf.h
generic-y += sembuf.h
generic-y += shmbuf.h
+generic-y += siginfo.h
generic-y += socket.h
generic-y += sockios.h
generic-y += termbits.h
diff --git a/arch/nios2/include/asm/Kbuild b/arch/nios2/include/asm/Kbuild
index 727dbb333f60..e1a843def56f 100644
--- a/arch/nios2/include/asm/Kbuild
+++ b/arch/nios2/include/asm/Kbuild
@@ -47,7 +47,6 @@ generic-y += segment.h
generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += signal.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/nios2/include/uapi/asm/Kbuild b/arch/nios2/include/uapi/asm/Kbuild
index 374bd123329f..51eff5bc2eb4 100644
--- a/arch/nios2/include/uapi/asm/Kbuild
+++ b/arch/nios2/include/uapi/asm/Kbuild
@@ -2,4 +2,5 @@
include include/uapi/asm-generic/Kbuild.asm
generic-y += setup.h
+generic-y += siginfo.h
generic-y += ucontext.h
diff --git a/arch/openrisc/include/asm/Kbuild b/arch/openrisc/include/asm/Kbuild
index fdbcf0bf44a4..091585addb91 100644
--- a/arch/openrisc/include/asm/Kbuild
+++ b/arch/openrisc/include/asm/Kbuild
@@ -46,7 +46,6 @@ generic-y += sembuf.h
generic-y += setup.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += signal.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/openrisc/include/uapi/asm/Kbuild b/arch/openrisc/include/uapi/asm/Kbuild
index b15bf6bc0e94..b55fc2ae1e8c 100644
--- a/arch/openrisc/include/uapi/asm/Kbuild
+++ b/arch/openrisc/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/sh/include/asm/Kbuild b/arch/sh/include/asm/Kbuild
index cf2a75063b53..590c91ae7541 100644
--- a/arch/sh/include/asm/Kbuild
+++ b/arch/sh/include/asm/Kbuild
@@ -29,7 +29,6 @@ generic-y += rwsem.h
generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += sizes.h
generic-y += socket.h
generic-y += statfs.h
diff --git a/arch/sh/include/uapi/asm/Kbuild b/arch/sh/include/uapi/asm/Kbuild
index b15bf6bc0e94..4cb0d2f8868c 100644
--- a/arch/sh/include/uapi/asm/Kbuild
+++ b/arch/sh/include/uapi/asm/Kbuild
@@ -1,2 +1,3 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+generic-y += siginfo.h
diff --git a/arch/sparc/include/asm/siginfo.h b/arch/sparc/include/asm/siginfo.h
deleted file mode 100644
index dd2f2fce976b..000000000000
--- a/arch/sparc/include/asm/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <uapi/asm/siginfo.h>
diff --git a/arch/unicore32/include/asm/Kbuild b/arch/unicore32/include/asm/Kbuild
index e9ad511c1043..7a53a55341de 100644
--- a/arch/unicore32/include/asm/Kbuild
+++ b/arch/unicore32/include/asm/Kbuild
@@ -44,7 +44,6 @@ generic-y += serial.h
generic-y += setup.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += signal.h
generic-y += sizes.h
generic-y += socket.h
diff --git a/arch/xtensa/include/asm/Kbuild b/arch/xtensa/include/asm/Kbuild
index cc23e9ecc6bb..30f6290109d4 100644
--- a/arch/xtensa/include/asm/Kbuild
+++ b/arch/xtensa/include/asm/Kbuild
@@ -25,7 +25,6 @@ generic-y += preempt.h
generic-y += resource.h
generic-y += rwsem.h
generic-y += sections.h
-generic-y += siginfo.h
generic-y += statfs.h
generic-y += termios.h
generic-y += topology.h
diff --git a/arch/xtensa/include/uapi/asm/Kbuild b/arch/xtensa/include/uapi/asm/Kbuild
index b15bf6bc0e94..4cb0d2f8868c 100644
--- a/arch/xtensa/include/uapi/asm/Kbuild
+++ b/arch/xtensa/include/uapi/asm/Kbuild
@@ -1,2 +1,3 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+generic-y += siginfo.h
diff --git a/include/asm-generic/siginfo.h b/include/asm-generic/siginfo.h
deleted file mode 100644
index 31268a5bf63e..000000000000
--- a/include/asm-generic/siginfo.h
+++ /dev/null
@@ -1,17 +0,0 @@
-#ifndef _ASM_GENERIC_SIGINFO_H
-#define _ASM_GENERIC_SIGINFO_H
-
-#include <uapi/asm-generic/siginfo.h>
-
-#define __SI_MASK 0xffff0000u
-#define __SI_KILL (0 << 16)
-#define __SI_TIMER (1 << 16)
-#define __SI_POLL (2 << 16)
-#define __SI_FAULT (3 << 16)
-#define __SI_CHLD (4 << 16)
-#define __SI_RT (5 << 16)
-#define __SI_MESGQ (6 << 16)
-#define __SI_SYS (7 << 16)
-#define __SI_CODE(T,N) ((T) | ((N) & 0xffff))
-
-#endif
diff --git a/include/uapi/asm-generic/siginfo.h b/include/uapi/asm-generic/siginfo.h
index 1abaf62c86fc..9c4eca6b374a 100644
--- a/include/uapi/asm-generic/siginfo.h
+++ b/include/uapi/asm-generic/siginfo.h
@@ -151,7 +151,18 @@ typedef struct siginfo {
#define si_arch _sifields._sigsys._arch
#endif
-#ifndef __KERNEL__
+#ifdef __KERNEL__
+#define __SI_MASK 0xffff0000u
+#define __SI_KILL (0 << 16)
+#define __SI_TIMER (1 << 16)
+#define __SI_POLL (2 << 16)
+#define __SI_FAULT (3 << 16)
+#define __SI_CHLD (4 << 16)
+#define __SI_RT (5 << 16)
+#define __SI_MESGQ (6 << 16)
+#define __SI_SYS (7 << 16)
+#define __SI_CODE(T,N) ((T) | ((N) & 0xffff))
+#else /* __KERNEL__ */
#define __SI_KILL 0
#define __SI_TIMER 0
#define __SI_POLL 0
@@ -161,7 +172,7 @@ typedef struct siginfo {
#define __SI_MESGQ 0
#define __SI_SYS 0
#define __SI_CODE(T,N) (N)
-#endif
+#endif /* __KERNEL__ */
/*
* si_code values
--
2.11.0
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH 5/5] remove non-uapi <asm/siginfo.h>
@ 2017-06-03 19:01 ` Christoph Hellwig
0 siblings, 0 replies; 27+ messages in thread
From: Christoph Hellwig @ 2017-06-03 19:01 UTC (permalink / raw)
To: Arnd Bergmann, Thomas Gleixner, David S. Miller, Tony Luck, Fenghua Yu
Cc: linux-arch, sparclinux, linux-ia64, linux-kernel
By moving the kernel side __SI_* defintions right next to the userspace
ones we can kill the non-uapi versions of <asm/siginfo.h> include
include/asm-generic/siginfo.h and untangle the unholy mess of includes.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
arch/arc/include/asm/Kbuild | 1 -
arch/arm/include/asm/Kbuild | 1 -
arch/arm/include/uapi/asm/Kbuild | 2 ++
arch/c6x/include/asm/Kbuild | 1 -
arch/c6x/include/uapi/asm/Kbuild | 1 +
arch/cris/include/asm/Kbuild | 1 -
arch/cris/include/uapi/asm/Kbuild | 2 ++
arch/h8300/include/asm/Kbuild | 1 -
arch/h8300/include/uapi/asm/Kbuild | 2 ++
arch/hexagon/include/asm/Kbuild | 1 -
arch/ia64/include/asm/siginfo.h | 1 -
arch/m68k/include/asm/Kbuild | 1 -
arch/m68k/include/uapi/asm/Kbuild | 1 +
arch/nios2/include/asm/Kbuild | 1 -
arch/nios2/include/uapi/asm/Kbuild | 1 +
arch/openrisc/include/asm/Kbuild | 1 -
arch/openrisc/include/uapi/asm/Kbuild | 2 ++
arch/sh/include/asm/Kbuild | 1 -
arch/sh/include/uapi/asm/Kbuild | 1 +
arch/sparc/include/asm/siginfo.h | 1 -
arch/unicore32/include/asm/Kbuild | 1 -
arch/xtensa/include/asm/Kbuild | 1 -
arch/xtensa/include/uapi/asm/Kbuild | 1 +
include/asm-generic/siginfo.h | 17 -----------------
include/uapi/asm-generic/siginfo.h | 15 +++++++++++++--
25 files changed, 26 insertions(+), 33 deletions(-)
delete mode 100644 arch/ia64/include/asm/siginfo.h
delete mode 100644 arch/sparc/include/asm/siginfo.h
delete mode 100644 include/asm-generic/siginfo.h
diff --git a/arch/arc/include/asm/Kbuild b/arch/arc/include/asm/Kbuild
index 7bee4e4799fd..3e74ca5e6402 100644
--- a/arch/arc/include/asm/Kbuild
+++ b/arch/arc/include/asm/Kbuild
@@ -36,7 +36,6 @@ generic-y += preempt.h
generic-y += resource.h
generic-y += sembuf.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += socket.h
generic-y += sockios.h
generic-y += stat.h
diff --git a/arch/arm/include/asm/Kbuild b/arch/arm/include/asm/Kbuild
index 3a36d99ff836..d8360501c082 100644
--- a/arch/arm/include/asm/Kbuild
+++ b/arch/arm/include/asm/Kbuild
@@ -28,7 +28,6 @@ generic-y += segment.h
generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += simd.h
generic-y += sizes.h
generic-y += socket.h
diff --git a/arch/arm/include/uapi/asm/Kbuild b/arch/arm/include/uapi/asm/Kbuild
index 607f702c2d62..e9b098d6b766 100644
--- a/arch/arm/include/uapi/asm/Kbuild
+++ b/arch/arm/include/uapi/asm/Kbuild
@@ -4,3 +4,5 @@ include include/uapi/asm-generic/Kbuild.asm
genhdr-y += unistd-common.h
genhdr-y += unistd-oabi.h
genhdr-y += unistd-eabi.h
+
+generic-y += siginfo.h
diff --git a/arch/c6x/include/asm/Kbuild b/arch/c6x/include/asm/Kbuild
index f0eaf0475e7e..a3c8d05c4cc7 100644
--- a/arch/c6x/include/asm/Kbuild
+++ b/arch/c6x/include/asm/Kbuild
@@ -45,7 +45,6 @@ generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += signal.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/c6x/include/uapi/asm/Kbuild b/arch/c6x/include/uapi/asm/Kbuild
index 13a97aa2285f..1c44d3b3eba0 100644
--- a/arch/c6x/include/uapi/asm/Kbuild
+++ b/arch/c6x/include/uapi/asm/Kbuild
@@ -2,3 +2,4 @@
include include/uapi/asm-generic/Kbuild.asm
generic-y += kvm_para.h
+generic-y += siginfo.h
diff --git a/arch/cris/include/asm/Kbuild b/arch/cris/include/asm/Kbuild
index 2890099992a9..acc5781100c2 100644
--- a/arch/cris/include/asm/Kbuild
+++ b/arch/cris/include/asm/Kbuild
@@ -36,7 +36,6 @@ generic-y += resource.h
generic-y += sections.h
generic-y += sembuf.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += socket.h
generic-y += sockios.h
generic-y += statfs.h
diff --git a/arch/cris/include/uapi/asm/Kbuild b/arch/cris/include/uapi/asm/Kbuild
index b15bf6bc0e94..b55fc2ae1e8c 100644
--- a/arch/cris/include/uapi/asm/Kbuild
+++ b/arch/cris/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/h8300/include/asm/Kbuild b/arch/h8300/include/asm/Kbuild
index 757cdeb24e6e..99c824608a31 100644
--- a/arch/h8300/include/asm/Kbuild
+++ b/arch/h8300/include/asm/Kbuild
@@ -54,7 +54,6 @@ generic-y += serial.h
generic-y += setup.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += sizes.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/h8300/include/uapi/asm/Kbuild b/arch/h8300/include/uapi/asm/Kbuild
index b15bf6bc0e94..b55fc2ae1e8c 100644
--- a/arch/h8300/include/uapi/asm/Kbuild
+++ b/arch/h8300/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/hexagon/include/asm/Kbuild b/arch/hexagon/include/asm/Kbuild
index 6b45ef79eb8f..0fc9cb04e6ad 100644
--- a/arch/hexagon/include/asm/Kbuild
+++ b/arch/hexagon/include/asm/Kbuild
@@ -41,7 +41,6 @@ generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += sizes.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/ia64/include/asm/siginfo.h b/arch/ia64/include/asm/siginfo.h
deleted file mode 100644
index dd2f2fce976b..000000000000
--- a/arch/ia64/include/asm/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <uapi/asm/siginfo.h>
diff --git a/arch/m68k/include/asm/Kbuild b/arch/m68k/include/asm/Kbuild
index 82005d2ff717..5ecf4e47b2e2 100644
--- a/arch/m68k/include/asm/Kbuild
+++ b/arch/m68k/include/asm/Kbuild
@@ -25,7 +25,6 @@ generic-y += preempt.h
generic-y += resource.h
generic-y += sections.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += spinlock.h
generic-y += statfs.h
generic-y += termios.h
diff --git a/arch/m68k/include/uapi/asm/Kbuild b/arch/m68k/include/uapi/asm/Kbuild
index 64368077235a..68b45cc87e2c 100644
--- a/arch/m68k/include/uapi/asm/Kbuild
+++ b/arch/m68k/include/uapi/asm/Kbuild
@@ -5,6 +5,7 @@ generic-y += auxvec.h
generic-y += msgbuf.h
generic-y += sembuf.h
generic-y += shmbuf.h
+generic-y += siginfo.h
generic-y += socket.h
generic-y += sockios.h
generic-y += termbits.h
diff --git a/arch/nios2/include/asm/Kbuild b/arch/nios2/include/asm/Kbuild
index 727dbb333f60..e1a843def56f 100644
--- a/arch/nios2/include/asm/Kbuild
+++ b/arch/nios2/include/asm/Kbuild
@@ -47,7 +47,6 @@ generic-y += segment.h
generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += signal.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/nios2/include/uapi/asm/Kbuild b/arch/nios2/include/uapi/asm/Kbuild
index 374bd123329f..51eff5bc2eb4 100644
--- a/arch/nios2/include/uapi/asm/Kbuild
+++ b/arch/nios2/include/uapi/asm/Kbuild
@@ -2,4 +2,5 @@
include include/uapi/asm-generic/Kbuild.asm
generic-y += setup.h
+generic-y += siginfo.h
generic-y += ucontext.h
diff --git a/arch/openrisc/include/asm/Kbuild b/arch/openrisc/include/asm/Kbuild
index fdbcf0bf44a4..091585addb91 100644
--- a/arch/openrisc/include/asm/Kbuild
+++ b/arch/openrisc/include/asm/Kbuild
@@ -46,7 +46,6 @@ generic-y += sembuf.h
generic-y += setup.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += signal.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/openrisc/include/uapi/asm/Kbuild b/arch/openrisc/include/uapi/asm/Kbuild
index b15bf6bc0e94..b55fc2ae1e8c 100644
--- a/arch/openrisc/include/uapi/asm/Kbuild
+++ b/arch/openrisc/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/sh/include/asm/Kbuild b/arch/sh/include/asm/Kbuild
index cf2a75063b53..590c91ae7541 100644
--- a/arch/sh/include/asm/Kbuild
+++ b/arch/sh/include/asm/Kbuild
@@ -29,7 +29,6 @@ generic-y += rwsem.h
generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += sizes.h
generic-y += socket.h
generic-y += statfs.h
diff --git a/arch/sh/include/uapi/asm/Kbuild b/arch/sh/include/uapi/asm/Kbuild
index b15bf6bc0e94..4cb0d2f8868c 100644
--- a/arch/sh/include/uapi/asm/Kbuild
+++ b/arch/sh/include/uapi/asm/Kbuild
@@ -1,2 +1,3 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+generic-y += siginfo.h
diff --git a/arch/sparc/include/asm/siginfo.h b/arch/sparc/include/asm/siginfo.h
deleted file mode 100644
index dd2f2fce976b..000000000000
--- a/arch/sparc/include/asm/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <uapi/asm/siginfo.h>
diff --git a/arch/unicore32/include/asm/Kbuild b/arch/unicore32/include/asm/Kbuild
index e9ad511c1043..7a53a55341de 100644
--- a/arch/unicore32/include/asm/Kbuild
+++ b/arch/unicore32/include/asm/Kbuild
@@ -44,7 +44,6 @@ generic-y += serial.h
generic-y += setup.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += signal.h
generic-y += sizes.h
generic-y += socket.h
diff --git a/arch/xtensa/include/asm/Kbuild b/arch/xtensa/include/asm/Kbuild
index cc23e9ecc6bb..30f6290109d4 100644
--- a/arch/xtensa/include/asm/Kbuild
+++ b/arch/xtensa/include/asm/Kbuild
@@ -25,7 +25,6 @@ generic-y += preempt.h
generic-y += resource.h
generic-y += rwsem.h
generic-y += sections.h
-generic-y += siginfo.h
generic-y += statfs.h
generic-y += termios.h
generic-y += topology.h
diff --git a/arch/xtensa/include/uapi/asm/Kbuild b/arch/xtensa/include/uapi/asm/Kbuild
index b15bf6bc0e94..4cb0d2f8868c 100644
--- a/arch/xtensa/include/uapi/asm/Kbuild
+++ b/arch/xtensa/include/uapi/asm/Kbuild
@@ -1,2 +1,3 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+generic-y += siginfo.h
diff --git a/include/asm-generic/siginfo.h b/include/asm-generic/siginfo.h
deleted file mode 100644
index 31268a5bf63e..000000000000
--- a/include/asm-generic/siginfo.h
+++ /dev/null
@@ -1,17 +0,0 @@
-#ifndef _ASM_GENERIC_SIGINFO_H
-#define _ASM_GENERIC_SIGINFO_H
-
-#include <uapi/asm-generic/siginfo.h>
-
-#define __SI_MASK 0xffff0000u
-#define __SI_KILL (0 << 16)
-#define __SI_TIMER (1 << 16)
-#define __SI_POLL (2 << 16)
-#define __SI_FAULT (3 << 16)
-#define __SI_CHLD (4 << 16)
-#define __SI_RT (5 << 16)
-#define __SI_MESGQ (6 << 16)
-#define __SI_SYS (7 << 16)
-#define __SI_CODE(T,N) ((T) | ((N) & 0xffff))
-
-#endif
diff --git a/include/uapi/asm-generic/siginfo.h b/include/uapi/asm-generic/siginfo.h
index 1abaf62c86fc..9c4eca6b374a 100644
--- a/include/uapi/asm-generic/siginfo.h
+++ b/include/uapi/asm-generic/siginfo.h
@@ -151,7 +151,18 @@ typedef struct siginfo {
#define si_arch _sifields._sigsys._arch
#endif
-#ifndef __KERNEL__
+#ifdef __KERNEL__
+#define __SI_MASK 0xffff0000u
+#define __SI_KILL (0 << 16)
+#define __SI_TIMER (1 << 16)
+#define __SI_POLL (2 << 16)
+#define __SI_FAULT (3 << 16)
+#define __SI_CHLD (4 << 16)
+#define __SI_RT (5 << 16)
+#define __SI_MESGQ (6 << 16)
+#define __SI_SYS (7 << 16)
+#define __SI_CODE(T,N) ((T) | ((N) & 0xffff))
+#else /* __KERNEL__ */
#define __SI_KILL 0
#define __SI_TIMER 0
#define __SI_POLL 0
@@ -161,7 +172,7 @@ typedef struct siginfo {
#define __SI_MESGQ 0
#define __SI_SYS 0
#define __SI_CODE(T,N) (N)
-#endif
+#endif /* __KERNEL__ */
/*
* si_code values
--
2.11.0
^ permalink raw reply related [flat|nested] 27+ messages in thread
* Re: [PATCH 1/5] sparc: simplify <asm/siginfo.h>
2017-06-03 19:00 ` Christoph Hellwig
@ 2017-06-03 21:10 ` David Miller
-1 siblings, 0 replies; 27+ messages in thread
From: David Miller @ 2017-06-03 21:10 UTC (permalink / raw)
To: hch
Cc: arnd, tglx, tony.luck, fenghua.yu, linux-arch, sparclinux,
linux-ia64, linux-kernel
From: Christoph Hellwig <hch@lst.de>
Date: Sat, 3 Jun 2017 21:00:58 +0200
> There is no need for the forward declaration of compat_siginfo provided
> here. We can't yet use the generic header as we need to pull in the
> sparc-specific version of the uapi <asm/siginfo.h>, but this prepares
> for removing the non-uapi <asm/siginfo.h> entirely.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: David S. Miller <davem@davemloft.net>
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [PATCH 1/5] sparc: simplify <asm/siginfo.h>
@ 2017-06-03 21:10 ` David Miller
0 siblings, 0 replies; 27+ messages in thread
From: David Miller @ 2017-06-03 21:10 UTC (permalink / raw)
To: hch
Cc: arnd, tglx, tony.luck, fenghua.yu, linux-arch, sparclinux,
linux-ia64, linux-kernel
From: Christoph Hellwig <hch@lst.de>
Date: Sat, 3 Jun 2017 21:00:58 +0200
> There is no need for the forward declaration of compat_siginfo provided
> here. We can't yet use the generic header as we need to pull in the
> sparc-specific version of the uapi <asm/siginfo.h>, but this prepares
> for removing the non-uapi <asm/siginfo.h> entirely.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: David S. Miller <davem@davemloft.net>
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [PATCH 5/5] remove non-uapi <asm/siginfo.h>
2017-06-03 19:01 ` Christoph Hellwig
@ 2017-06-04 13:13 ` Thomas Gleixner
-1 siblings, 0 replies; 27+ messages in thread
From: Thomas Gleixner @ 2017-06-04 13:13 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Arnd Bergmann, David S. Miller, Tony Luck, Fenghua Yu,
linux-arch, sparclinux, linux-ia64, linux-kernel
On Sat, 3 Jun 2017, Christoph Hellwig wrote:
> By moving the kernel side __SI_* defintions right next to the userspace
> ones we can kill the non-uapi versions of <asm/siginfo.h> include
> include/asm-generic/siginfo.h and untangle the unholy mess of includes.
That needs a couple of fixups and we can remove
arch/X/include/uapi/asm/siginfo.h from m32r, microblaze, mn10300 and score.
Delta patch below.
Thanks,
tglx
8<--------------------
--- a/arch/sh/include/uapi/asm/Kbuild
+++ b/arch/sh/include/uapi/asm/Kbuild
@@ -1,3 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
generic-y += siginfo.h
--- a/arch/arc/include/uapi/asm/Kbuild
+++ b/arch/arc/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
--- a/arch/hexagon/include/uapi/asm/Kbuild
+++ b/arch/hexagon/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
--- a/arch/m32r/include/uapi/asm/Kbuild
+++ b/arch/m32r/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
--- a/arch/m32r/include/uapi/asm/siginfo.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#ifndef _M32R_SIGINFO_H
-#define _M32R_SIGINFO_H
-
-#include <asm-generic/siginfo.h>
-
-#endif /* _M32R_SIGINFO_H */
--- a/arch/microblaze/include/uapi/asm/Kbuild
+++ b/arch/microblaze/include/uapi/asm/Kbuild
@@ -2,3 +2,4 @@
include include/uapi/asm-generic/Kbuild.asm
generic-y += types.h
+generic-y += siginfo.h
--- a/arch/microblaze/include/uapi/asm/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <asm-generic/siginfo.h>
--- a/arch/mn10300/include/uapi/asm/Kbuild
+++ b/arch/mn10300/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
--- a/arch/mn10300/include/uapi/asm/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <asm-generic/siginfo.h>
--- a/arch/score/include/uapi/asm/Kbuild
+++ b/arch/score/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
--- a/arch/score/include/uapi/asm/siginfo.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#ifndef _ASM_SCORE_SIGINFO_H
-#define _ASM_SCORE_SIGINFO_H
-
-#include <asm-generic/siginfo.h>
-
-#endif /* _ASM_SCORE_SIGINFO_H */
--- a/arch/unicore32/include/uapi/asm/Kbuild
+++ b/arch/unicore32/include/uapi/asm/Kbuild
@@ -2,3 +2,4 @@
include include/uapi/asm-generic/Kbuild.asm
generic-y += kvm_para.h
+generic-y += siginfo.h
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [PATCH 5/5] remove non-uapi <asm/siginfo.h>
@ 2017-06-04 13:13 ` Thomas Gleixner
0 siblings, 0 replies; 27+ messages in thread
From: Thomas Gleixner @ 2017-06-04 13:13 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Arnd Bergmann, David S. Miller, Tony Luck, Fenghua Yu,
linux-arch, sparclinux, linux-ia64, linux-kernel
On Sat, 3 Jun 2017, Christoph Hellwig wrote:
> By moving the kernel side __SI_* defintions right next to the userspace
> ones we can kill the non-uapi versions of <asm/siginfo.h> include
> include/asm-generic/siginfo.h and untangle the unholy mess of includes.
That needs a couple of fixups and we can remove
arch/X/include/uapi/asm/siginfo.h from m32r, microblaze, mn10300 and score.
Delta patch below.
Thanks,
tglx
8<--------------------
--- a/arch/sh/include/uapi/asm/Kbuild
+++ b/arch/sh/include/uapi/asm/Kbuild
@@ -1,3 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
generic-y += siginfo.h
--- a/arch/arc/include/uapi/asm/Kbuild
+++ b/arch/arc/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
--- a/arch/hexagon/include/uapi/asm/Kbuild
+++ b/arch/hexagon/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
--- a/arch/m32r/include/uapi/asm/Kbuild
+++ b/arch/m32r/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
--- a/arch/m32r/include/uapi/asm/siginfo.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#ifndef _M32R_SIGINFO_H
-#define _M32R_SIGINFO_H
-
-#include <asm-generic/siginfo.h>
-
-#endif /* _M32R_SIGINFO_H */
--- a/arch/microblaze/include/uapi/asm/Kbuild
+++ b/arch/microblaze/include/uapi/asm/Kbuild
@@ -2,3 +2,4 @@
include include/uapi/asm-generic/Kbuild.asm
generic-y += types.h
+generic-y += siginfo.h
--- a/arch/microblaze/include/uapi/asm/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <asm-generic/siginfo.h>
--- a/arch/mn10300/include/uapi/asm/Kbuild
+++ b/arch/mn10300/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
--- a/arch/mn10300/include/uapi/asm/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <asm-generic/siginfo.h>
--- a/arch/score/include/uapi/asm/Kbuild
+++ b/arch/score/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
--- a/arch/score/include/uapi/asm/siginfo.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#ifndef _ASM_SCORE_SIGINFO_H
-#define _ASM_SCORE_SIGINFO_H
-
-#include <asm-generic/siginfo.h>
-
-#endif /* _ASM_SCORE_SIGINFO_H */
--- a/arch/unicore32/include/uapi/asm/Kbuild
+++ b/arch/unicore32/include/uapi/asm/Kbuild
@@ -2,3 +2,4 @@
include include/uapi/asm-generic/Kbuild.asm
generic-y += kvm_para.h
+generic-y += siginfo.h
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [PATCH 5/5] remove non-uapi <asm/siginfo.h>
2017-06-04 13:13 ` Thomas Gleixner
@ 2017-06-05 7:18 ` Christoph Hellwig
-1 siblings, 0 replies; 27+ messages in thread
From: Christoph Hellwig @ 2017-06-05 7:18 UTC (permalink / raw)
To: Thomas Gleixner
Cc: Christoph Hellwig, Arnd Bergmann, David S. Miller, Tony Luck,
Fenghua Yu, linux-arch, sparclinux, linux-ia64, linux-kernel
On Sun, Jun 04, 2017 at 03:13:11PM +0200, Thomas Gleixner wrote:
> On Sat, 3 Jun 2017, Christoph Hellwig wrote:
>
> > By moving the kernel side __SI_* defintions right next to the userspace
> > ones we can kill the non-uapi versions of <asm/siginfo.h> include
> > include/asm-generic/siginfo.h and untangle the unholy mess of includes.
>
> That needs a couple of fixups and we can remove
>
> arch/X/include/uapi/asm/siginfo.h from m32r, microblaze, mn10300 and score.
>
> Delta patch below.
Thanks. I'm going to include this if I have to resend for some reason.
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [PATCH 5/5] remove non-uapi <asm/siginfo.h>
@ 2017-06-05 7:18 ` Christoph Hellwig
0 siblings, 0 replies; 27+ messages in thread
From: Christoph Hellwig @ 2017-06-05 7:18 UTC (permalink / raw)
To: Thomas Gleixner
Cc: Christoph Hellwig, Arnd Bergmann, David S. Miller, Tony Luck,
Fenghua Yu, linux-arch, sparclinux, linux-ia64, linux-kernel
On Sun, Jun 04, 2017 at 03:13:11PM +0200, Thomas Gleixner wrote:
> On Sat, 3 Jun 2017, Christoph Hellwig wrote:
>
> > By moving the kernel side __SI_* defintions right next to the userspace
> > ones we can kill the non-uapi versions of <asm/siginfo.h> include
> > include/asm-generic/siginfo.h and untangle the unholy mess of includes.
>
> That needs a couple of fixups and we can remove
>
> arch/X/include/uapi/asm/siginfo.h from m32r, microblaze, mn10300 and score.
>
> Delta patch below.
Thanks. I'm going to include this if I have to resend for some reason.
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [PATCH 5/5] remove non-uapi <asm/siginfo.h>
2017-06-05 7:18 ` Christoph Hellwig
@ 2017-06-05 8:00 ` Thomas Gleixner
-1 siblings, 0 replies; 27+ messages in thread
From: Thomas Gleixner @ 2017-06-05 8:00 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Arnd Bergmann, David S. Miller, Tony Luck, Fenghua Yu,
linux-arch, sparclinux, linux-ia64, linux-kernel
On Mon, 5 Jun 2017, Christoph Hellwig wrote:
> On Sun, Jun 04, 2017 at 03:13:11PM +0200, Thomas Gleixner wrote:
> > On Sat, 3 Jun 2017, Christoph Hellwig wrote:
> >
> > > By moving the kernel side __SI_* defintions right next to the userspace
> > > ones we can kill the non-uapi versions of <asm/siginfo.h> include
> > > include/asm-generic/siginfo.h and untangle the unholy mess of includes.
> >
> > That needs a couple of fixups and we can remove
> >
> > arch/X/include/uapi/asm/siginfo.h from m32r, microblaze, mn10300 and score.
> >
> > Delta patch below.
>
> Thanks. I'm going to include this if I have to resend for some reason.
No need. I already folded it in and it survived the built bot testing w/o
complaints. About to push it out into tip timers/core as I have the posix
timer stuff pending on top of it.
Thanks,
tglx
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [PATCH 5/5] remove non-uapi <asm/siginfo.h>
@ 2017-06-05 8:00 ` Thomas Gleixner
0 siblings, 0 replies; 27+ messages in thread
From: Thomas Gleixner @ 2017-06-05 8:00 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Arnd Bergmann, David S. Miller, Tony Luck, Fenghua Yu,
linux-arch, sparclinux, linux-ia64, linux-kernel
On Mon, 5 Jun 2017, Christoph Hellwig wrote:
> On Sun, Jun 04, 2017 at 03:13:11PM +0200, Thomas Gleixner wrote:
> > On Sat, 3 Jun 2017, Christoph Hellwig wrote:
> >
> > > By moving the kernel side __SI_* defintions right next to the userspace
> > > ones we can kill the non-uapi versions of <asm/siginfo.h> include
> > > include/asm-generic/siginfo.h and untangle the unholy mess of includes.
> >
> > That needs a couple of fixups and we can remove
> >
> > arch/X/include/uapi/asm/siginfo.h from m32r, microblaze, mn10300 and score.
> >
> > Delta patch below.
>
> Thanks. I'm going to include this if I have to resend for some reason.
No need. I already folded it in and it survived the built bot testing w/o
complaints. About to push it out into tip timers/core as I have the posix
timer stuff pending on top of it.
Thanks,
tglx
^ permalink raw reply [flat|nested] 27+ messages in thread
* [tip:timers/core] sparc: Simplify <asm/siginfo.h>
2017-06-03 19:00 ` Christoph Hellwig
(?)
(?)
@ 2017-06-05 8:10 ` tip-bot for Christoph Hellwig
-1 siblings, 0 replies; 27+ messages in thread
From: tip-bot for Christoph Hellwig @ 2017-06-05 8:10 UTC (permalink / raw)
To: linux-tip-commits
Cc: linux-kernel, arnd, davem, mingo, tony.luck, hpa, tglx, hch, fenghua.yu
Commit-ID: f70c80068f073ace4b9071803d2e2691fe0c3d05
Gitweb: http://git.kernel.org/tip/f70c80068f073ace4b9071803d2e2691fe0c3d05
Author: Christoph Hellwig <hch@lst.de>
AuthorDate: Sat, 3 Jun 2017 21:00:58 +0200
Committer: Thomas Gleixner <tglx@linutronix.de>
CommitDate: Sun, 4 Jun 2017 15:11:45 +0200
sparc: Simplify <asm/siginfo.h>
There is no need for the forward declaration of compat_siginfo provided
here. We can't yet use the generic header as we need to pull in the
sparc-specific version of the uapi <asm/siginfo.h>, but this prepares
for removing the non-uapi <asm/siginfo.h> entirely.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-arch@vger.kernel.org
Cc: Fenghua Yu <fenghua.yu@intel.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: linux-ia64@vger.kernel.org
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: sparclinux@vger.kernel.org
Link: http://lkml.kernel.org/r/20170603190102.28866-2-hch@lst.de
---
arch/sparc/include/asm/siginfo.h | 12 ------------
1 file changed, 12 deletions(-)
diff --git a/arch/sparc/include/asm/siginfo.h b/arch/sparc/include/asm/siginfo.h
index 48c34c1..dd2f2fc 100644
--- a/arch/sparc/include/asm/siginfo.h
+++ b/arch/sparc/include/asm/siginfo.h
@@ -1,13 +1 @@
-#ifndef __SPARC_SIGINFO_H
-#define __SPARC_SIGINFO_H
-
#include <uapi/asm/siginfo.h>
-
-
-#ifdef CONFIG_COMPAT
-
-struct compat_siginfo;
-
-#endif /* CONFIG_COMPAT */
-
-#endif /* !(__SPARC_SIGINFO_H) */
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [tip:timers/core] ia64: Remove HAVE_ARCH_COPY_SIGINFO
2017-06-03 19:00 ` Christoph Hellwig
(?)
@ 2017-06-05 8:10 ` tip-bot for Christoph Hellwig
-1 siblings, 0 replies; 27+ messages in thread
From: tip-bot for Christoph Hellwig @ 2017-06-05 8:10 UTC (permalink / raw)
To: linux-tip-commits
Cc: mingo, hpa, arnd, tglx, tony.luck, fenghua.yu, davem, linux-kernel, hch
Commit-ID: 7994200ce69a3873dfa2641254a13bb0a40056f3
Gitweb: http://git.kernel.org/tip/7994200ce69a3873dfa2641254a13bb0a40056f3
Author: Christoph Hellwig <hch@lst.de>
AuthorDate: Sat, 3 Jun 2017 21:00:59 +0200
Committer: Thomas Gleixner <tglx@linutronix.de>
CommitDate: Sun, 4 Jun 2017 15:11:46 +0200
ia64: Remove HAVE_ARCH_COPY_SIGINFO
Since ia64 defines __ARCH_SI_PREAMBLE_SIZE it can just use the generic
copy_siginfo implementation, which is identical to the architecture
specific one.
With that support for HAVE_ARCH_COPY_SIGINFO can go away entirely.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-arch@vger.kernel.org
Cc: Fenghua Yu <fenghua.yu@intel.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: linux-ia64@vger.kernel.org
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: sparclinux@vger.kernel.org
Cc: "David S. Miller" <davem@davemloft.net>
Link: http://lkml.kernel.org/r/20170603190102.28866-3-hch@lst.de
---
arch/ia64/include/asm/siginfo.h | 22 ----------------------
arch/ia64/include/uapi/asm/siginfo.h | 1 -
include/linux/signal.h | 7 +------
3 files changed, 1 insertion(+), 29 deletions(-)
diff --git a/arch/ia64/include/asm/siginfo.h b/arch/ia64/include/asm/siginfo.h
index 6f2e2dd..dd2f2fc 100644
--- a/arch/ia64/include/asm/siginfo.h
+++ b/arch/ia64/include/asm/siginfo.h
@@ -1,23 +1 @@
-/*
- * Based on <asm-i386/siginfo.h>.
- *
- * Modified 1998-2002
- * David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co
- */
-#ifndef _ASM_IA64_SIGINFO_H
-#define _ASM_IA64_SIGINFO_H
-
-#include <linux/string.h>
#include <uapi/asm/siginfo.h>
-
-static inline void
-copy_siginfo (siginfo_t *to, siginfo_t *from)
-{
- if (from->si_code < 0)
- memcpy(to, from, sizeof(siginfo_t));
- else
- /* _sigchld is currently the largest know union member */
- memcpy(to, from, 4*sizeof(int) + sizeof(from->_sifields._sigchld));
-}
-
-#endif /* _ASM_IA64_SIGINFO_H */
diff --git a/arch/ia64/include/uapi/asm/siginfo.h b/arch/ia64/include/uapi/asm/siginfo.h
index f72bf01..4694c64 100644
--- a/arch/ia64/include/uapi/asm/siginfo.h
+++ b/arch/ia64/include/uapi/asm/siginfo.h
@@ -11,7 +11,6 @@
#define __ARCH_SI_PREAMBLE_SIZE (4 * sizeof(int))
#define HAVE_ARCH_SIGINFO_T
-#define HAVE_ARCH_COPY_SIGINFO
#define HAVE_ARCH_COPY_SIGINFO_TO_USER
#include <asm-generic/siginfo.h>
diff --git a/include/linux/signal.h b/include/linux/signal.h
index 1f5a166..80c7418 100644
--- a/include/linux/signal.h
+++ b/include/linux/signal.h
@@ -3,16 +3,13 @@
#include <linux/bug.h>
#include <linux/signal_types.h>
+#include <linux/string.h>
struct task_struct;
/* for sysctl */
extern int print_fatal_signals;
-#ifndef HAVE_ARCH_COPY_SIGINFO
-
-#include <linux/string.h>
-
static inline void copy_siginfo(struct siginfo *to, struct siginfo *from)
{
if (from->si_code < 0)
@@ -22,8 +19,6 @@ static inline void copy_siginfo(struct siginfo *to, struct siginfo *from)
memcpy(to, from, __ARCH_SI_PREAMBLE_SIZE + sizeof(from->_sifields._sigchld));
}
-#endif
-
/*
* Define some primitives to manipulate sigset_t.
*/
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [tip:timers/core] posix-timers: Move the do_schedule_next_timer declaration
2017-06-03 19:01 ` Christoph Hellwig
(?)
@ 2017-06-05 8:11 ` tip-bot for Christoph Hellwig
-1 siblings, 0 replies; 27+ messages in thread
From: tip-bot for Christoph Hellwig @ 2017-06-05 8:11 UTC (permalink / raw)
To: linux-tip-commits
Cc: hch, linux-kernel, davem, arnd, fenghua.yu, mingo, hpa, tony.luck, tglx
Commit-ID: 31ea70e0308b73a1b862bd17c06efc3cbcfd2016
Gitweb: http://git.kernel.org/tip/31ea70e0308b73a1b862bd17c06efc3cbcfd2016
Author: Christoph Hellwig <hch@lst.de>
AuthorDate: Sat, 3 Jun 2017 21:01:00 +0200
Committer: Thomas Gleixner <tglx@linutronix.de>
CommitDate: Sun, 4 Jun 2017 15:11:46 +0200
posix-timers: Move the do_schedule_next_timer declaration
Having it in asm-generic/siginfo.h doesn't make any sense as it is in no way
architecture specific. Move it to posix-timers.h instead.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-arch@vger.kernel.org
Cc: Fenghua Yu <fenghua.yu@intel.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: linux-ia64@vger.kernel.org
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: sparclinux@vger.kernel.org
Cc: "David S. Miller" <davem@davemloft.net>
Link: http://lkml.kernel.org/r/20170603190102.28866-4-hch@lst.de
---
include/asm-generic/siginfo.h | 1 -
include/linux/posix-timers.h | 3 +++
kernel/signal.c | 1 +
3 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/include/asm-generic/siginfo.h b/include/asm-generic/siginfo.h
index a2508a8..5a93947 100644
--- a/include/asm-generic/siginfo.h
+++ b/include/asm-generic/siginfo.h
@@ -15,7 +15,6 @@
#define __SI_CODE(T,N) ((T) | ((N) & 0xffff))
struct siginfo;
-void do_schedule_next_timer(struct siginfo *info);
extern int copy_siginfo_to_user(struct siginfo __user *to, const struct siginfo *from);
diff --git a/include/linux/posix-timers.h b/include/linux/posix-timers.h
index 34e893a..8929f7e 100644
--- a/include/linux/posix-timers.h
+++ b/include/linux/posix-timers.h
@@ -7,6 +7,7 @@
#include <linux/timex.h>
#include <linux/alarmtimer.h>
+struct siginfo;
struct cpu_timer_list {
struct list_head entry;
@@ -120,4 +121,6 @@ long clock_nanosleep_restart(struct restart_block *restart_block);
void update_rlimit_cpu(struct task_struct *task, unsigned long rlim_new);
+void do_schedule_next_timer(struct siginfo *info);
+
#endif
diff --git a/kernel/signal.c b/kernel/signal.c
index ca92bcf..1f85c84 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -39,6 +39,7 @@
#include <linux/compat.h>
#include <linux/cn_proc.h>
#include <linux/compiler.h>
+#include <linux/posix-timers.h>
#define CREATE_TRACE_POINTS
#include <trace/events/signal.h>
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [tip:timers/core] signal: Move copy_siginfo_to_user to <linux/signal.h>
2017-06-03 19:01 ` Christoph Hellwig
(?)
@ 2017-06-05 8:12 ` tip-bot for Christoph Hellwig
-1 siblings, 0 replies; 27+ messages in thread
From: tip-bot for Christoph Hellwig @ 2017-06-05 8:12 UTC (permalink / raw)
To: linux-tip-commits
Cc: linux-kernel, hch, tglx, hpa, fenghua.yu, arnd, tony.luck, mingo, davem
Commit-ID: b9253a43370e8f3c46c0ee24b04fa2ffec37b7c0
Gitweb: http://git.kernel.org/tip/b9253a43370e8f3c46c0ee24b04fa2ffec37b7c0
Author: Christoph Hellwig <hch@lst.de>
AuthorDate: Sat, 3 Jun 2017 21:01:01 +0200
Committer: Thomas Gleixner <tglx@linutronix.de>
CommitDate: Sun, 4 Jun 2017 15:11:46 +0200
signal: Move copy_siginfo_to_user to <linux/signal.h>
Having it in asm-generic/siginfo.h doesn't make any sense as it is in no way
architecture specific. Move it to signal.h instead where several related
functions already reside.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-arch@vger.kernel.org
Cc: Fenghua Yu <fenghua.yu@intel.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: linux-ia64@vger.kernel.org
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: sparclinux@vger.kernel.org
Cc: "David S. Miller" <davem@davemloft.net>
Link: http://lkml.kernel.org/r/20170603190102.28866-5-hch@lst.de
---
include/asm-generic/siginfo.h | 4 ----
include/linux/signal.h | 2 ++
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/include/asm-generic/siginfo.h b/include/asm-generic/siginfo.h
index 5a93947..31268a5 100644
--- a/include/asm-generic/siginfo.h
+++ b/include/asm-generic/siginfo.h
@@ -14,8 +14,4 @@
#define __SI_SYS (7 << 16)
#define __SI_CODE(T,N) ((T) | ((N) & 0xffff))
-struct siginfo;
-
-extern int copy_siginfo_to_user(struct siginfo __user *to, const struct siginfo *from);
-
#endif
diff --git a/include/linux/signal.h b/include/linux/signal.h
index 80c7418..a39fedd 100644
--- a/include/linux/signal.h
+++ b/include/linux/signal.h
@@ -19,6 +19,8 @@ static inline void copy_siginfo(struct siginfo *to, struct siginfo *from)
memcpy(to, from, __ARCH_SI_PREAMBLE_SIZE + sizeof(from->_sifields._sigchld));
}
+int copy_siginfo_to_user(struct siginfo __user *to, const struct siginfo *from);
+
/*
* Define some primitives to manipulate sigset_t.
*/
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [tip:timers/core] signal: Remove non-uapi <asm/siginfo.h>
2017-06-03 19:01 ` Christoph Hellwig
(?)
(?)
@ 2017-06-05 8:12 ` tip-bot for Christoph Hellwig
-1 siblings, 0 replies; 27+ messages in thread
From: tip-bot for Christoph Hellwig @ 2017-06-05 8:12 UTC (permalink / raw)
To: linux-tip-commits
Cc: hpa, hch, tglx, linux-kernel, mingo, tony.luck, davem, fenghua.yu, arnd
Commit-ID: 6bc51cbaa9d75c7c240282da5ff270815caccac0
Gitweb: http://git.kernel.org/tip/6bc51cbaa9d75c7c240282da5ff270815caccac0
Author: Christoph Hellwig <hch@lst.de>
AuthorDate: Sat, 3 Jun 2017 21:01:02 +0200
Committer: Thomas Gleixner <tglx@linutronix.de>
CommitDate: Sun, 4 Jun 2017 15:11:47 +0200
signal: Remove non-uapi <asm/siginfo.h>
By moving the kernel side __SI_* defintions right next to the userspace
ones we can kill the non-uapi versions of <asm/siginfo.h> include
include/asm-generic/siginfo.h and untangle the unholy mess of includes.
[ tglx: Removed uapi/asm/siginfo.h from m32r, microblaze, mn10300 and score ]
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-arch@vger.kernel.org
Cc: Fenghua Yu <fenghua.yu@intel.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: linux-ia64@vger.kernel.org
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: sparclinux@vger.kernel.org
Cc: "David S. Miller" <davem@davemloft.net>
Link: http://lkml.kernel.org/r/20170603190102.28866-6-hch@lst.de
---
arch/arc/include/asm/Kbuild | 1 -
arch/arc/include/uapi/asm/Kbuild | 2 ++
arch/arm/include/asm/Kbuild | 1 -
arch/arm/include/uapi/asm/Kbuild | 2 ++
arch/c6x/include/asm/Kbuild | 1 -
arch/c6x/include/uapi/asm/Kbuild | 1 +
arch/cris/include/asm/Kbuild | 1 -
arch/cris/include/uapi/asm/Kbuild | 2 ++
arch/h8300/include/asm/Kbuild | 1 -
arch/h8300/include/uapi/asm/Kbuild | 2 ++
arch/hexagon/include/asm/Kbuild | 1 -
arch/hexagon/include/uapi/asm/Kbuild | 2 ++
arch/ia64/include/asm/siginfo.h | 1 -
arch/m32r/include/uapi/asm/Kbuild | 2 ++
arch/m32r/include/uapi/asm/siginfo.h | 6 ------
arch/m68k/include/asm/Kbuild | 1 -
arch/m68k/include/uapi/asm/Kbuild | 1 +
arch/microblaze/include/uapi/asm/Kbuild | 1 +
arch/microblaze/include/uapi/asm/siginfo.h | 1 -
arch/mn10300/include/uapi/asm/Kbuild | 2 ++
arch/mn10300/include/uapi/asm/siginfo.h | 1 -
arch/nios2/include/asm/Kbuild | 1 -
arch/nios2/include/uapi/asm/Kbuild | 1 +
arch/openrisc/include/asm/Kbuild | 1 -
arch/openrisc/include/uapi/asm/Kbuild | 2 ++
arch/score/include/uapi/asm/Kbuild | 2 ++
arch/score/include/uapi/asm/siginfo.h | 6 ------
arch/sh/include/asm/Kbuild | 1 -
arch/sh/include/uapi/asm/Kbuild | 2 ++
arch/sparc/include/asm/siginfo.h | 1 -
arch/unicore32/include/asm/Kbuild | 1 -
arch/unicore32/include/uapi/asm/Kbuild | 1 +
arch/xtensa/include/asm/Kbuild | 1 -
arch/xtensa/include/uapi/asm/Kbuild | 1 +
include/asm-generic/siginfo.h | 17 -----------------
include/uapi/asm-generic/siginfo.h | 15 +++++++++++++--
36 files changed, 39 insertions(+), 47 deletions(-)
diff --git a/arch/arc/include/asm/Kbuild b/arch/arc/include/asm/Kbuild
index 7bee4e4..3e74ca5 100644
--- a/arch/arc/include/asm/Kbuild
+++ b/arch/arc/include/asm/Kbuild
@@ -36,7 +36,6 @@ generic-y += preempt.h
generic-y += resource.h
generic-y += sembuf.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += socket.h
generic-y += sockios.h
generic-y += stat.h
diff --git a/arch/arc/include/uapi/asm/Kbuild b/arch/arc/include/uapi/asm/Kbuild
index b15bf6b..b55fc2a 100644
--- a/arch/arc/include/uapi/asm/Kbuild
+++ b/arch/arc/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/arm/include/asm/Kbuild b/arch/arm/include/asm/Kbuild
index 3a36d99..d836050 100644
--- a/arch/arm/include/asm/Kbuild
+++ b/arch/arm/include/asm/Kbuild
@@ -28,7 +28,6 @@ generic-y += segment.h
generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += simd.h
generic-y += sizes.h
generic-y += socket.h
diff --git a/arch/arm/include/uapi/asm/Kbuild b/arch/arm/include/uapi/asm/Kbuild
index 607f702..e9b098d 100644
--- a/arch/arm/include/uapi/asm/Kbuild
+++ b/arch/arm/include/uapi/asm/Kbuild
@@ -4,3 +4,5 @@ include include/uapi/asm-generic/Kbuild.asm
genhdr-y += unistd-common.h
genhdr-y += unistd-oabi.h
genhdr-y += unistd-eabi.h
+
+generic-y += siginfo.h
diff --git a/arch/c6x/include/asm/Kbuild b/arch/c6x/include/asm/Kbuild
index f0eaf047..a3c8d05 100644
--- a/arch/c6x/include/asm/Kbuild
+++ b/arch/c6x/include/asm/Kbuild
@@ -45,7 +45,6 @@ generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += signal.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/c6x/include/uapi/asm/Kbuild b/arch/c6x/include/uapi/asm/Kbuild
index 13a97aa..1c44d3b 100644
--- a/arch/c6x/include/uapi/asm/Kbuild
+++ b/arch/c6x/include/uapi/asm/Kbuild
@@ -2,3 +2,4 @@
include include/uapi/asm-generic/Kbuild.asm
generic-y += kvm_para.h
+generic-y += siginfo.h
diff --git a/arch/cris/include/asm/Kbuild b/arch/cris/include/asm/Kbuild
index 2890099..acc5781 100644
--- a/arch/cris/include/asm/Kbuild
+++ b/arch/cris/include/asm/Kbuild
@@ -36,7 +36,6 @@ generic-y += resource.h
generic-y += sections.h
generic-y += sembuf.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += socket.h
generic-y += sockios.h
generic-y += statfs.h
diff --git a/arch/cris/include/uapi/asm/Kbuild b/arch/cris/include/uapi/asm/Kbuild
index b15bf6b..b55fc2a 100644
--- a/arch/cris/include/uapi/asm/Kbuild
+++ b/arch/cris/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/h8300/include/asm/Kbuild b/arch/h8300/include/asm/Kbuild
index 757cdeb..99c8246 100644
--- a/arch/h8300/include/asm/Kbuild
+++ b/arch/h8300/include/asm/Kbuild
@@ -54,7 +54,6 @@ generic-y += serial.h
generic-y += setup.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += sizes.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/h8300/include/uapi/asm/Kbuild b/arch/h8300/include/uapi/asm/Kbuild
index b15bf6b..b55fc2a 100644
--- a/arch/h8300/include/uapi/asm/Kbuild
+++ b/arch/h8300/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/hexagon/include/asm/Kbuild b/arch/hexagon/include/asm/Kbuild
index 6b45ef7..0fc9cb0 100644
--- a/arch/hexagon/include/asm/Kbuild
+++ b/arch/hexagon/include/asm/Kbuild
@@ -41,7 +41,6 @@ generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += sizes.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/hexagon/include/uapi/asm/Kbuild b/arch/hexagon/include/uapi/asm/Kbuild
index b15bf6b..b55fc2a 100644
--- a/arch/hexagon/include/uapi/asm/Kbuild
+++ b/arch/hexagon/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/ia64/include/asm/siginfo.h b/arch/ia64/include/asm/siginfo.h
deleted file mode 100644
index dd2f2fc..0000000
--- a/arch/ia64/include/asm/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <uapi/asm/siginfo.h>
diff --git a/arch/m32r/include/uapi/asm/Kbuild b/arch/m32r/include/uapi/asm/Kbuild
index b15bf6b..c94ee54 100644
--- a/arch/m32r/include/uapi/asm/Kbuild
+++ b/arch/m32r/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/m32r/include/uapi/asm/siginfo.h b/arch/m32r/include/uapi/asm/siginfo.h
deleted file mode 100644
index 7d9cd9e..0000000
--- a/arch/m32r/include/uapi/asm/siginfo.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#ifndef _M32R_SIGINFO_H
-#define _M32R_SIGINFO_H
-
-#include <asm-generic/siginfo.h>
-
-#endif /* _M32R_SIGINFO_H */
diff --git a/arch/m68k/include/asm/Kbuild b/arch/m68k/include/asm/Kbuild
index 82005d2..5ecf4e4 100644
--- a/arch/m68k/include/asm/Kbuild
+++ b/arch/m68k/include/asm/Kbuild
@@ -25,7 +25,6 @@ generic-y += preempt.h
generic-y += resource.h
generic-y += sections.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += spinlock.h
generic-y += statfs.h
generic-y += termios.h
diff --git a/arch/m68k/include/uapi/asm/Kbuild b/arch/m68k/include/uapi/asm/Kbuild
index 6436807..68b45cc 100644
--- a/arch/m68k/include/uapi/asm/Kbuild
+++ b/arch/m68k/include/uapi/asm/Kbuild
@@ -5,6 +5,7 @@ generic-y += auxvec.h
generic-y += msgbuf.h
generic-y += sembuf.h
generic-y += shmbuf.h
+generic-y += siginfo.h
generic-y += socket.h
generic-y += sockios.h
generic-y += termbits.h
diff --git a/arch/microblaze/include/uapi/asm/Kbuild b/arch/microblaze/include/uapi/asm/Kbuild
index 2178c78..cb6784f 100644
--- a/arch/microblaze/include/uapi/asm/Kbuild
+++ b/arch/microblaze/include/uapi/asm/Kbuild
@@ -2,3 +2,4 @@
include include/uapi/asm-generic/Kbuild.asm
generic-y += types.h
+generic-y += siginfo.h
diff --git a/arch/microblaze/include/uapi/asm/siginfo.h b/arch/microblaze/include/uapi/asm/siginfo.h
deleted file mode 100644
index 0815d29..0000000
--- a/arch/microblaze/include/uapi/asm/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <asm-generic/siginfo.h>
diff --git a/arch/mn10300/include/uapi/asm/Kbuild b/arch/mn10300/include/uapi/asm/Kbuild
index b15bf6b..c94ee54 100644
--- a/arch/mn10300/include/uapi/asm/Kbuild
+++ b/arch/mn10300/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/mn10300/include/uapi/asm/siginfo.h b/arch/mn10300/include/uapi/asm/siginfo.h
deleted file mode 100644
index 0815d29..0000000
--- a/arch/mn10300/include/uapi/asm/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <asm-generic/siginfo.h>
diff --git a/arch/nios2/include/asm/Kbuild b/arch/nios2/include/asm/Kbuild
index 727dbb3..e1a843d 100644
--- a/arch/nios2/include/asm/Kbuild
+++ b/arch/nios2/include/asm/Kbuild
@@ -47,7 +47,6 @@ generic-y += segment.h
generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += signal.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/nios2/include/uapi/asm/Kbuild b/arch/nios2/include/uapi/asm/Kbuild
index 374bd12..51eff5b 100644
--- a/arch/nios2/include/uapi/asm/Kbuild
+++ b/arch/nios2/include/uapi/asm/Kbuild
@@ -2,4 +2,5 @@
include include/uapi/asm-generic/Kbuild.asm
generic-y += setup.h
+generic-y += siginfo.h
generic-y += ucontext.h
diff --git a/arch/openrisc/include/asm/Kbuild b/arch/openrisc/include/asm/Kbuild
index fdbcf0b..091585a 100644
--- a/arch/openrisc/include/asm/Kbuild
+++ b/arch/openrisc/include/asm/Kbuild
@@ -46,7 +46,6 @@ generic-y += sembuf.h
generic-y += setup.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += signal.h
generic-y += socket.h
generic-y += sockios.h
diff --git a/arch/openrisc/include/uapi/asm/Kbuild b/arch/openrisc/include/uapi/asm/Kbuild
index b15bf6b..b55fc2a 100644
--- a/arch/openrisc/include/uapi/asm/Kbuild
+++ b/arch/openrisc/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/score/include/uapi/asm/Kbuild b/arch/score/include/uapi/asm/Kbuild
index b15bf6b..c94ee54 100644
--- a/arch/score/include/uapi/asm/Kbuild
+++ b/arch/score/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/score/include/uapi/asm/siginfo.h b/arch/score/include/uapi/asm/siginfo.h
deleted file mode 100644
index 87ca356..0000000
--- a/arch/score/include/uapi/asm/siginfo.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#ifndef _ASM_SCORE_SIGINFO_H
-#define _ASM_SCORE_SIGINFO_H
-
-#include <asm-generic/siginfo.h>
-
-#endif /* _ASM_SCORE_SIGINFO_H */
diff --git a/arch/sh/include/asm/Kbuild b/arch/sh/include/asm/Kbuild
index cf2a750..590c91a 100644
--- a/arch/sh/include/asm/Kbuild
+++ b/arch/sh/include/asm/Kbuild
@@ -29,7 +29,6 @@ generic-y += rwsem.h
generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
-generic-y += siginfo.h
generic-y += sizes.h
generic-y += socket.h
generic-y += statfs.h
diff --git a/arch/sh/include/uapi/asm/Kbuild b/arch/sh/include/uapi/asm/Kbuild
index b15bf6b..b55fc2a 100644
--- a/arch/sh/include/uapi/asm/Kbuild
+++ b/arch/sh/include/uapi/asm/Kbuild
@@ -1,2 +1,4 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+
+generic-y += siginfo.h
diff --git a/arch/sparc/include/asm/siginfo.h b/arch/sparc/include/asm/siginfo.h
deleted file mode 100644
index dd2f2fc..0000000
--- a/arch/sparc/include/asm/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <uapi/asm/siginfo.h>
diff --git a/arch/unicore32/include/asm/Kbuild b/arch/unicore32/include/asm/Kbuild
index e9ad511..7a53a55 100644
--- a/arch/unicore32/include/asm/Kbuild
+++ b/arch/unicore32/include/asm/Kbuild
@@ -44,7 +44,6 @@ generic-y += serial.h
generic-y += setup.h
generic-y += shmbuf.h
generic-y += shmparam.h
-generic-y += siginfo.h
generic-y += signal.h
generic-y += sizes.h
generic-y += socket.h
diff --git a/arch/unicore32/include/uapi/asm/Kbuild b/arch/unicore32/include/uapi/asm/Kbuild
index 13a97aa..1c44d3b 100644
--- a/arch/unicore32/include/uapi/asm/Kbuild
+++ b/arch/unicore32/include/uapi/asm/Kbuild
@@ -2,3 +2,4 @@
include include/uapi/asm-generic/Kbuild.asm
generic-y += kvm_para.h
+generic-y += siginfo.h
diff --git a/arch/xtensa/include/asm/Kbuild b/arch/xtensa/include/asm/Kbuild
index cc23e9e..30f62901 100644
--- a/arch/xtensa/include/asm/Kbuild
+++ b/arch/xtensa/include/asm/Kbuild
@@ -25,7 +25,6 @@ generic-y += preempt.h
generic-y += resource.h
generic-y += rwsem.h
generic-y += sections.h
-generic-y += siginfo.h
generic-y += statfs.h
generic-y += termios.h
generic-y += topology.h
diff --git a/arch/xtensa/include/uapi/asm/Kbuild b/arch/xtensa/include/uapi/asm/Kbuild
index b15bf6b..4cb0d2f 100644
--- a/arch/xtensa/include/uapi/asm/Kbuild
+++ b/arch/xtensa/include/uapi/asm/Kbuild
@@ -1,2 +1,3 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm
+generic-y += siginfo.h
diff --git a/include/asm-generic/siginfo.h b/include/asm-generic/siginfo.h
deleted file mode 100644
index 31268a5..0000000
--- a/include/asm-generic/siginfo.h
+++ /dev/null
@@ -1,17 +0,0 @@
-#ifndef _ASM_GENERIC_SIGINFO_H
-#define _ASM_GENERIC_SIGINFO_H
-
-#include <uapi/asm-generic/siginfo.h>
-
-#define __SI_MASK 0xffff0000u
-#define __SI_KILL (0 << 16)
-#define __SI_TIMER (1 << 16)
-#define __SI_POLL (2 << 16)
-#define __SI_FAULT (3 << 16)
-#define __SI_CHLD (4 << 16)
-#define __SI_RT (5 << 16)
-#define __SI_MESGQ (6 << 16)
-#define __SI_SYS (7 << 16)
-#define __SI_CODE(T,N) ((T) | ((N) & 0xffff))
-
-#endif
diff --git a/include/uapi/asm-generic/siginfo.h b/include/uapi/asm-generic/siginfo.h
index 1abaf62..9c4eca6 100644
--- a/include/uapi/asm-generic/siginfo.h
+++ b/include/uapi/asm-generic/siginfo.h
@@ -151,7 +151,18 @@ typedef struct siginfo {
#define si_arch _sifields._sigsys._arch
#endif
-#ifndef __KERNEL__
+#ifdef __KERNEL__
+#define __SI_MASK 0xffff0000u
+#define __SI_KILL (0 << 16)
+#define __SI_TIMER (1 << 16)
+#define __SI_POLL (2 << 16)
+#define __SI_FAULT (3 << 16)
+#define __SI_CHLD (4 << 16)
+#define __SI_RT (5 << 16)
+#define __SI_MESGQ (6 << 16)
+#define __SI_SYS (7 << 16)
+#define __SI_CODE(T,N) ((T) | ((N) & 0xffff))
+#else /* __KERNEL__ */
#define __SI_KILL 0
#define __SI_TIMER 0
#define __SI_POLL 0
@@ -161,7 +172,7 @@ typedef struct siginfo {
#define __SI_MESGQ 0
#define __SI_SYS 0
#define __SI_CODE(T,N) (N)
-#endif
+#endif /* __KERNEL__ */
/*
* si_code values
^ permalink raw reply related [flat|nested] 27+ messages in thread
* Re: untangle the <asm/siginfo.h> mess
2017-06-03 19:00 ` Christoph Hellwig
@ 2017-06-06 10:57 ` Arnd Bergmann
-1 siblings, 0 replies; 27+ messages in thread
From: Arnd Bergmann @ 2017-06-06 10:57 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Thomas Gleixner, David S. Miller, Tony Luck, Fenghua Yu,
linux-arch, sparclinux, linux-ia64, Linux Kernel Mailing List
On Sat, Jun 3, 2017 at 9:00 PM, Christoph Hellwig <hch@lst.de> wrote:
> We currently have uapi versions of <asm/siginfo.h> which at least on a few
> architectures define bits of the userspace ABI before including an uapi
> asm-generic version, and also non-uapi versions which do almost nothing
> except for making sure other headers include the right uapi one before
> including an asm-generic that defined two prototypes and a few defines
> that aren't architecture specific in any.
>
> This series completely gets rid of the non-uapi versions and cleans up
> various small bits on the way.
>
> Note that Thomas has some posix-timers work overlapping with this, so
> it might make sense to take these through the tip tree.
Yes, makes sense. For asm-generic:
Acked-by: Arnd Bergmann <arnd@arndb.de>
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: untangle the <asm/siginfo.h> mess
@ 2017-06-06 10:57 ` Arnd Bergmann
0 siblings, 0 replies; 27+ messages in thread
From: Arnd Bergmann @ 2017-06-06 10:57 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Thomas Gleixner, David S. Miller, Tony Luck, Fenghua Yu,
linux-arch, sparclinux, linux-ia64, Linux Kernel Mailing List
On Sat, Jun 3, 2017 at 9:00 PM, Christoph Hellwig <hch@lst.de> wrote:
> We currently have uapi versions of <asm/siginfo.h> which at least on a few
> architectures define bits of the userspace ABI before including an uapi
> asm-generic version, and also non-uapi versions which do almost nothing
> except for making sure other headers include the right uapi one before
> including an asm-generic that defined two prototypes and a few defines
> that aren't architecture specific in any.
>
> This series completely gets rid of the non-uapi versions and cleans up
> various small bits on the way.
>
> Note that Thomas has some posix-timers work overlapping with this, so
> it might make sense to take these through the tip tree.
Yes, makes sense. For asm-generic:
Acked-by: Arnd Bergmann <arnd@arndb.de>
^ permalink raw reply [flat|nested] 27+ messages in thread
end of thread, other threads:[~2017-06-06 10:57 UTC | newest]
Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-03 19:00 untangle the <asm/siginfo.h> mess Christoph Hellwig
2017-06-03 19:00 ` Christoph Hellwig
2017-06-03 19:00 ` [PATCH 1/5] sparc: simplify <asm/siginfo.h> Christoph Hellwig
2017-06-03 19:00 ` Christoph Hellwig
2017-06-03 21:10 ` David Miller
2017-06-03 21:10 ` David Miller
2017-06-05 8:10 ` [tip:timers/core] sparc: Simplify <asm/siginfo.h> tip-bot for Christoph Hellwig
2017-06-03 19:00 ` [PATCH 2/5] ia64: remove HAVE_ARCH_COPY_SIGINFO Christoph Hellwig
2017-06-03 19:00 ` Christoph Hellwig
2017-06-05 8:10 ` [tip:timers/core] ia64: Remove HAVE_ARCH_COPY_SIGINFO tip-bot for Christoph Hellwig
2017-06-03 19:01 ` [PATCH 3/5] posix-timers: move the do_schedule_next_timer declaration Christoph Hellwig
2017-06-03 19:01 ` Christoph Hellwig
2017-06-05 8:11 ` [tip:timers/core] posix-timers: Move " tip-bot for Christoph Hellwig
2017-06-03 19:01 ` [PATCH 4/5] signal: move copy_siginfo_to_user to <linux/signal.h> Christoph Hellwig
2017-06-03 19:01 ` Christoph Hellwig
2017-06-05 8:12 ` [tip:timers/core] signal: Move " tip-bot for Christoph Hellwig
2017-06-03 19:01 ` [PATCH 5/5] remove non-uapi <asm/siginfo.h> Christoph Hellwig
2017-06-03 19:01 ` Christoph Hellwig
2017-06-04 13:13 ` Thomas Gleixner
2017-06-04 13:13 ` Thomas Gleixner
2017-06-05 7:18 ` Christoph Hellwig
2017-06-05 7:18 ` Christoph Hellwig
2017-06-05 8:00 ` Thomas Gleixner
2017-06-05 8:00 ` Thomas Gleixner
2017-06-05 8:12 ` [tip:timers/core] signal: Remove " tip-bot for Christoph Hellwig
2017-06-06 10:57 ` untangle the <asm/siginfo.h> mess Arnd Bergmann
2017-06-06 10:57 ` Arnd Bergmann
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.