* [PATCH] s390 signal annotations
@ 2005-09-28 23:16 Al Viro
0 siblings, 0 replies; only message in thread
From: Al Viro @ 2005-09-28 23:16 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, schwidefsky
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
----
diff -urN RC14-rc2-git6-mv64x60/arch/s390/kernel/compat_signal.c RC14-rc2-git6-s390-signal/arch/s390/kernel/compat_signal.c
--- RC14-rc2-git6-mv64x60/arch/s390/kernel/compat_signal.c 2005-09-05 07:05:14.000000000 -0400
+++ RC14-rc2-git6-s390-signal/arch/s390/kernel/compat_signal.c 2005-09-28 13:02:23.000000000 -0400
@@ -143,7 +143,7 @@
break;
case __SI_FAULT >> 16:
err |= __get_user(tmp, &from->si_addr);
- to->si_addr = (void *)(u64) (tmp & PSW32_ADDR_INSN);
+ to->si_addr = (void __user *)(u64) (tmp & PSW32_ADDR_INSN);
break;
case __SI_POLL >> 16:
err |= __get_user(to->si_band, &from->si_band);
@@ -338,7 +338,7 @@
err |= __get_user(kss.ss_flags, &uss->ss_flags);
if (err)
return -EFAULT;
- kss.ss_sp = (void *) ss_sp;
+ kss.ss_sp = (void __user *) ss_sp;
}
set_fs (KERNEL_DS);
@@ -461,7 +461,7 @@
goto badframe;
err = __get_user(ss_sp, &frame->uc.uc_stack.ss_sp);
- st.ss_sp = (void *) A((unsigned long)ss_sp);
+ st.ss_sp = compat_ptr(ss_sp);
err |= __get_user(st.ss_size, &frame->uc.uc_stack.ss_size);
err |= __get_user(st.ss_flags, &frame->uc.uc_stack.ss_flags);
if (err)
diff -urN RC14-rc2-git6-mv64x60/arch/s390/kernel/signal.c RC14-rc2-git6-s390-signal/arch/s390/kernel/signal.c
--- RC14-rc2-git6-mv64x60/arch/s390/kernel/signal.c 2005-09-05 07:05:14.000000000 -0400
+++ RC14-rc2-git6-s390-signal/arch/s390/kernel/signal.c 2005-09-28 13:02:23.000000000 -0400
@@ -376,8 +376,8 @@
/* Create the ucontext. */
err |= __put_user(0, &frame->uc.uc_flags);
- err |= __put_user(0, &frame->uc.uc_link);
- err |= __put_user((void *)current->sas_ss_sp, &frame->uc.uc_stack.ss_sp);
+ err |= __put_user(NULL, &frame->uc.uc_link);
+ err |= __put_user((void __user *)current->sas_ss_sp, &frame->uc.uc_stack.ss_sp);
err |= __put_user(sas_ss_flags(regs->gprs[15]),
&frame->uc.uc_stack.ss_flags);
err |= __put_user(current->sas_ss_size, &frame->uc.uc_stack.ss_size);
diff -urN RC14-rc2-git6-mv64x60/include/asm-s390/sigcontext.h RC14-rc2-git6-s390-signal/include/asm-s390/sigcontext.h
--- RC14-rc2-git6-mv64x60/include/asm-s390/sigcontext.h 2005-06-17 15:48:29.000000000 -0400
+++ RC14-rc2-git6-s390-signal/include/asm-s390/sigcontext.h 2005-09-28 13:02:23.000000000 -0400
@@ -61,7 +61,7 @@
struct sigcontext
{
unsigned long oldmask[_SIGCONTEXT_NSIG_WORDS];
- _sigregs *sregs;
+ _sigregs __user *sregs;
};
diff -urN RC14-rc2-git6-mv64x60/include/asm-s390/signal.h RC14-rc2-git6-s390-signal/include/asm-s390/signal.h
--- RC14-rc2-git6-mv64x60/include/asm-s390/signal.h 2005-06-17 15:48:29.000000000 -0400
+++ RC14-rc2-git6-s390-signal/include/asm-s390/signal.h 2005-09-28 13:02:23.000000000 -0400
@@ -165,7 +165,7 @@
#endif /* __KERNEL__ */
typedef struct sigaltstack {
- void *ss_sp;
+ void __user *ss_sp;
int ss_flags;
size_t ss_size;
} stack_t;
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2005-09-28 23:16 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-09-28 23:16 [PATCH] s390 signal annotations Al Viro
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.