Source-Changes-HG archive

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

[src/netbsd-8]: src/sys/netinet6 Pull up following revision(s) (requested by ...



details:   https://anonhg.NetBSD.org/src/rev/4c8ae80feaa4
branches:  netbsd-8
changeset: 852456:4c8ae80feaa4
user:      martin <martin%NetBSD.org@localhost>
date:      Fri Jul 26 11:27:36 2019 +0000

description:
Pull up following revision(s) (requested by christos in ticket #1307):

        sys/netinet6/nd6.c: revision 1.256

Decrease the reference count before freeing, so that the entries actually
get free'd. (Ryota Ozaki)

diffstat:

 sys/netinet6/nd6.c |  7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diffs (42 lines):

diff -r fa55ff33bf81 -r 4c8ae80feaa4 sys/netinet6/nd6.c
--- a/sys/netinet6/nd6.c        Thu Jul 25 08:59:17 2019 +0000
+++ b/sys/netinet6/nd6.c        Fri Jul 26 11:27:36 2019 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: nd6.c,v 1.232.2.10 2019/07/08 16:30:58 martin Exp $    */
+/*     $NetBSD: nd6.c,v 1.232.2.11 2019/07/26 11:27:36 martin Exp $    */
 /*     $KAME: nd6.c,v 1.279 2002/06/08 11:16:51 itojun Exp $   */
 
 /*
@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: nd6.c,v 1.232.2.10 2019/07/08 16:30:58 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nd6.c,v 1.232.2.11 2019/07/26 11:27:36 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_net_mpsafe.h"
@@ -498,6 +498,7 @@
                                ln->ln_hold = m0;
                                clear_llinfo_pqueue(ln);
                        }
+                       LLE_REMREF(ln);
                        nd6_free(ln, 0);
                        ln = NULL;
                        if (m != NULL) {
@@ -517,6 +518,7 @@
        case ND6_LLINFO_STALE:
                /* Garbage Collection(RFC 2461 5.3) */
                if (!ND6_LLINFO_PERMANENT(ln)) {
+                       LLE_REMREF(ln);
                        nd6_free(ln, 1);
                        ln = NULL;
                }
@@ -540,6 +542,7 @@
                        daddr6 = &ln->r_l3addr.addr6;
                        send_ns = true;
                } else {
+                       LLE_REMREF(ln);
                        nd6_free(ln, 0);
                        ln = NULL;
                }



Home | Main Index | Thread Index | Old Index