On 23/02/15 14:30, Justin Cormack wrote: > On 23 February 2015 at 00:05, Antti Kantee <[email protected]> wrote: >> Your frankenlibc timer stuff is probably broken, which explains why >> nobody else is seeing what you're seeing, but there appears to be a real >> bug. >> >> When domaininit() is called with attach=false in a rump kernel, the >> proto fast/slow timers are created, but proto initialization method is >> only run later when domain_attach() is called. The straightforward fix >> would be to initialize the timers in a separate call. Not yet sure if >> that's the best fix, though. > > Yes I think there may well be some bugs in my timer or other code. > Neither baremetal nor xen are linking to netinet6, but they both seem > ok if you do, and I have other issues with netinet. So will do some > more debugging. Other than that it seems to be mostly working.
Actually, your data point of xen and baremetal not linking to netinet6 made me realize that my analysis from last night can't be correct. Indeed, the domain is inserted into the domain list only at the beginning of domain_attach(), and the proto init methods are called a few lines below. Most likely there is something within domain_attach() that causes a rump kernel scheduling event, in addition to the callout timers firing. Does the error happen deterministically? Can you single-step through domain_attach() when it's called with inet6domain to see what happens? Most likely moving the STAILQ_INSERT() in uipc_domain.c::domain_attach() to after when the domain has been fully initialized will fix the problem. But I'd still like to know what makes the problem manifest itself. ------------------------------------------------------------------------------ Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/4140/ostg.clktrk _______________________________________________ rumpkernel-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/rumpkernel-users
