Lines Matching defs:len

22 	size_t len;
69 static int __patch_insn_set(void *addr, u8 c, size_t len)
71 bool across_pages = (offset_in_page(addr) + len) > PAGE_SIZE;
77 if (len + offset_in_page(addr) > 2 * PAGE_SIZE)
93 memset(waddr, c, len);
101 (unsigned long)waddr + len);
114 static int __patch_insn_write(void *addr, const void *insn, size_t len)
116 bool across_pages = (offset_in_page(addr) + len) > PAGE_SIZE;
123 if (len + offset_in_page(addr) > 2 * PAGE_SIZE)
147 ret = copy_to_kernel_nofault(waddr, insn, len);
155 (unsigned long)waddr + len);
168 static int __patch_insn_set(void *addr, u8 c, size_t len)
170 memset(addr, c, len);
176 static int __patch_insn_write(void *addr, const void *insn, size_t len)
178 return copy_to_kernel_nofault(addr, insn, len);
183 static int patch_insn_set(void *addr, u8 c, size_t len)
190 * loop with len <= 2 * PAGE_SIZE.
192 while (len) {
193 size = min(len, PAGE_SIZE * 2 - offset_in_page(addr));
199 len -= size;
206 int patch_text_set_nosync(void *addr, u8 c, size_t len)
210 ret = patch_insn_set(addr, c, len);
212 flush_icache_range((uintptr_t)addr, (uintptr_t)addr + len);
218 int patch_insn_write(void *addr, const void *insn, size_t len)
225 * because __patch_insn_write() can only handle len <= 2 * PAGE_SIZE.
227 while (len) {
228 size = min(len, PAGE_SIZE * 2 - offset_in_page(addr));
235 len -= size;
242 int patch_text_nosync(void *addr, const void *insns, size_t len)
246 ret = patch_insn_write(addr, insns, len);
248 flush_icache_range((uintptr_t)addr, (uintptr_t)addr + len);
260 ret = patch_insn_write(patch->addr, patch->insns, patch->len);
280 int patch_text(void *addr, u32 *insns, size_t len)
286 .len = len,