Date: Mon, 11 Apr 2016 15:09:30 -0700 From: Matt Joras <matt.joras@gmail.com> To: "K. Macy" <kmacy@freebsd.org> Cc: Jack Vogel <jfvogel@gmail.com>, FreeBSD Net <freebsd-net@freebsd.org> Subject: Re: Question on sysctl tree handling Message-ID: <CADdTf%2BjD4ncCNjL67BgTH_SUtuw%2BDg4J0ttEVHOWTjvTuv1dNQ@mail.gmail.com> In-Reply-To: <CAHM0Q_NNAb6K499p-mhThOdW4u68VywRAsJCwd2_HL_46D8g7w@mail.gmail.com> References: <CAFOYbcnufB18%2B94RYW2e7cE_uaEOvGW=pNgOVxyPdhgZoksSyg@mail.gmail.com> <CAFOYbcmgEt7jYvDSxCJ-ZPcdN8n6n2GdSGXGzMpHaQ2szskwmg@mail.gmail.com> <CAHM0Q_NNAb6K499p-mhThOdW4u68VywRAsJCwd2_HL_46D8g7w@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Expanding on what mmacy said... I don't think the benefits of "easy reconfiguration" are worth the headaches you're going to potentially run into in production. bxe(4) used to do this, and it caused us a lot of problems (i.e. panics) at $DAY_JOB. For example, if a lagg was on top of bxe and then you downed bxe you could very easily hit a use-after-free since bxe free'd its rings while if_lagg is trying to transmit a packet. Matt Joras On Mon, Apr 11, 2016 at 2:03 PM, K. Macy <kmacy@freebsd.org> wrote: > You do understand that init needs to be run every time interface > settings are changed (TSO / PROMISC / CSUM/ etc)? Reallocating queues > and interrupts every time is fragile (long running systems can run low > on contiguous memory) and, in the common case that you're not actually > changing the number, gratuitous. > > Cheers. > -M > > On Fri, Apr 8, 2016 at 2:56 PM, Jack Vogel <jfvogel@gmail.com> wrote: >> LOL, why does it seem that as soon as I ask the answer hits me in the nose >> :) >> >> I found the sysctl_ctx_free call, sorry for the noise.... >> >> Jack >> >> >> On Fri, Apr 8, 2016 at 2:51 PM, Jack Vogel <jfvogel@gmail.com> wrote: >> >>> >>> I have a driver design where the queue/ring/irq layout is done in init >>> rather >>> than in attach, allowing easy reconfiguration. What I'm not sure about is >>> how to handle the sysctl tree during a reinit, I don't see a procedure to >>> free up things so I can restructure :( >>> >>> Am I missing something, any pointers or suggestions appreciated. >>> >>> Thanks, >>> >>> Jack >>> >>> >> _______________________________________________ >> freebsd-net@freebsd.org mailing list >> https://lists.freebsd.org/mailman/listinfo/freebsd-net >> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org" > _______________________________________________ > freebsd-net@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-net > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CADdTf%2BjD4ncCNjL67BgTH_SUtuw%2BDg4J0ttEVHOWTjvTuv1dNQ>