hc
2023-12-11 6778948f9de86c3cfaf36725a7c87dcff9ba247f
kernel/arch/x86/um/signal.c
....@@ -367,7 +367,7 @@
367367 /* This is the same calculation as i386 - ((sp + 4) & 15) == 0 */
368368 stack_top = ((stack_top + 4) & -16UL) - 4;
369369 frame = (struct sigframe __user *) stack_top - 1;
370
- if (!access_ok(VERIFY_WRITE, frame, sizeof(*frame)))
370
+ if (!access_ok(frame, sizeof(*frame)))
371371 return 1;
372372
373373 restorer = frame->retcode;
....@@ -412,7 +412,7 @@
412412
413413 stack_top &= -8UL;
414414 frame = (struct rt_sigframe __user *) stack_top - 1;
415
- if (!access_ok(VERIFY_WRITE, frame, sizeof(*frame)))
415
+ if (!access_ok(frame, sizeof(*frame)))
416416 return 1;
417417
418418 restorer = frame->retcode;
....@@ -471,7 +471,7 @@
471471 return PT_REGS_SYSCALL_RET(&current->thread.regs);
472472
473473 segfault:
474
- force_sig(SIGSEGV, current);
474
+ force_sig(SIGSEGV);
475475 return 0;
476476 }
477477
....@@ -497,7 +497,7 @@
497497 /* Subtract 128 for a red zone and 8 for proper alignment */
498498 frame = (struct rt_sigframe __user *) ((unsigned long) frame - 128 - 8);
499499
500
- if (!access_ok(VERIFY_WRITE, frame, sizeof(*frame)))
500
+ if (!access_ok(frame, sizeof(*frame)))
501501 goto out;
502502
503503 if (ksig->ka.sa.sa_flags & SA_SIGINFO) {
....@@ -577,6 +577,6 @@
577577 return PT_REGS_SYSCALL_RET(&current->thread.regs);
578578
579579 segfault:
580
- force_sig(SIGSEGV, current);
580
+ force_sig(SIGSEGV);
581581 return 0;
582582 }