[illumos-Developer] Net booting illumos?

Garrett D'Amore garrett at nexenta.com
Fri Oct 15 00:46:57 PDT 2010


Thanks for the problem description.  I'll work on it tomorrow.  It
sounds like fall-out from my gutting of kcfd.   I.e. "my fault".

	- Garrett

On Fri, 2010-10-15 at 00:41 -0700, Bryan Cantrill wrote:
> On Thu, Oct 14, 2010 at 7:54 AM, Bryan Cantrill <bryancantrill at gmail.com> wrote:
> > Has anyone been able to get illumos to net boot?  We're seeing a hang
> > on boot (after/while plumbing the dld streams module), and it would be
> > very helpful to know if someone has gotten this to work (or is trying
> > to, for that matter)...
> 
> Just to follow up on this:  as it turns out, this is an odd bug due to
> a circular dependency between the kcf and swrand drivers.  When we
> boot over the network (or more accurately, from a ramdisk that has
> itself been loaded by pxegrub or gPXE), we load kcf as one of dev/ip's
> dependencies; kcf's _init, in turn, calls kcf_rnd_schedule_timeout(),
> which calls crypto_mech2id_common(), which does an explicit modload()
> of "crypto/swrand".  The problem is that crypto/swrand has a
> dependency on kcf -- which is busy (recall that we got here by trying
> to load it), and this code path doesn't detect circular dependencies.
> When one does not boot over the network, we load zfs before kcf or
> swrand -- and zfs has an explicit dependency on swrand which then
> pulls in kcf.  Of course, this code path still calls
> crypto_mech2id_common(), but because this loads a module by name, it
> detects the circular dependency and kicks out.  This bug should be
> fixed (there are several ways to fix it), but we worked around it by
> adding a "forceload: crypto/swrand" directive to /etc/system.
> 
>         - Bryan
> 
> _______________________________________________
> Developer mailing list
> Developer at lists.illumos.org
> http://lists.illumos.org/m/listinfo/developer




More information about the Developer mailing list