Lines Matching defs:patch_addr
23 static int __patch_mem(void *exec_addr, unsigned long val, void *patch_addr, bool is_dword)
29 __put_kernel_nofault(patch_addr, &val32, u32, failed);
31 __put_kernel_nofault(patch_addr, &val, u64, failed);
34 asm ("dcbst 0, %0; sync; icbi 0,%1; sync; isync" :: "r" (patch_addr),
236 u32 *patch_addr;
246 patch_addr = (u32 *)(text_poke_addr + offset_in_page(addr));
262 err = __patch_mem(addr, val, patch_addr, is_dword);
282 u32 *patch_addr;
288 patch_addr = (u32 *)(text_poke_addr + offset_in_page(addr));
296 err = __patch_mem(addr, val, patch_addr, is_dword);
389 static int __patch_instructions(u32 *patch_addr, u32 *code, size_t len, bool repeat_instr)
391 unsigned long start = (unsigned long)patch_addr;
401 err = patch_memset64((u64 *)patch_addr, val, len / 8);
405 err = patch_memset32(patch_addr, val, len / 4);
408 err = copy_to_kernel_nofault(patch_addr, code, len);
426 u32 *patch_addr;
432 patch_addr = (u32 *)(text_poke_addr + offset_in_page(addr));
449 err = __patch_instructions(patch_addr, code, len, repeat_instr);
475 u32 *patch_addr;
480 patch_addr = (u32 *)(text_poke_addr + offset_in_page(addr));
488 err = __patch_instructions(patch_addr, code, len, repeat_instr);