Re: [RFC][PATCH 1/3] net/ipv4: UDP-Lite extensions

From: James Morris
Date: Wed Aug 23 2006 - 11:19:29 EST


On Wed, 23 Aug 2006, gerrit@xxxxxxxxxxxxxx wrote:

> | Other protocols & network components call panic() if they fail during boot
> | initialization. Not sure if this is a great thing, but it raises the
> | issue of whether udp-lite should remain consistent here.
>
> The behaviour is consistent (modulo loglevel) with inet_init()
> of net/ipv4/af_inet.c:

Some things will panic there, just deeper in the call chain.

> >From that I could not deduct a rule what would happen if UDP-Lite failed
> to register. If control had reached that above point, it means that all
> other protocols have already successfully registered -- if then UDP-Lite
> could not register and called a panic(), it would abort the remainder of the
> stack.

Other functions can also panic on failure after this, e.g. tcp_init().

I think ideally it'd be best if components did not panic during
initialization unless it _really_ meant that the kernel should not
continue executing. Although, it's not entirely clear how to determine
this, e.g. perhaps the system should panic if netfilter initialization
failed, as it might mean that the systems comes up without a firewall. But
how do we know precisely which components are being used for security
critical purposes?

It seems like a signifcant overhaul of existing code, so probably best
just to leave yours as-is (which I suspect is the correct behavior
anyway).



- James
--
James Morris
<jmorris@xxxxxxxxx>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/