.. | .. |
---|
44 | 44 | if (pc == 0 || pc >= TASK_SIZE || ufn(&frame, data)) |
---|
45 | 45 | return; |
---|
46 | 46 | |
---|
| 47 | + if (IS_ENABLED(CONFIG_USER_ABI_CALL0_ONLY) || |
---|
| 48 | + (IS_ENABLED(CONFIG_USER_ABI_CALL0_PROBE) && |
---|
| 49 | + !(regs->ps & PS_WOE_MASK))) |
---|
| 50 | + return; |
---|
| 51 | + |
---|
47 | 52 | /* Two steps: |
---|
48 | 53 | * |
---|
49 | 54 | * 1. Look through the register window for the |
---|
.. | .. |
---|
91 | 96 | pc = MAKE_PC_FROM_RA(a0, pc); |
---|
92 | 97 | |
---|
93 | 98 | /* Check if the region is OK to access. */ |
---|
94 | | - if (!access_ok(VERIFY_READ, &SPILL_SLOT(a1, 0), 8)) |
---|
| 99 | + if (!access_ok(&SPILL_SLOT(a1, 0), 8)) |
---|
95 | 100 | return; |
---|
96 | 101 | /* Copy a1, a0 from user space stack frame. */ |
---|
97 | 102 | if (__get_user(a0, &SPILL_SLOT(a1, 0)) || |
---|