NetBSD Problem Report #47912

From www@NetBSD.org  Mon Jun 10 08:59:11 2013
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [149.20.53.66])
	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
	(Client CN "mail.NetBSD.org", Issuer "Postmaster NetBSD.org" (verified OK))
	by mollari.NetBSD.org (Postfix) with ESMTPS id 2D15070509
	for <gnats-bugs@gnats.NetBSD.org>; Mon, 10 Jun 2013 08:59:11 +0000 (UTC)
Message-Id: <20130610085909.8858870515@mollari.NetBSD.org>
Date: Mon, 10 Jun 2013 08:59:09 +0000 (UTC)
From: roy@marples.name
Reply-To: roy@marples.name
To: gnats-bugs@NetBSD.org
Subject: nd6_storelladdr: sdl_alen == 0
X-Send-Pr-Version: www-1.0

>Number:         47912
>Category:       kern
>Synopsis:       nd6_storelladdr: sdl_alen == 0
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    kern-bug-people
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Jun 10 09:00:00 +0000 2013
>Closed-Date:    Tue Oct 13 12:52:05 +0000 2015
>Last-Modified:  Tue Oct 13 12:52:05 +0000 2015
>Originator:     Roy Marples
>Release:        -current
>Organization:
>Environment:
NetBSD uberlaptop.marples.name 6.99.21 NetBSD 6.99.21 (GENERIC) #2: Sat Jun  8 04:06:37 BST 2013  roy@uberlaptop.marples.name:/usr/obj/sys/arch/i386/compile/GENERIC i386
>Description:
When allowing the kernel to create IPv6 addresses and routes from a
Router Advertisement every thing works, but when turning this off and
creating the same addresses with the same flags and the same routes in
userland ping6ing an address on an added network route (not the one
derived from the prefix) I get the following error noted:

nd6_storelladdr: sdl_alen == 0, dst=2a01:348:31:1::1, if=bge0

A quick glance at the kernel code in nd6.c shows the error should be
impossible. I tend to agree, but obviously something went wrong :)

Looking at the routing tables created, they are identical AFAICS aside
from the working one getting a LLADDDR on the 1::1 route and the non
working one just getting a link #.

Here is the working routing table, as created by the kernel:
Internet6:
Destination                        Gateway                        Flags    Refs      Use    Mtu Interface
::/104                             ::1                            UGRS        -        -      -L lo0
::/96                              ::1                            UGRS        -        -      -L lo0
default                            fe80::82ee:73ff:fe04:74ce%bge0 UG          -        -      -L bge0
::1                                ::1                            UH          -        -  33192L lo0
::127.0.0.0/104                    ::1                            UGRS        -        -      -L lo0
::224.0.0.0/100                    ::1                            UGRS        -        -      -L lo0
::255.0.0.0/104                    ::1                            UGRS        -        -      -L lo0
::ffff:0.0.0.0/96                  ::1                            UGRS        -        -      -L lo0
2001:db8::/32                      ::1                            UGRS        -        -      -L lo0
2002::/24                          ::1                            UGRS        -        -      -L lo0
2002:7f00::/24                     ::1                            UGRS        -        -      -L lo0
2002:e000::/20                     ::1                            UGRS        -        -      -L lo0
2002:ff00::/24                     ::1                            UGRS        -        -      -L lo0
2a01:348:31:1::/64                 link#1                         UC          -        -      -L bge0
2a01:348:31:1::1                   80:ee:73:04:74:ce              UHLc        -        -      -L bge0
2a01:348:31:2::/64                 link#1                         UC          -        -      -L bge0
2a01:348:31:2:209:5bff:fe84:887d   80:ee:73:04:74:ce              UHLc        -        -      -L bge0
2a01:348:31:2:216:36ff:fe21:f879   00:16:36:21:f8:79              UHL         -        -      -L lo0
fe80::/10                          ::1                            UGRS        -        -      -L lo0
fe80::%bge0/64                     link#1                         UC          -        -      -L bge0
fe80::216:36ff:fe21:f879%bge0      00:16:36:21:f8:79              UHL         -        -      -L lo0
fe80::82ee:73ff:fe04:74ce%bge0     80:ee:73:04:74:ce              UHLc        -        -      -L bge0
fe80::%urtwn0/64                   link#4                         UC          -        -      -L urtwn0
fe80::%lo0/64                      fe80::1%lo0                    U           -        -      -L lo0
ff01:1::/32                        link#1                         UC          -        -      -L bge0
ff01:4::/32                        link#4                         UC          -        -      -L urtwn0
ff01:5::/32                        ::1                            UC          -        -      -L lo0
ff02::%bge0/32                     link#1                         UC          -        -      -L bge0
ff02::%urtwn0/32                   link#4                         UC          -        -      -L urtwn0
ff02::%lo0/32                      ::1                            UC          -        -      -L lo0


Here is the non working one created by dhcpcd-5.99.8 from the same RA as above:
       Internet6:
