err must be nonzero in order to reach text_poke(), which caused kgdb to
fail to set breakpoints:

        (gdb) break __x64_sys_sync
        Breakpoint 1 at 0xffffffff81288910: file ../fs/sync.c, line 124.
        (gdb) c
        Continuing.
        Warning:
        Cannot insert breakpoint 1.
        Cannot access memory at address 0xffffffff81288910

        Command aborted.

Fixes: 86a22057127d ("x86/kgdb: Avoid redundant comparison of patched code")
Signed-off-by: Matt Mullins <mmull...@fb.com>
---
 arch/x86/kernel/kgdb.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/kernel/kgdb.c b/arch/x86/kernel/kgdb.c
index 9a8c1648fc9a..6690c5652aeb 100644
--- a/arch/x86/kernel/kgdb.c
+++ b/arch/x86/kernel/kgdb.c
@@ -758,7 +758,7 @@ int kgdb_arch_set_breakpoint(struct kgdb_bkpt *bpt)
                       BREAK_INSTR_SIZE);
        bpt->type = BP_POKE_BREAKPOINT;
 
-       return err;
+       return 0;
 }
 
 int kgdb_arch_remove_breakpoint(struct kgdb_bkpt *bpt)
-- 
2.17.1

Reply via email to