Thu, Mar 21, 2019 at 04:25:09PM CET, and...@lunn.ch wrote: >On Thu, Mar 21, 2019 at 03:13:43PM +0100, Michal Kubecek wrote: >> On Thu, Mar 21, 2019 at 02:57:05PM +0100, Andrew Lunn wrote: >> > On Thu, Mar 21, 2019 at 02:07:35PM +0100, Michal Kubecek wrote: >> > > +static int __init ethnl_init(void) >> > > +{ >> > > + int ret; >> > > + >> > > + ret = genl_register_family(ðtool_genl_family); >> > > + if (ret < 0) >> > > + panic("ethtool: could not register genetlink family\n"); >> > >> > Panic seems a bit strong. Do we really want to kill the box because >> > this fails? >> >> When I switched CONFIG_ETHTOOL_NETLINK from tristate to bool, I checked >> some other non-modular subsystems to see what they do on failed >> initialization and each of them did handle it by panic() so I didn't >> think about it too much and did the same. >> >> Thinking about it now, if the family registration fails, the only entry >> point to care about should be ethtool_notify() (I'll have to check more >> carefully to be sure) so that adding a check there should be sufficient >> to let everything work (except for the netlink interface, of course). > >Hi Michal > >So maybe do a WARN_ON() and return the error code.
+1 > >Linus has been quite vocal about killing the box when there is no real >need... > > Andrew