Destination                        Gateway                        Flags    Refs      Use    Mtu Interface
::/104                             ::1                            UGRS        -        -      -L lo0
::/96                              ::1                            UGRS        -        -      -L lo0
default                            fe80::82ee:73ff:fe04:74ce%bge0 UG          -        -      -L bge0
::1                                ::1                            UH          -        -  33192L lo0
::127.0.0.0/104                    ::1                            UGRS        -        -      -L lo0
::224.0.0.0/100                    ::1                            UGRS        -        -      -L lo0
::255.0.0.0/104                    ::1                            UGRS        -        -      -L lo0
::ffff:0.0.0.0/96                  ::1                            UGRS        -        -      -L lo0
2001:db8::/32                      ::1                            UGRS        -        -      -L lo0
2002::/24                          ::1                            UGRS        -        -      -L lo0
2002:7f00::/24                     ::1                            UGRS        -        -      -L lo0
2002:e000::/20                     ::1                            UGRS        -        -      -L lo0
2002:ff00::/24                     ::1                            UGRS        -        -      -L lo0
2a01:348:31:1::/64                 link#1                         UC          -        -      -L bge0
2a01:348:31:1::1                   link#1                         UHc         -        -      -L bge0
fe80::/10                          ::1                            UGRS        -        -      -L lo0
fe80::%bge0/64                     link#1                         UC          -        -      -L bge0
fe80::216:36ff:fe21:f879%bge0      00:16:36:21:f8:79              UHL         -        -      -L lo0
fe80::82ee:73ff:fe04:74ce%bge0     80:ee:73:04:74:ce              UHLc        -        -      -L bge0
fe80::%urtwn0/64                   link#4                         UC          -        -      -L urtwn0
fe80::%lo0/64                      fe80::1%lo0                    U           -        -      -L lo0
ff01:1::/32                        link#1                         UC          -        -      -L bge0
ff01:4::/32                        link#4                         UC          -        -      -L urtwn0
ff01:5::/32                        ::1                            UC          -        -      -L lo0
ff02::%bge0/32                     link#1                         UC          -        -      -L bge0
ff02::%urtwn0/32                   link#4                         UC          -        -      -L urtwn0
ff02::%lo0/32                      ::1                            UC          -        -      -L lo0

>How-To-Repeat:

>Fix:

>Release-Note:

>Audit-Trail:
From: Roy Marples <roy@marples.name>
To: <gnats-bugs@netbsd.org>
Cc: 
Subject: Re: kern/47912: =?UTF-8?Q?nd=36=5Fstorelladdr=3A=20sdl=5Falen=20?=
 =?UTF-8?Q?=3D=3D=20=30?=
Date: Mon, 10 Jun 2013 10:07:37 +0100

 Here is the real failing route table with - the above one was missing 
 some vital routes!

 Internet6:
 Destination                        Gateway                        Flags 
    Refs      Use    Mtu Interface
 ::/104                             ::1                            UGRS  
       -        -      -L lo0
 ::/96                              ::1                            UGRS  
       -        -      -L lo0
 default                            fe80::82ee:73ff:fe04:74ce%bge0 UG    
       -        -      -L bge0
 ::1                                ::1                            UH    
       -        -  33192L lo0
 ::127.0.0.0/104                    ::1                            UGRS  
       -        -      -L lo0
 ::224.0.0.0/100                    ::1                            UGRS  
       -        -      -L lo0
 ::255.0.0.0/104                    ::1                            UGRS  
       -        -      -L lo0
 ::ffff:0.0.0.0/96                  ::1                            UGRS  
       -        -      -L lo0
 2001:db8::/32                      ::1                            UGRS  
       -        -      -L lo0
 2002::/24                          ::1                            UGRS  
       -        -      -L lo0
 2002:7f00::/24                     ::1                            UGRS  
       -        -      -L lo0
 2002:e000::/20                     ::1                            UGRS  
       -        -      -L lo0
 2002:ff00::/24                     ::1                            UGRS  
       -        -      -L lo0
 2a01:348:31:1::/64                 link#1                         UC    
       -        -      -L bge0
 2a01:348:31:1::1                   link#1                         UHc   
       -        -      -L bge0
 2a01:348:31:2::/64                 link#1                         UC    
       -        -      -L bge0
 2a01:348:31:2:209:5bff:fe84:887d   80:ee:73:04:74:ce              UHLc  
       -        -      -L bge0
 2a01:348:31:2:216:36ff:fe21:f879   00:16:36:21:f8:79              UHL   
       -        -      -L lo0
 fe80::/10                          ::1                            UGRS  
       -        -      -L lo0
 fe80::%bge0/64                     link#1                         UC    
       -        -      -L bge0
 fe80::216:36ff:fe21:f879%bge0      00:16:36:21:f8:79              UHL   
       -        -      -L lo0
 fe80::82ee:73ff:fe04:74ce%bge0     80:ee:73:04:74:ce              UHLc  
       -        -      -L bge0
 fe80::%urtwn0/64                   link#4                         UC    
       -        -      -L urtwn0
 fe80::%lo0/64                      fe80::1%lo0                    U     
       -        -      -L lo0
 ff01:1::/32                        link#1                         UC    
       -        -      -L bge0
 ff01:4::/32                        link#4                         UC    
       -        -      -L urtwn0
 ff01:5::/32                        ::1                            UC    
       -        -      -L lo0
 ff02::%bge0/32                     link#1                         UC    
       -        -      -L bge0
 ff02::%urtwn0/32                   link#4                         UC    
       -        -      -L urtwn0
 ff02::%lo0/32                      ::1                            UC    
       -        -      -L lo0

State-Changed-From-To: open->closed
State-Changed-By: roy@NetBSD.org
State-Changed-When: Tue, 13 Oct 2015 12:52:05 +0000
State-Changed-Why:
I fixed this already but forgot to reference this PR.


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.