On Sunday, 13.09.2015 at 10:23, Andrew Stuart wrote:
> I’ve been poking around the code trying to find how a kernel built with a 
> hardware target configures its network internally.
> 
> I can see that qemu is invoked with some network related parameters but that 
> configures the network on the host side, not the guest side, is that right? 
> If so, where and how does the hardware guest configure its network?

Network configuration is done in the same place for all platforms, namely
librumprun_base/rumpconfig.c:handle_net(). 

For the HW platform, the network interface names are whatever a normal
NetBSD kernel would use, and depend on the actual hardware device driver.
These interfaces are created by the rump kernel during boot just like a
normal kernel would do, i.e. by scanning the PCI bus and attaching drivers
to known devices.

For the Xen PV platform, an extra call to rump_pub_netconfig_ifcreate() is
performed to actually create the interface in the rump kernel. This is
triggered by the presence of the 'cloner' parameter in the configuration
JSON.

Aside: Antti: Why the name 'cloner'?


Reply via email to