Date: Tue, 7 Jul 2009 16:10:54 +0000 (UTC) From: Lawrence Stewart <lstewart@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r195425 - projects/tcp_cc_8.x/sys/netinet Message-ID: <200907071610.n67GAs8f023076@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: lstewart Date: Tue Jul 7 16:10:53 2009 New Revision: 195425 URL: http://svn.freebsd.org/changeset/base/195425 Log: - Don't manually add newreno to the cc_list in tcp_init, as the DECLARE_CC_MODULE macro in the new world order takes care of registering the module for us. Add a KASSERT when initing a tcpcb to check that the list is not empty. - sysctl_handle_string is not required in the case where we are setting a new default algorithm. This change fixes a panic that would occur when trying to set the default algorithm. Modified: projects/tcp_cc_8.x/sys/netinet/cc.c projects/tcp_cc_8.x/sys/netinet/tcp_subr.c Modified: projects/tcp_cc_8.x/sys/netinet/cc.c ============================================================================== --- projects/tcp_cc_8.x/sys/netinet/cc.c Tue Jul 7 13:58:47 2009 (r195424) +++ projects/tcp_cc_8.x/sys/netinet/cc.c Tue Jul 7 16:10:53 2009 (r195425) @@ -114,8 +114,6 @@ cc_default_algo(SYSCTL_HANDLER_ARGS) if (!found) return (ESRCH); - - error = sysctl_handle_string(oidp, arg1, arg2, req); } return (error); @@ -160,8 +158,6 @@ cc_init() { CC_LIST_LOCK_INIT(); STAILQ_INIT(&cc_list); - /* Newreno must always be available as an algorithm. */ - cc_register_algo(&newreno_cc_algo); } /* Modified: projects/tcp_cc_8.x/sys/netinet/tcp_subr.c ============================================================================== --- projects/tcp_cc_8.x/sys/netinet/tcp_subr.c Tue Jul 7 13:58:47 2009 (r195424) +++ projects/tcp_cc_8.x/sys/netinet/tcp_subr.c Tue Jul 7 16:10:53 2009 (r195425) @@ -734,6 +734,7 @@ tcp_newtcpcb(struct inpcb *inp) * Use the current system default CC algorithm. */ CC_LIST_RLOCK(); + KASSERT(!STAILQ_EMPTY(&cc_list), ("cc_list is empty!")); CC_ALGO(tp) = CC_DEFAULT(); CC_LIST_RUNLOCK();
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200907071610.n67GAs8f023076>