linux-m68k.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [ragnatech:net-next 317/356] {standard input}:3148: Error: operands mismatch -- statement `andl %a1,%d1' ignored
       [not found] ` <CA+i-1C19Fdas5PBLYwkD-+265gyEYbEaRkMKuD9t6PXsLr20YQ@mail.gmail.com>
@ 2021-01-18 12:19   ` Brendan Jackman
  0 siblings, 0 replies; only message in thread
From: Brendan Jackman @ 2021-01-18 12:19 UTC (permalink / raw)
  To: kernel test robot, Geert Uytterhoeven, linux-m68k
  Cc: kbuild-all, Alexei Starovoitov

On Mon, 18 Jan 2021 at 12:53, Brendan Jackman <jackmanb@google.com> wrote:
>
> I copied in the attached config, installed the m68k toolchain:
>
> sudo apt install gcc-m68k-linux-gnu  # (m68k-linux-gnu-gcc (Debian
> 10.2.0-9) 10.2.0)
>
> Built with:
>
> CROSS_COMPILE=m68k-linux-gnu- ARCH=m68k make -j
>
> And I get this "needs 68020 or higher" error from all over the kernel
> tree. Sounds like a Kbuild bug to me, I will ignore it if you're OK
> with that.

Sorry, that's nonsense, this email is complaining about "Error:
operands mismatch", not "needs 68020 or higher".

> On Sat, 16 Jan 2021 at 09:20, kernel test robot <lkp@intel.com> wrote:
> >
> > tree:   git://git.ragnatech.se/linux net-next
> > head:   9ab7e76aefc97a9aa664accb59d6e8dc5e52514a
> > commit: 981f94c3e92146705baf97fb417a5ed1ab1a79a5 [317/356] bpf: Add bitwise atomic instructions
> > config: m68k-randconfig-r002-20210115 (attached as .config)
> > compiler: m68k-linux-gcc (GCC) 9.3.0
> > reproduce (this is a W=1 build):
> >         wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> >         chmod +x ~/bin/make.cross
> >         git remote add ragnatech git://git.ragnatech.se/linux
> >         git fetch --no-tags ragnatech net-next
> >         git checkout 981f94c3e92146705baf97fb417a5ed1ab1a79a5
> >         # save the attached .config to linux build tree
> >         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=m68k
> >
> > If you fix the issue, kindly add following tag as appropriate
> > Reported-by: kernel test robot <lkp@intel.com>
> >
> > All errors (new ones prefixed by >>):
> >
> >    kernel/bpf/core.c:1350:12: warning: no previous prototype for 'bpf_probe_read_kernel' [-Wmissing-prototypes]
> >     1350 | u64 __weak bpf_probe_read_kernel(void *dst, u32 size, const void *unsafe_ptr)
> >          |            ^~~~~~~~~~~~~~~~~~~~~
> >    {standard input}: Assembler messages:
> >    {standard input}:3102: Error: invalid instruction for this architecture; needs 68020 or higher (68020 [68k, 68ec020], 68030 [68ec030], 68040 [68ec040], 68060 [68ec060]) -- statement `casl %d0,%d1,(%a6)' ignored
> > >> {standard input}:3148: Error: operands mismatch -- statement `andl %a1,%d1' ignored
> >    {standard input}:3148: Error: invalid instruction for this architecture; needs 68020 or higher (68020 [68k, 68ec020], 68030 [68ec030], 68040 [68ec040], 68060 [68ec060]) -- statement `casl %d0,%d1,(%a6)' ignored
> > >> {standard input}:3201: Error: operands mismatch -- statement `orl %a1,%d1' ignored
> >    {standard input}:3201: Error: invalid instruction for this architecture; needs 68020 or higher (68020 [68k, 68ec020], 68030 [68ec030], 68040 [68ec040], 68060 [68ec060]) -- statement `casl %d0,%d1,(%a6)' ignored
> > >> {standard input}:3247: Error: operands mismatch -- statement `eorl %a1,%d1' ignored
> >    {standard input}:3247: Error: invalid instruction for this architecture; needs 68020 or higher (68020 [68k, 68ec020], 68030 [68ec030], 68040 [68ec040], 68060 [68ec060]) -- statement `casl %d0,%d1,(%a6)' ignored
> >    {standard input}:3270: Error: invalid instruction for this architecture; needs 68020 or higher (68020 [68k, 68ec020], 68030 [68ec030], 68040 [68ec040], 68060 [68ec060]) -- statement `casl %d0,%d5,(%a0)' ignored
> >    {standard input}:3307: Error: invalid instruction for this architecture; needs 68020 or higher (68020 [68k, 68ec020], 68030 [68ec030], 68040 [68ec040], 68060 [68ec060]) -- statement `casl %d0,%d5,(%a6)' ignored
> >

Did some fiddling to find where the error comes from and it is indeed
the new atomics code, specifically the ATOMIC_ALU_OP invocations, on
line 1645 [1]

I got a similar error from 0-day during development, in that case the
core issue seemed to be type casts that only made sense if pointers
were 64-bit. I think this is something different though:

The three errors are for the BPF_AND, BPF_OR and BPF_XOR invocations,
but the BPF_AND invocation doesn't produce the error. That makes me
think this might need some m68k knowledge... I added linux-m68k and
Geert from MAINTAINERS... any ideas?

[1] https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git/tree/kernel/bpf/core.c?id=981f94c3e92146705baf97fb417a5ed1ab1a79a5#n1645

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-01-18 12:25 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <202101161658.52rYf3KV-lkp@intel.com>
     [not found] ` <CA+i-1C19Fdas5PBLYwkD-+265gyEYbEaRkMKuD9t6PXsLr20YQ@mail.gmail.com>
2021-01-18 12:19   ` [ragnatech:net-next 317/356] {standard input}:3148: Error: operands mismatch -- statement `andl %a1,%d1' ignored Brendan Jackman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).