Date: Thu, 6 Feb 2003 07:40:12 -0800 (PST) From: Maxim Konovalov <maxim@macomnet.ru> To: freebsd-bugs@FreeBSD.org Subject: Re: kern/48009: dummynet(4) related machine hangs Message-ID: <200302061540.h16FeCKk062537@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/48009; it has been noted by GNATS. From: Maxim Konovalov <maxim@macomnet.ru> To: =?KOI8-R?Q?Pawe=B3_Ma=B3achowski?= <pawmal@unia.3lo.lublin.pl> Cc: bug-followup@freebsd.org Subject: Re: kern/48009: dummynet(4) related machine hangs Date: Thu, 6 Feb 2003 18:33:58 +0300 (MSK) Known problem. Could you please try a patch below? Index: ip_dummynet.c =================================================================== RCS file: /home/maxim/cvs/sys/netinet/ip_dummynet.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- ip_dummynet.c 9 Dec 2002 12:41:50 -0000 1.6 +++ ip_dummynet.c 9 Dec 2002 13:45:30 -0000 1.7 @@ -1547,6 +1547,7 @@ } else x = b; + s = splimp(); x->bandwidth = p->bandwidth ; x->numbytes = 0; /* just in case... */ bcopy(p->if_name, x->if_name, sizeof(p->if_name) ); @@ -1561,14 +1562,13 @@ free(x, M_DUMMYNET); return s ; } - s = splimp() ; x->next = b ; if (a == NULL) all_pipes = x ; else a->next = x ; - splx(s); } + splx(s); } else { /* config queue */ struct dn_flow_set *x, *a, *b ; @@ -1597,6 +1597,7 @@ return EINVAL ; x = b; } + s = splimp(); set_fs_parms(x, pfs); if ( x->rq == NULL ) { /* a new flow_set */ @@ -1605,14 +1606,13 @@ free(x, M_DUMMYNET); return s ; } - s = splimp() ; x->next = b; if (a == NULL) all_flow_sets = x; else a->next = x; - splx(s); } + splx(s); } return 0 ; } %%% -- Maxim Konovalov, maxim@macomnet.ru, maxim@FreeBSD.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200302061540.h16FeCKk062537>