Re: [PATCH v3] ia64: fix module loading for gcc-5.4

2017-04-29 Thread Sergei Trofimovich
On Sat, 8 Apr 2017 20:53:18 +0100 Sergei Trofimovich wrote: > Starting from gcc-5.4+ gcc generates MLX > instructions in more cases to refer local > symbols: > https://gcc.gnu.org/PR60465 > > That caused ia64 module loader to choke > on such instructions: > fuse:

Re: [PATCH v3] ia64: fix module loading for gcc-5.4

2017-04-29 Thread Sergei Trofimovich
On Sat, 8 Apr 2017 20:53:18 +0100 Sergei Trofimovich wrote: > Starting from gcc-5.4+ gcc generates MLX > instructions in more cases to refer local > symbols: > https://gcc.gnu.org/PR60465 > > That caused ia64 module loader to choke > on such instructions: > fuse: invalid slot number 1

Re: [PATCH v3] ia64: fix module loading for gcc-5.4+

2017-04-10 Thread Sergei Trofimovich
On Mon, 10 Apr 2017 19:23:28 +0200 SF Markus Elfring wrote: > > - if (slot(insn) != 2) { > > + if (slot(insn) != 1 && slot(insn) != 2) { > > + int const s = slot(insn); > + if (s < 1 || s > 2) { > > Do run time characteristics matter for such a

Re: [PATCH v3] ia64: fix module loading for gcc-5.4+

2017-04-10 Thread Sergei Trofimovich
On Mon, 10 Apr 2017 19:23:28 +0200 SF Markus Elfring wrote: > > - if (slot(insn) != 2) { > > + if (slot(insn) != 1 && slot(insn) != 2) { > > + int const s = slot(insn); > + if (s < 1 || s > 2) { > > Do run time characteristics matter for such a condition check here? It's done

Re: [PATCH v3] ia64: fix module loading for gcc-5.4+

2017-04-10 Thread SF Markus Elfring
> +++ b/arch/ia64/kernel/module.c > @@ -153,7 +153,7 @@ slot (const struct insn *insn) > static int > apply_imm64 (struct module *mod, struct insn *insn, uint64_t val) > { I have got another idea (after your clarification) for the suggested change. > - if (slot(insn) != 2) { > + if

Re: [PATCH v3] ia64: fix module loading for gcc-5.4+

2017-04-10 Thread SF Markus Elfring
> +++ b/arch/ia64/kernel/module.c > @@ -153,7 +153,7 @@ slot (const struct insn *insn) > static int > apply_imm64 (struct module *mod, struct insn *insn, uint64_t val) > { I have got another idea (after your clarification) for the suggested change. > - if (slot(insn) != 2) { > + if

Re: [PATCH v3] ia64: fix module loading for gcc-5.4

2017-04-09 Thread Sergei Trofimovich
On Sun, 9 Apr 2017 10:27:52 +0200 SF Markus Elfring wrote: > > That caused ia64 module loader to choke > > on such instructions: > > fuse: invalid slot number 1 for IMM64 > > Why does it matter to check such a value? I'm not sure I follow the question. Is

Re: [PATCH v3] ia64: fix module loading for gcc-5.4

2017-04-09 Thread Sergei Trofimovich
On Sun, 9 Apr 2017 10:27:52 +0200 SF Markus Elfring wrote: > > That caused ia64 module loader to choke > > on such instructions: > > fuse: invalid slot number 1 for IMM64 > > Why does it matter to check such a value? I'm not sure I follow the question. Is your question about linux kernel

Re: [PATCH v3] ia64: fix module loading for gcc-5.4

2017-04-09 Thread SF Markus Elfring
> Starting from gcc-5.4+ gcc generates MLX How do you think about to omit the plus character? > instructions in more cases to refer local > symbols: I wonder about your choice of a line length limit here. > That caused ia64 module loader to choke > on such instructions: > fuse: invalid

Re: [PATCH v3] ia64: fix module loading for gcc-5.4

2017-04-09 Thread SF Markus Elfring
> Starting from gcc-5.4+ gcc generates MLX How do you think about to omit the plus character? > instructions in more cases to refer local > symbols: I wonder about your choice of a line length limit here. > That caused ia64 module loader to choke > on such instructions: > fuse: invalid