Loading arch/um/sys-i386/signal.c +1 −1 Original line number Diff line number Diff line Loading @@ -122,9 +122,9 @@ int copy_sc_from_user_tt(struct sigcontext *to, struct sigcontext *from, int err; to_fp = to->fpstate; from_fp = from->fpstate; sigs = to->oldmask; err = copy_from_user(to, from, sizeof(*to)); from_fp = to->fpstate; to->oldmask = sigs; to->fpstate = to_fp; if(to_fp != NULL) Loading arch/um/sys-x86_64/signal.c +24 −17 Original line number Diff line number Diff line Loading @@ -109,10 +109,13 @@ int copy_sc_from_user_tt(struct sigcontext *to, struct sigcontext *from, int err; to_fp = to->fpstate; from_fp = from->fpstate; sigs = to->oldmask; err = copy_from_user(to, from, sizeof(*to)); from_fp = to->fpstate; to->fpstate = to_fp; to->oldmask = sigs; if(to_fp != NULL) err |= copy_from_user(to_fp, from_fp, fpsize); return(err); } Loading @@ -125,6 +128,10 @@ int copy_sc_to_user_tt(struct sigcontext *to, struct _fpstate *fp, to_fp = (fp ? fp : (struct _fpstate *) (to + 1)); from_fp = from->fpstate; err = copy_to_user(to, from, sizeof(*to)); if(from_fp != NULL){ err |= copy_to_user(&to->fpstate, &to_fp, sizeof(to->fpstate)); err |= copy_to_user(to_fp, from_fp, fpsize); } return(err); } Loading Loading
arch/um/sys-i386/signal.c +1 −1 Original line number Diff line number Diff line Loading @@ -122,9 +122,9 @@ int copy_sc_from_user_tt(struct sigcontext *to, struct sigcontext *from, int err; to_fp = to->fpstate; from_fp = from->fpstate; sigs = to->oldmask; err = copy_from_user(to, from, sizeof(*to)); from_fp = to->fpstate; to->oldmask = sigs; to->fpstate = to_fp; if(to_fp != NULL) Loading
arch/um/sys-x86_64/signal.c +24 −17 Original line number Diff line number Diff line Loading @@ -109,10 +109,13 @@ int copy_sc_from_user_tt(struct sigcontext *to, struct sigcontext *from, int err; to_fp = to->fpstate; from_fp = from->fpstate; sigs = to->oldmask; err = copy_from_user(to, from, sizeof(*to)); from_fp = to->fpstate; to->fpstate = to_fp; to->oldmask = sigs; if(to_fp != NULL) err |= copy_from_user(to_fp, from_fp, fpsize); return(err); } Loading @@ -125,6 +128,10 @@ int copy_sc_to_user_tt(struct sigcontext *to, struct _fpstate *fp, to_fp = (fp ? fp : (struct _fpstate *) (to + 1)); from_fp = from->fpstate; err = copy_to_user(to, from, sizeof(*to)); if(from_fp != NULL){ err |= copy_to_user(&to->fpstate, &to_fp, sizeof(to->fpstate)); err |= copy_to_user(to_fp, from_fp, fpsize); } return(err); } Loading