Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 4 Sep 2018 20:18:29 +0200
From:      Vincenzo Maffione <v.maffione@gmail.com>
To:        Marko Zec <zec@fer.hr>, Luigi Rizzo <rizzo@iet.unipi.it>,  "freebsd-net@freebsd.org" <net@freebsd.org>
Subject:   Re: vale and netmap module questions
Message-ID:  <CA%2B_eA9jp2rB0GjojNrbWuQJ3fChpF6U5KPOX-DvEzJDVzOSP4w@mail.gmail.com>
In-Reply-To: <20180904162815.GA75530@funkthat.com>
References:  <20180901014953.GV45503@funkthat.com> <CA%2B_eA9gH_uzxV_YLBH1XdM-ygPUxXzD_W9_b45jTmeY-t0bQKg@mail.gmail.com> <20180901211123.GZ45503@funkthat.com> <20180904164303.68c43b6e@x23> <20180904162815.GA75530@funkthat.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi,
  I don't think the panic depends on the architecture. Also, it does not
depend on using emulated mode or not.
We have seen this happening on x86_64 on FreeBSD 12 head.

As John-Mark says, kdloading netmap.ko is not enough. You need to open a
netmap port corresponding
to any network interface, e.g.
 # pkt-gen -i eth0
because this will trigger ifunit_ref() in the kernel (netmap tries to grab
the interface called "eth0").
The ifunit_ref() panics and we still need to figure out why.

Cheers,
  Vincenzo


Il giorno mar 4 set 2018 alle ore 18:28 John-Mark Gurney <jmg@funkthat.com>
ha scritto:

> Marko Zec wrote this message on Tue, Sep 04, 2018 at 16:43 +0200:
> > On Sat, 1 Sep 2018 14:11:23 -0700
> > John-Mark Gurney <jmg@funkthat.com> wrote:
> > > Vincenzo Maffione wrote this message on Sat, Sep 01, 2018 at 22:25
> > > +0200:
> > ...
> > > > On x86_64 netmap is not built as a module, so everything works
> > > > fine. I don't see any reason why it should be a module in aarch64.
> > >
> > > Well, sys/modules/netmap exists... If it isn't planned on ever being
> > > made to work, it should be removed so people don't get confused, or
> > > at least marked broken so it doesn't get built...
> > >
> > > I built it manually because it was quicker than recompiling an entire
> > > kernel and rebooting...
> >
> > Hi John-Mark,
> >
> > out of curiosity I tested all four kernel config combinations with
> > "device netmap" and "options VIMAGE" being on and off (both are on by
> > default now in GENERIC) on amd64 @r338446, and found that kldloading
> > netmap.ko can't provoke a panic.  Was there a particular sequence of
> > commands issued after kldloading netmap which led to the crash you
> > reported earlier?
>
> Nope.  I would kldload netmap, and then run the tcpdump command listed
> in the original report, and it would just panic...
>
> Also note that my panic was on arm64, NOT amd64.. so it could be
> something platform specific...
>
> > Nevertheless, note that building the kernel without "device netmap" is
> > borderline pointless even if netmap core built as a kld module works, as
> > this will result in all the drivers being built without the required
> > netmap bits, which means they will only work in the painfully slow
> > "emulation" mode with netmap.
>
> I was only doing it to test something out quickly..
>
> > Perhaps the panic you stepped into was related to the emulation mode
> > being used with netmap, instead of using the native netmap hooks in
> > device drivers?  Or maybe was it vale + VNET related?
>
> All I know was that it was the arm64 GENERIC kernel + module netmap
> + running tcpdump w/ that command...  Nothing special configured, just
> a single ethernet interface configured w/ DHCP.  No firewall configured,
> just sshd and ntpd enabled..
>
> --
>   John-Mark Gurney                              Voice: +1 415 225 5579
>
>      "All that I will do, has been done, All that I have, has not."
>


-- 
Vincenzo



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CA%2B_eA9jp2rB0GjojNrbWuQJ3fChpF6U5KPOX-DvEzJDVzOSP4w>