constify copy_siginfo_to_user{,32}()
Al Viro [Wed, 23 Apr 2014 13:01:17 +0000 (18:01 +0530)]
Conflicts:
arch/x86/ia32/ia32_signal.c
Change-Id: I701cb58fffb756a2d29e7c828728d149c35e6c6a
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
(cherry picked from commit ce3959604878c1c693979ec552069dc8bdb5ccde)
Signed-off-by: Ishan Mittal <imittal@nvidia.com>

14 files changed:
arch/arm64/kernel/signal32.c
arch/ia64/kernel/signal.c
arch/mips/kernel/signal32.c
arch/parisc/kernel/signal32.c
arch/parisc/kernel/signal32.h
arch/powerpc/kernel/signal_32.c
arch/s390/kernel/compat_signal.c
arch/sparc/kernel/signal32.c
arch/tile/kernel/compat_signal.c
arch/x86/ia32/ia32_signal.c
fs/binfmt_elf.c
include/asm-generic/siginfo.h
include/linux/compat.h
kernel/signal.c

index e51bbe7..b3fc9f5 100644 (file)
@@ -122,7 +122,7 @@ static inline int get_sigset_t(sigset_t *set,
        return 0;
 }
 
-int copy_siginfo_to_user32(compat_siginfo_t __user *to, siginfo_t *from)
+int copy_siginfo_to_user32(compat_siginfo_t __user *to, const siginfo_t *from)
 {
        int err;
 
index 3637e03..33cab9a 100644 (file)
@@ -105,7 +105,7 @@ restore_sigcontext (struct sigcontext __user *sc, struct sigscratch *scr)
 }
 
 int
