From e154ac7cba0dd8c5e5cee67dabb5649e4241856b Mon Sep 17 00:00:00 2001 From: Sepherosa Ziehau Date: Fri, 2 Nov 2007 06:27:24 +0000 Subject: [PATCH] Clean up --- sys/net/dummynet/ip_dummynet.c | 19 +++++++++++-------- sys/net/dummynet/ip_dummynet.h | 9 +++++---- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/sys/net/dummynet/ip_dummynet.c b/sys/net/dummynet/ip_dummynet.c index 6afaed4ca6..bcde0d1051 100644 --- a/sys/net/dummynet/ip_dummynet.c +++ b/sys/net/dummynet/ip_dummynet.c @@ -25,7 +25,7 @@ * SUCH DAMAGE. * * $FreeBSD: src/sys/netinet/ip_dummynet.c,v 1.24.2.22 2003/05/13 09:31:06 maxim Exp $ - * $DragonFly: src/sys/net/dummynet/ip_dummynet.c,v 1.35 2007/11/01 15:48:26 sephe Exp $ + * $DragonFly: src/sys/net/dummynet/ip_dummynet.c,v 1.36 2007/11/02 06:27:24 sephe Exp $ */ #ifndef KLD_MODULE @@ -1241,12 +1241,14 @@ dropit: static void purge_flow_set(struct dn_flow_set *fs, int all) { - struct dn_pkt *pkt; - struct dn_flow_queue *q, *qn; int i; for (i = 0; i <= fs->rq_size; i++) { - for (q = fs->rq[i]; q ; q = qn) { + struct dn_flow_queue *q, *qn; + + for (q = fs->rq[i]; q; q = qn) { + struct dn_pkt *pkt; + for (pkt = q->head; pkt;) DN_FREE_PKT(pkt); @@ -1455,10 +1457,12 @@ alloc_hash(struct dn_flow_set *x, struct dn_flow_set *pfs) /* Allocate some slots */ if (l == 0) l = dn_hash_size; - if (l < 4) - l = 4; + + if (l < DN_MIN_HASH_SIZE) + l = DN_MIN_HASH_SIZE; else if (l > DN_MAX_HASH_SIZE) l = DN_MAX_HASH_SIZE; + x->rq_size = l; } else { /* One is enough for null mask */ @@ -1719,7 +1723,7 @@ delete_pipe(struct dn_pipe *p) flush_pipe_ptrs(&b->fs); /* Remove all references to this pipe from flow_sets */ - for (fs = all_flow_sets; fs; fs= fs->next) { + for (fs = all_flow_sets; fs; fs = fs->next) { if (fs->pipe == b) { kprintf("++ ref to pipe %d from fs %d\n", p->pipe_nr, fs->fs_nr); @@ -1763,7 +1767,6 @@ delete_pipe(struct dn_pipe *p) #endif } purge_flow_set(b, 1); - } error = 0; diff --git a/sys/net/dummynet/ip_dummynet.h b/sys/net/dummynet/ip_dummynet.h index 132e2905b2..a99a64bdbe 100644 --- a/sys/net/dummynet/ip_dummynet.h +++ b/sys/net/dummynet/ip_dummynet.h @@ -25,7 +25,7 @@ * SUCH DAMAGE. * * $FreeBSD: src/sys/netinet/ip_dummynet.h,v 1.10.2.9 2003/05/13 09:31:06 maxim Exp $ - * $DragonFly: src/sys/net/dummynet/ip_dummynet.h,v 1.9 2007/10/25 13:13:18 sephe Exp $ + * $DragonFly: src/sys/net/dummynet/ip_dummynet.h,v 1.10 2007/11/02 06:27:24 sephe Exp $ */ #ifndef _IP_DUMMYNET_H @@ -72,10 +72,11 @@ typedef uint64_t dn_key; /* sorting key */ */ /* - * The maximum hash table size for queues. This value must be a power - * of 2. + * The maximum/minimum hash table size for queues. + * These values must be a power of 2. */ -#define DN_MAX_HASH_SIZE 65536 +#define DN_MIN_HASH_SIZE 4 +#define DN_MAX_HASH_SIZE 65536 /* * A heap entry is made of a key and a pointer to the actual -- 2.11.4.GIT