NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Re: bin/59046: dhcpd issue
The following reply was made to PR bin/59046; it has been noted by GNATS.
From: 6bone%6bone.informatik.uni-leipzig.de@localhost
To: Christos Zoulas <christos%zoulas.com@localhost>
Cc: gnats-bugs%netbsd.org@localhost, gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost
Subject: Re: Re: bin/59046: dhcpd issue
Date: Tue, 11 Feb 2025 12:27:49 +0100 (CET)
I have included an output before the switch statement:
log_debug("build_dhcpv6_reply packet->dhcpv6_msg_type is %d", packet->dhcpv6_msg_type);
The last lines of the output:
....
Relay-forward message from 2001:638:902:1::1 port 547, link address
2001:638:902:200b::1, peer address fe80::1c53:2c7f:acc8:7e3e
build_dhcpv6_reply packet->dhcpv6_msg_type is 12
Can't find option with code 16
build_dhcpv6_reply packet->dhcpv6_msg_type is 5
Reply NA: address 2001:638:902:200b::105a to client with duid
00:01:00:01:19:e6:6e:92:00:15:5d:08:d0:15 iaid = 251663709 valid for 1200 seconds
Sending Relay-reply to 2001:638:902:1::1 port 547
Relay-forward message from 2001:638:902:1::1 port 547, link address
2001:638:902:2015::1, peer address fe80::240:caff:fea5:b1ff
build_dhcpv6_reply packet->dhcpv6_msg_type is 12
build_dhcpv6_reply packet->dhcpv6_msg_type is 11
Sending Relay-reply to 2001:638:902:1::1 port 547
Relay-forward message from 2001:638:902:1::1 port 547, link address
2001:638:902:200c::1, peer address fe80::d2bf:9cff:febf:a93f
build_dhcpv6_reply packet->dhcpv6_msg_type is 12
build_dhcpv6_reply packet->dhcpv6_msg_type is 5
Reply NA: address 2001:638:902:200c::1653 to client with duid
00:03:00:01:d0:bf:9c:bf:a9:3f iaid = 2 valid for 1200 seconds
Sending Relay-reply to 2001:638:902:1::1 port 547
and the gdb output from the core file
This GDB was configured as "x86_64--netbsd".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/obj/external/mpl/dhcp/bin/server/dhcpd...
[New process 26684]
[New process 21095]
[New process 9706]
[New process 14977]
[New process 18003]
[New process 3662]
[New process 26573]
[New process 25771]
[New process 25429]
[New process 19916]
[New process 8241]
[New process 25435]
[New process 6788]
Core was generated by `dhcpd'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00007013494d58ac in je_large_dalloc () from /usr/lib/libc.so.12
[Current thread is 1 (process 26684)]
#0 0x00007013494d58ac in je_large_dalloc () from /usr/lib/libc.so.12
#1 0x00000000a4a52e20 in iasubopt_dereference (iasubopt=<optimized out>,
file=file@entry=0xa4c5ae68
"/usr/src/external/mpl/dhcp/bin/server/../../dist/server/mdb6.c",
line=line@entry=2045)
at /usr/src/external/mpl/dhcp/bin/server/../../dist/server/mdb6.c:307
#2 0x00000000a4a531fc in ia_remove_iasubopt (ia=0x70134b9d4fc0,
iasubopt=0x70134c03c080,
file=file@entry=0xa4c5ae68
"/usr/src/external/mpl/dhcp/bin/server/../../dist/server/mdb6.c",
line=line@entry=2045)
at /usr/src/external/mpl/dhcp/bin/server/../../dist/server/mdb6.c:491
#3 0x00000000a4a550f9 in ia_remove_iasubopt (line=2045,
file=0xa4c5ae68
"/usr/src/external/mpl/dhcp/bin/server/../../dist/server/mdb6.c",
iasubopt=<optimized out>, ia=<optimized out>)
at /usr/src/external/mpl/dhcp/bin/server/../../dist/server/mdb6.c:485
#4 cleanup_old_expired (pool=0x70134e484c40)
at /usr/src/external/mpl/dhcp/bin/server/../../dist/server/mdb6.c:2045
#5 lease_timeout_support (vpool=0x70134e484c40)
at /usr/src/external/mpl/dhcp/bin/server/../../dist/server/mdb6.c:2120
#6 0x00000000a4a5bc7f in isclib_timer_callback (taskp=<optimized out>,
eventp=<optimized out>)
at
/usr/src/external/mpl/dhcp/lib/common/../../dist/common/dispatch.c:181
#7 0x00000000a4c25a2b in task_run (task=0x70134e4fd1c0)
at
/usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/task.c:861
#8 isc_task_run (task=0x70134e4fd1c0)
at
/usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/task.c:955
#9 0x00000000a4c1c850 in isc__nm_async_task (worker=0x70134e482d90,
ev0=0x70134c079b40)
at
/usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/netmgr/netmgr.c:883
#10 process_netievent (worker=worker@entry=0x70134e482d90,
ievent=0x70134c079b40)
at
/usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/netmgr/netmgr.c:955
#11 0x00000000a4c1cf0e in process_queue
(worker=worker@entry=0x70134e482d90,
type=type@entry=NETIEVENT_TASK)
at
/usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/netmgr/netmgr.c:1021
#12 0x00000000a4c1d87d in process_all_queues (worker=0x70134e482d90)
at
/usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/netmgr/netmgr.c:796
#13 async_cb (handle=0x70134e4830c8)
at
/usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/netmgr/netmgr.c:825
#14 0x00000000a4c4a8bc in ?? ()
#15 0x00000000a4c3feec in uv.io_poll ()
#16 0x00000000a4c47f64 in uv_run ()
#17 0x00000000a4c1d17e in nm_thread (worker0=0x70134e482d90)
at
/usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/netmgr/netmgr.c:727
#18 0x00000000a4c37723 in isc__trampoline_run (arg=0x70134e5359a0)
at
/usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/trampoline.c:215
#19 0x000070134da0c89f in ?? () from /usr/lib/libpthread.so.1
#20 0x00007013494930e0 in ?? () from /usr/lib/libc.so.12
#21 0x0000000000200000 in ?? ()
#22 0x0000000000000000 in ?? ()
Regards
Uwe
On Mon, 10 Feb 2025, Christos Zoulas wrote:
> Can you print the message type in:
>
> static void
> build_dhcpv6_reply(struct data_string *reply, struct packet *packet) {
> memset(reply, 0, sizeof(*reply));
>
> /* I would like to classify the client once here, but
> * as I don't want to classify all of the incoming packets
> * I need to do it before handling specific types.
> * We don't need to classify if we are tossing the packet
> * or if it is a relay - the classification step will get
> * done when we process the inner client packet.
> */
>
> switch (packet->dhcpv6_msg_type) {
>
> ?
>
> Thanks
>
> christos
>
>> On Feb 10, 2025, at 3:00?AM, 6bone%6bone.informatik.uni-leipzig.de@localhost via gnats <gnats-admin%netbsd.org@localhost> wrote:
>>
>> The following reply was made to PR bin/59046; it has been noted by GNATS.
>>
>> From: 6bone%6bone.informatik.uni-leipzig.de@localhost
>> To: Christos Zoulas <christos%zoulas.com@localhost>
>> Cc: gnats-bugs%netbsd.org@localhost, gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost
>> Subject: Re: Re: bin/59046: dhcpd issue
>> Date: Mon, 10 Feb 2025 08:56:37 +0100 (CET)
>>
>> This GDB was configured as "x86_64--netbsd".
>> Type "show configuration" for configuration details.
>> For bug reporting instructions, please see:
>> <https://www.gnu.org/software/gdb/bugs/>.
>> Find the GDB manual and other documentation resources online at:
>> <http://www.gnu.org/software/gdb/documentation/>.
>>
>> For help, type "help".
>> Type "apropos word" to search for commands related to "word"...
>> Reading symbols from /usr/obj/external/mpl/dhcp/bin/server/dhcpd...
>> [New process 25706]
>> [New process 487]
>> [New process 13393]
>> [New process 27458]
>> [New process 4164]
>> [New process 6709]
>> [New process 10550]
>> [New process 11044]
>> [New process 13596]
>> [New process 597]
>> [New process 153]
>> [New process 15800]
>> [New process 21849]
>> Core was generated by `dhcpd'.
>> Program terminated with signal SIGSEGV, Segmentation fault.
>> [Current thread is 1 (process 25706)]
>> #0 0x00007bbf3510f8e8 in free () from /usr/lib/libc.so.12
>> #1 0x00000001a9695d28 in dfree (ptr=<optimized out>, file=<optimized out>,
>> line=<optimized out>)
>> at /usr/src/external/mpl/dhcp/lib/omapip/../../dist/omapip/alloc.c:208
>> #2 0x00000001a9666998 in buffer_dereference (ptr=ptr@entry=0x7bbf2dfefc80,
>> file=file@entry=0x1a9852728 "/usr/src/external/mpl/dhcp/bin/server/../../dist/server/dhcpv6.c", line=line@entry=7807)
>> at /usr/src/external/mpl/dhcp/lib/common/../../dist/common/alloc.c:757
>> #3 0x00000001a966754c in data_string_forget (data=data@entry=0x7bbf2dfefc80,
>> file=file@entry=0x1a9852728 "/usr/src/external/mpl/dhcp/bin/server/../../dist/server/dhcpv6.c", line=line@entry=7807)
>> at /usr/src/external/mpl/dhcp/lib/common/../../dist/common/alloc.c:1350
>> #4 0x00000001a963105a in dhcpv6 (packet=0x7bbf3888f000)
>> at /usr/src/external/mpl/dhcp/bin/server/../../dist/server/dhcpv6.c:7807
>> #5 0x00000001a96744a4 in do_packet6 (interface=<optimized out>,
>> packet=0x7bbf2dfefde0 "\f", len=164, from_port=8962, from=<optimized out>,
>> was_unicast=<optimized out>)
>> at /usr/src/external/mpl/dhcp/lib/common/../../dist/common/options.c:4236
>> #6 0x00000001a965e10f in got_one_v6 (h=<optimized out>)
>> at /usr/src/external/mpl/dhcp/lib/common/../../dist/common/discover.c:1219
>> #7 0x00000001a9691f2a in omapi_iscsock_cb (task=<optimized out>,
>> socket=<optimized out>, cbarg=0x7bbf3a0fc180, flags=1)
>> at /usr/src/external/mpl/dhcp/lib/omapip/../../dist/omapip/dispatch.c:172
>> #8 0x00000001a980d834 in internal_fdwatch_read (sock=0x7bbf3a0bf700)
>> at /usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/unix/socket.c:3208
>> #9 dispatch_recv (sock=0x7bbf3a0bf700)
>> at /usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/unix/socket.c:2718
>> #10 process_fd (writeable=<optimized out>, readable=<optimized out>,
>> fd=<optimized out>, thread=0x7bbf3a148ca0)
>> at /usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/unix/socket.c:3279
>> #11 process_fds (nevents=<optimized out>, events=<optimized out>,
>> thread=0x7bbf3a148ca0)
>> at /usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/unix/socket.c:3326
>> #12 netthread (uap=0x7bbf3a148ca0)
>> at /usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/unix/socket.c:3613
>> #13 0x00000001a9837713 in isc__trampoline_run (arg=0x7bbf3a13aa30)
>> at /usr/src/external/mpl/dhcp/bind/lib/libisc/../../dist/lib/isc/trampoline.c:215
>> #14 0x00007bbf3960c89f in ?? () from /usr/lib/libpthread.so.1
>> #15 0x00007bbf350930e0 in ?? () from /usr/lib/libc.so.12
>> #16 0x0000000000200000 in ?? ()
>> #17 0x0000000000000000 in ?? ()
>>
>> Last log entry before the crash was:
>> Client 00:01:00:01:27:3e:db:f2:b0:5c:da:40:02:08 releases address 2001:638:902:200c::1269
>> Sending Relay-reply to 2001:638:902:1::1 port 547
>>
>>
>> Regards
>> Uwe
>>
>>
>> On Sat, 8 Feb 2025, Christos Zoulas wrote:
>>
>>> Can you compile with -g (symbols)? I can't tell which call is that.
>>>
>>> Thanks,
>>>
>>> christos
>>>
>>>
>>>
>>
>
>
Home |
Main Index |
Thread Index |
Old Index