-copy_siginfo_to_user (siginfo_t __user *to, siginfo_t *from)
+copy_siginfo_to_user (siginfo_t __user *to, const siginfo_t *from)
 {
        if (!access_ok(VERIFY_WRITE, to, sizeof(siginfo_t)))
                return -EFAULT;
index 57de8b7..1905a41 100644 (file)
@@ -314,7 +314,7 @@ SYSCALL_DEFINE3(32_sigaction, long, sig, const struct compat_sigaction __user *,
        return ret;
 }
 
-int copy_siginfo_to_user32(compat_siginfo_t __user *to, siginfo_t *from)
+int copy_siginfo_to_user32(compat_siginfo_t __user *to, const siginfo_t *from)
 {
        int err;
 
index 33eca1b..bd2d467 100644 (file)
@@ -320,7 +320,7 @@ copy_siginfo_from_user32 (siginfo_t *to, compat_siginfo_t __user *from)
 }
 
 int
-copy_siginfo_to_user32 (compat_siginfo_t __user *to, siginfo_t *from)
+copy_siginfo_to_user32 (compat_siginfo_t __user *to, const siginfo_t *from)
 {
        compat_uptr_t addr;
        compat_int_t val;
index 72ab41a..af51d4c 100644 (file)
@@ -34,7 +34,7 @@ struct compat_ucontext {
 
 /* ELF32 signal handling */
 
-int copy_siginfo_to_user32 (compat_siginfo_t __user *to, siginfo_t *from);
+int copy_siginfo_to_user32 (compat_siginfo_t __user *to, const siginfo_t *from);
 int copy_siginfo_from_user32 (siginfo_t *to, compat_siginfo_t __user *from);
 
 /* In a deft move of uber-hackery, we decide to carry the top half of all
index 7e9dff8..2ba0d13 100644 (file)
@@ -888,7 +888,7 @@ static long restore_tm_user_regs(struct pt_regs *regs,
 #endif
 
 #ifdef CONFIG_PPC64
-int copy_siginfo_to_user32(struct compat_siginfo __user *d, siginfo_t *s)
+int copy_siginfo_to_user32(struct compat_siginfo __user *d, const siginfo_t *s)
 {
        int err;
 
index c439ac9..1dbed3c 100644 (file)
@@ -49,7 +49,7 @@ typedef struct
        __u32 gprs_high[NUM_GPRS];
 } rt_sigframe32;
 
-int copy_siginfo_to_user32(compat_siginfo_t __user *to, siginfo_t *from)
+int copy_siginfo_to_user32(compat_siginfo_t __user *to, const siginfo_t *from)
 {
        int err;
 
index b524f91..ee789d2 100644 (file)
@@ -68,7 +68,7 @@ struct rt_signal_frame32 {
        /* __siginfo_rwin_t * */u32 rwin_save;
 } __attribute__((aligned(8)));
 
-int copy_siginfo_to_user32(compat_siginfo_t __user *to, siginfo_t *from)
+int copy_siginfo_to_user32(compat_siginfo_t __user *to, const siginfo_t *from)
 {
        int err;
 
index d0a052e..732e1c1 100644 (file)
@@ -48,7 +48,7 @@ struct compat_rt_sigframe {
        struct compat_ucontext uc;
 };
 
-int copy_siginfo_to_user32(struct compat_siginfo __user *to, siginfo_t *from)
+int copy_siginfo_to_user32(struct compat_siginfo __user *to, const siginfo_t *from)
 {
        int err;
 
index 10adb41..a6f0d3d 100644 (file)
@@ -36,7 +36,7 @@
 
 #define FIX_EFLAGS     __FIX_EFLAGS
 
-int copy_siginfo_to_user32(compat_siginfo_t __user *to, siginfo_t *from)
+int copy_siginfo_to_user32(compat_siginfo_t __user *to, const siginfo_t *from)
 {
        int err = 0;
        bool ia32 = test_thread_flag(TIF_IA32);
index 3aac8e9..b6df167 100644 (file)
@@ -1394,7 +1394,7 @@ static void fill_auxv_note(struct memelfnote *note, struct mm_struct *mm)
 }
 
 static void fill_siginfo_note(struct memelfnote *note, user_siginfo_t *csigdata,
-               siginfo_t *siginfo)
+               const siginfo_t *siginfo)
 {
        mm_segment_t old_fs = get_fs();
        set_fs(KERNEL_DS);
index b685d3b..3d1a3af 100644 (file)
@@ -32,6 +32,6 @@ static inline void copy_siginfo(struct siginfo *to, struct siginfo *from)
 
 #endif
 
-extern int copy_siginfo_to_user(struct siginfo __user *to, struct siginfo *from);
+extern int copy_siginfo_to_user(struct siginfo __user *to, const struct siginfo *from);
 
 #endif
index df70600..afd3b3f 100644 (file)
@@ -361,7 +361,7 @@ long compat_get_bitmap(unsigned long *mask, const compat_ulong_t __user *umask,
 long compat_put_bitmap(compat_ulong_t __user *umask, unsigned long *mask,
                       unsigned long bitmap_size);
 int copy_siginfo_from_user32(siginfo_t *to, struct compat_siginfo __user *from);
-int copy_siginfo_to_user32(struct compat_siginfo __user *to, siginfo_t *from);
+int copy_siginfo_to_user32(struct compat_siginfo __user *to, const siginfo_t *from);
 int get_compat_sigevent(struct sigevent *event,
                const struct compat_sigevent __user *u_event);
 long compat_sys_rt_tgsigqueueinfo(compat_pid_t tgid, compat_pid_t pid, int sig,
index 50e4107..5db8e47 100644 (file)
@@ -2723,7 +2723,7 @@ COMPAT_SYSCALL_DEFINE2(rt_sigpending, compat_sigset_t __user *, uset,
 
 #ifndef HAVE_ARCH_COPY_SIGINFO_TO_USER
 
-int copy_siginfo_to_user(siginfo_t __user *to, siginfo_t *from)
+int copy_siginfo_to_user(siginfo_t __user *to, const siginfo_t *from)
 {
        int err;