Message ID | 030d63848e4b0ef4d76ca24597ab8302a393d692.1544083483.git.christophe.leroy@c-s.fr (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | [v2,1/2] mips/kgdb: prepare arch_kgdb_ops for constness | expand |
On Thu, Dec 06, 2018 at 08:07:38PM +0000, Christophe Leroy wrote: > MIPS is the only architecture modifying arch_kgdb_ops during init. > This patch makes the init static, so that it can be changed to > const in following patch, as recommended by checkpatch.pl > > Suggested-by: Paul Burton <paul.burton@mips.com> > Acked-by: Daniel Thompson <daniel.thompson@linaro.org> > Acked-by: Paul Burton <paul.burton@mips.com> > Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr> Applied! Thanks. > - > --- > v2: Added acks from Daniel and Paul. > > arch/mips/kernel/kgdb.c | 16 +++++++--------- > 1 file changed, 7 insertions(+), 9 deletions(-) > > diff --git a/arch/mips/kernel/kgdb.c b/arch/mips/kernel/kgdb.c > index eb6c0d582626..31eff1bec577 100644 > --- a/arch/mips/kernel/kgdb.c > +++ b/arch/mips/kernel/kgdb.c > @@ -394,18 +394,16 @@ int kgdb_arch_handle_exception(int vector, int signo, int err_code, > return -1; > } > > -struct kgdb_arch arch_kgdb_ops; > +struct kgdb_arch arch_kgdb_ops = { > +#ifdef CONFIG_CPU_BIG_ENDIAN > + .gdb_bpt_instr = { spec_op << 2, 0x00, 0x00, break_op }, > +#else > + .gdb_bpt_instr = { break_op, 0x00, 0x00, spec_op << 2 }, > +#endif > +}; > > int kgdb_arch_init(void) > { > - union mips_instruction insn = { > - .r_format = { > - .opcode = spec_op, > - .func = break_op, > - } > - }; > - memcpy(arch_kgdb_ops.gdb_bpt_instr, insn.byte, BREAK_INSTR_SIZE); > - > register_die_notifier(&kgdb_notifier); > > return 0; > -- > 2.13.3 >
diff --git a/arch/mips/kernel/kgdb.c b/arch/mips/kernel/kgdb.c index eb6c0d582626..31eff1bec577 100644 --- a/arch/mips/kernel/kgdb.c +++ b/arch/mips/kernel/kgdb.c @@ -394,18 +394,16 @@ int kgdb_arch_handle_exception(int vector, int signo, int err_code, return -1; } -struct kgdb_arch arch_kgdb_ops; +struct kgdb_arch arch_kgdb_ops = { +#ifdef CONFIG_CPU_BIG_ENDIAN + .gdb_bpt_instr = { spec_op << 2, 0x00, 0x00, break_op }, +#else + .gdb_bpt_instr = { break_op, 0x00, 0x00, spec_op << 2 }, +#endif +}; int kgdb_arch_init(void) { - union mips_instruction insn = { - .r_format = { - .opcode = spec_op, - .func = break_op, - } - }; - memcpy(arch_kgdb_ops.gdb_bpt_instr, insn.byte, BREAK_INSTR_SIZE); - register_die_notifier(&kgdb_notifier); return 0;