diff options
| -rw-r--r-- | arch/mips/math-emu/cp1emu.c | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/arch/mips/math-emu/cp1emu.c b/arch/mips/math-emu/cp1emu.c index 99ffaa3d52b6..c4a7853c5714 100644 --- a/arch/mips/math-emu/cp1emu.c +++ b/arch/mips/math-emu/cp1emu.c | |||
| @@ -209,7 +209,7 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_soft_struct *ctx) | |||
| 209 | void * emulpc, *contpc; | 209 | void * emulpc, *contpc; |
| 210 | unsigned int cond; | 210 | unsigned int cond; |
| 211 | 211 | ||
| 212 | if (get_user(ir, (mips_instruction *) xcp->cp0_epc)) { | 212 | if (get_user(ir, (mips_instruction __user *) xcp->cp0_epc)) { |
| 213 | fpuemustats.errors++; | 213 | fpuemustats.errors++; |
| 214 | return SIGBUS; | 214 | return SIGBUS; |
| 215 | } | 215 | } |
| @@ -240,7 +240,7 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_soft_struct *ctx) | |||
| 240 | #endif | 240 | #endif |
| 241 | return SIGILL; | 241 | return SIGILL; |
| 242 | } | 242 | } |
| 243 | if (get_user(ir, (mips_instruction *) emulpc)) { | 243 | if (get_user(ir, (mips_instruction __user *) emulpc)) { |
| 244 | fpuemustats.errors++; | 244 | fpuemustats.errors++; |
| 245 | return SIGBUS; | 245 | return SIGBUS; |
| 246 | } | 246 | } |
| @@ -258,7 +258,7 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_soft_struct *ctx) | |||
| 258 | switch (MIPSInst_OPCODE(ir)) { | 258 | switch (MIPSInst_OPCODE(ir)) { |
| 259 | #ifndef SINGLE_ONLY_FPU | 259 | #ifndef SINGLE_ONLY_FPU |
| 260 | case ldc1_op:{ | 260 | case ldc1_op:{ |
| 261 | u64 *va = (void *) (xcp->regs[MIPSInst_RS(ir)] + | 261 | u64 __user *va = (u64 __user *) (xcp->regs[MIPSInst_RS(ir)] + |
| 262 | MIPSInst_SIMM(ir)); | 262 | MIPSInst_SIMM(ir)); |
| 263 | u64 val; | 263 | u64 val; |
| 264 | 264 | ||
| @@ -272,7 +272,7 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_soft_struct *ctx) | |||
| 272 | } | 272 | } |
| 273 | 273 | ||
| 274 | case sdc1_op:{ | 274 | case sdc1_op:{ |
| 275 | u64 *va = (void *) (xcp->regs[MIPSInst_RS(ir)] + | 275 | u64 __user *va = (u64 __user *) (xcp->regs[MIPSInst_RS(ir)] + |
| 276 | MIPSInst_SIMM(ir)); | 276 | MIPSInst_SIMM(ir)); |
| 277 | u64 val; | 277 | u64 val; |
| 278 | 278 | ||
| @@ -287,7 +287,7 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_soft_struct *ctx) | |||
| 287 | #endif | 287 | #endif |
| 288 | 288 | ||
| 289 | case lwc1_op:{ | 289 | case lwc1_op:{ |
| 290 | u32 *va = (void *) (xcp->regs[MIPSInst_RS(ir)] + | 290 | u32 __user *va = (u32 __user *) (xcp->regs[MIPSInst_RS(ir)] + |
| 291 | MIPSInst_SIMM(ir)); | 291 | MIPSInst_SIMM(ir)); |
| 292 | u32 val; | 292 | u32 val; |
| 293 | 293 | ||
| @@ -307,7 +307,7 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_soft_struct *ctx) | |||
| 307 | } | 307 | } |
| 308 | 308 | ||
| 309 | case swc1_op:{ | 309 | case swc1_op:{ |
| 310 | u32 *va = (void *) (xcp->regs[MIPSInst_RS(ir)] + | 310 | u32 __user *va = (u32 __user *) (xcp->regs[MIPSInst_RS(ir)] + |
| 311 | MIPSInst_SIMM(ir)); | 311 | MIPSInst_SIMM(ir)); |
| 312 | u32 val; | 312 | u32 val; |
| 313 | 313 | ||
| @@ -458,8 +458,8 @@ static int cop1Emulate(struct pt_regs *xcp, struct mips_fpu_soft_struct *ctx) | |||
| 458 | (xcp->cp0_epc + | 458 | (xcp->cp0_epc + |
| 459 | (MIPSInst_SIMM(ir) << 2)); | 459 | (MIPSInst_SIMM(ir) << 2)); |
| 460 | 460 | ||
| 461 | if (get_user(ir, (mips_instruction *) | 461 | if (get_user(ir, |
| 462 | (void *) xcp->cp0_epc)) { | 462 | (mips_instruction __user *) xcp->cp0_epc)) { |
| 463 | fpuemustats.errors++; | 463 | fpuemustats.errors++; |
| 464 | return SIGBUS; | 464 | return SIGBUS; |
| 465 | } | 465 | } |
| @@ -633,12 +633,12 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_soft_struct *ctx, | |||
| 633 | 633 | ||
| 634 | ieee754sp(*handler) (ieee754sp, ieee754sp, ieee754sp); | 634 | ieee754sp(*handler) (ieee754sp, ieee754sp, ieee754sp); |
| 635 | ieee754sp fd, fr, fs, ft; | 635 | ieee754sp fd, fr, fs, ft; |
| 636 | u32 *va; | 636 | u32 __user *va; |
| 637 | u32 val; | 637 | u32 val; |
| 638 | 638 | ||
| 639 | switch (MIPSInst_FUNC(ir)) { | 639 | switch (MIPSInst_FUNC(ir)) { |
| 640 | case lwxc1_op: | 640 | case lwxc1_op: |
| 641 | va = (void *) (xcp->regs[MIPSInst_FR(ir)] + | 641 | va = (void __user *) (xcp->regs[MIPSInst_FR(ir)] + |
| 642 | xcp->regs[MIPSInst_FT(ir)]); | 642 | xcp->regs[MIPSInst_FT(ir)]); |
| 643 | 643 | ||
| 644 | fpuemustats.loads++; | 644 | fpuemustats.loads++; |
| @@ -658,7 +658,7 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_soft_struct *ctx, | |||
| 658 | break; | 658 | break; |
| 659 | 659 | ||
| 660 | case swxc1_op: | 660 | case swxc1_op: |
| 661 | va = (void *) (xcp->regs[MIPSInst_FR(ir)] + | 661 | va = (void __user *) (xcp->regs[MIPSInst_FR(ir)] + |
| 662 | xcp->regs[MIPSInst_FT(ir)]); | 662 | xcp->regs[MIPSInst_FT(ir)]); |
| 663 | 663 | ||
| 664 | fpuemustats.stores++; | 664 | fpuemustats.stores++; |
| @@ -727,12 +727,12 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_soft_struct *ctx, | |||
| 727 | case d_fmt:{ /* 1 */ | 727 | case d_fmt:{ /* 1 */ |
| 728 | ieee754dp(*handler) (ieee754dp, ieee754dp, ieee754dp); | 728 | ieee754dp(*handler) (ieee754dp, ieee754dp, ieee754dp); |
| 729 | ieee754dp fd, fr, fs, ft; | 729 | ieee754dp fd, fr, fs, ft; |
| 730 | u64 *va; | 730 | u64 __user *va; |
| 731 | u64 val; | 731 | u64 val; |
| 732 | 732 | ||
| 733 | switch (MIPSInst_FUNC(ir)) { | 733 | switch (MIPSInst_FUNC(ir)) { |
| 734 | case ldxc1_op: | 734 | case ldxc1_op: |
| 735 | va = (void *) (xcp->regs[MIPSInst_FR(ir)] + | 735 | va = (void __user *) (xcp->regs[MIPSInst_FR(ir)] + |
| 736 | xcp->regs[MIPSInst_FT(ir)]); | 736 | xcp->regs[MIPSInst_FT(ir)]); |
| 737 | 737 | ||
| 738 | fpuemustats.loads++; | 738 | fpuemustats.loads++; |
| @@ -744,7 +744,7 @@ static int fpux_emu(struct pt_regs *xcp, struct mips_fpu_soft_struct *ctx, | |||
| 744 | break; | 744 | break; |
| 745 | 745 | ||
| 746 | case sdxc1_op: | 746 | case sdxc1_op: |
| 747 | va = (void *) (xcp->regs[MIPSInst_FR(ir)] + | 747 | va = (void __user *) (xcp->regs[MIPSInst_FR(ir)] + |
| 748 | xcp->regs[MIPSInst_FT(ir)]); | 748 | xcp->regs[MIPSInst_FT(ir)]); |
| 749 | 749 | ||
| 750 | fpuemustats.stores++; | 750 | fpuemustats.stores++; |
| @@ -1298,7 +1298,7 @@ int fpu_emulator_cop1Handler(struct pt_regs *xcp, | |||
| 1298 | do { | 1298 | do { |
| 1299 | prevepc = xcp->cp0_epc; | 1299 | prevepc = xcp->cp0_epc; |
| 1300 | 1300 | ||
| 1301 | if (get_user(insn, (mips_instruction *) xcp->cp0_epc)) { | 1301 | if (get_user(insn, (mips_instruction __user *) xcp->cp0_epc)) { |
| 1302 | fpuemustats.errors++; | 1302 | fpuemustats.errors++; |
| 1303 | return SIGBUS; | 1303 | return SIGBUS; |
| 1304 | } | 1304 | } |
