* Mike Rapoport <rppt@xxxxxxxxxx> wrote: > for (s = start; s < end; s++) { > void *addr = (void *)s + *s; > + void *wr_addr = addr + module_writable_offset(mod, addr); So instead of repeating this pattern in a dozen of places, why not use a simpler method: void *wr_addr = module_writable_address(mod, addr); or so, since we have to pass 'addr' to the module code anyway. The text patching code is pretty complex already. Thanks, Ingo