Skip site navigation (1)Skip section navigation (2)
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>