svn commit: r215166 - in head: . sys/conf sys/netinet
lstewart at freebsd.org
Mon Nov 15 01:24:14 UTC 2010
On 11/15/10 02:15, Mikolaj Golub wrote:
> On Sun, 14 Nov 2010 12:24:40 +1100 Lawrence Stewart wrote:
> LS> On 11/13/10 20:40, Mikolaj Golub wrote:
> >> On Fri, 12 Nov 2010 06:41:56 +0000 (UTC) Lawrence Stewart wrote:
> >> LS> Author: lstewart
> >> LS> Date: Fri Nov 12 06:41:55 2010
> >> LS> New Revision: 215166
> >> LS> URL: http://svn.freebsd.org/changeset/base/215166
> >> LS> Log:
> >> LS> This commit marks the first formal contribution of the "Five New TCP Congestion
> >> LS> Control Algorithms for FreeBSD" FreeBSD Foundation funded project. More details
> >> LS> about the project are available at: http://caia.swin.edu.au/freebsd/5cc/
> >> It looks like the code needs improvement to work with VIMAGE :-)
> >> options VIMAGE
> >> jail -i -c vnet persist path=/
> >> panic: lock "cc_list" 0xc101c418 already initialized
> LS> Would you mind testing the following patch? It fixes the panic for me.
> LS> http://people.freebsd.org/~lstewart/patches/5cc/modcc_vnetpanic_ccinit.patch
> With this patch the system hangs during the boot. Ctr-Alt-Esc to break into
> ddb does not work. I am trying this under VirtualBox.
I can't reproduce a hang, but please try this patch instead:
The previous patch had a bug, in that CC modules register with
SI_ORDER_ANY in the same SI_SUB_PROTO_IFATTACHDOMAIN category as the CC
framework's SYSINIT (which also ran with SI_ORDER_ANY). Therefore, there
is a possibility an algo could have tried to register before the CC
framework SYSINIT ran.
To be honest though, I don't expect the updated patch will fix the hang.
I would have expected a panic rather than a hang if you were seeing any
complications due to the SYSINIT ordering because the algo registration
would have attempted to use an uninitialised lock. I suspect your hang
might be caused by something unrelated to the modular CC work, but let
me know how you go.
More information about the svn-src-head