Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-1-6]: src/sys/netinet Pullup rev. 1.163 via patch (requested by i...



details:   https://anonhg.NetBSD.org/src/rev/8109e5b9deb6
branches:  netbsd-1-6
changeset: 530335:8109e5b9deb6
user:      msaitoh <msaitoh%NetBSD.org@localhost>
date:      Tue Jun 17 11:55:53 2003 +0000

description:
Pullup rev. 1.163 via patch (requested by itojun in ticket #984):
 remove all entries in rt timer queue on ip_mtudisc change, instead of
 destroying the queue.

diffstat:

 sys/netinet/ip_input.c |  15 +++++----------
 1 files changed, 5 insertions(+), 10 deletions(-)

diffs (43 lines):

diff -r b9f20d5d8de4 -r 8109e5b9deb6 sys/netinet/ip_input.c
--- a/sys/netinet/ip_input.c    Tue Jun 17 11:55:08 2003 +0000
+++ b/sys/netinet/ip_input.c    Tue Jun 17 11:55:53 2003 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: ip_input.c,v 1.150.4.2 2002/11/12 14:44:11 tron Exp $  */
+/*     $NetBSD: ip_input.c,v 1.150.4.3 2003/06/17 11:55:53 msaitoh Exp $       */
 
 /*
  * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
@@ -102,7 +102,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ip_input.c,v 1.150.4.2 2002/11/12 14:44:11 tron Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ip_input.c,v 1.150.4.3 2003/06/17 11:55:53 msaitoh Exp $");
 
 #include "opt_gateway.h"
 #include "opt_pfil_hooks.h"
@@ -1804,13 +1804,8 @@
        case IPCTL_MTUDISC:
                error = sysctl_int(oldp, oldlenp, newp, newlen,
                    &ip_mtudisc);
-               if (ip_mtudisc != 0 && ip_mtudisc_timeout_q == NULL) {
-                       ip_mtudisc_timeout_q = 
-                           rt_timer_queue_create(ip_mtudisc_timeout);
-               } else if (ip_mtudisc == 0 && ip_mtudisc_timeout_q != NULL) {
-                       rt_timer_queue_destroy(ip_mtudisc_timeout_q, TRUE);
-                       ip_mtudisc_timeout_q = NULL;
-               }
+               if (error == 0 && ip_mtudisc == 0)
+                       rt_timer_queue_remove_all(ip_mtudisc_timeout_q, TRUE);
                return error;
        case IPCTL_ANONPORTMIN:
                old = anonportmin;
@@ -1841,7 +1836,7 @@
        case IPCTL_MTUDISCTIMEOUT:
                error = sysctl_int(oldp, oldlenp, newp, newlen,
                   &ip_mtudisc_timeout);
-               if (ip_mtudisc_timeout_q != NULL)
+               if (error == 0)
                        rt_timer_queue_change(ip_mtudisc_timeout_q, 
                                              ip_mtudisc_timeout);
                return (error);



Home | Main Index | Thread Index | Old Index