[Bug 256610] Kernel panic with ngtee
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 21 Jun 2021 16:11:07 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256610
--- Comment #5 from Mark Johnston <markj@FreeBSD.org> ---
(In reply to John Baldwin from comment #4)
The full stack looks like this:
#8 <signal handler called>
#9 memmove_erms () at /usr/src/sys/amd64/amd64/support.S:547
#10 0xffffffff80c80f18 in m_dup (m=0xfffff8021e841200,
m@entry=0xfffff801345d9d00, how=how@entry=1)
at /usr/src/sys/kern/uipc_mbuf.c:722
#11 0xffffffff834ab3c1 in ng_ipfw_input (m0=<optimized out>,
fwa=0xfffffe0144090300, tee=false) at /usr/src/sys/netgraph/ng_ipfw.c:324
#12 0xffffffff82936df0 in ipfw_check_packet (m0=0xfffffe01440904e8,
ifp=0xfffff80004e5b800, flags=131072, ruleset=<optimized out>,
inp=0xfffff8004cff35b8) at /usr/src/sys/netpfil/ipfw/ip_fw_pfil.c:297
#13 0xffffffff80d2a8c7 in pfil_run_hooks (head=<optimized out>, p=...,
ifp=ifp@entry=0xfffff80004e5b800, flags=flags@entry=131072,
inp=inp@entry=0xfffff8004cff35b8) at /usr/src/sys/net/pfil.c:187
#14 0xffffffff80d9f287 in ip_output_pfil (mp=0xfffffe01440904e8,
ifp=0xfffff80004e5b800, flags=0, inp=0xfffff8004cff35b8,
dst=0xfffff8004cff3760, fibnum=<optimized out>, error=<optimized out>)
at /usr/src/sys/netinet/ip_output.c:130
#15 ip_output (m=m@entry=0xfffff801345d9d00, opt=<optimized out>,
ro=<optimized out>, flags=<optimized out>, imo=imo@entry=0x0,
inp=<optimized out>) at /usr/src/sys/netinet/ip_output.c:705
#16 0xffffffff80db8cab in tcp_output (tp=<optimized out>)
at /usr/src/sys/netinet/tcp_output.c:1544
#17 0xffffffff80dccfff in tcp_usr_ready (so=<optimized out>,
m=0xfffff802e78b3d00, count=<optimized out>)
at /usr/src/sys/netinet/tcp_usrreq.c:1303
#18 0xffffffff80bef395 in sendfile_iodone (arg=arg@entry=0xfffff8035b9cdb00,
pa=<optimized out>, pa@entry=0x0, count=<optimized out>, count@entry=0,
error=<optimized out>) at /usr/src/sys/kern/kern_sendfile.c:399
#19 0xffffffff80beebc9 in vn_sendfile (fp=<optimized out>, sockfd=34,
hdr_uio=0x0, trl_uio=0x0, offset=<optimized out>, nbytes=<optimized out>,
sent=0xfffffe0144090a88, flags=0, td=0xfffffe0145810ac0)
at /usr/src/sys/kern/kern_sendfile.c:1194
#20 0xffffffff80bef7c7 in fo_sendfile (fp=0xfffff8002b911034, sockfd=0,
hdr_uio=0x7cc, trl_uio=0x7cc, offset=-8795362095052,
nbytes=722828843999576199, sent=0xfffffe0144090a88, flags=730927156,
td=0xfffffe0145810ac0) at /usr/src/sys/sys/file.h:411
#21 sendfile (td=0xfffffe0145810ac0, uap=0xfffffe0145810ea8,
compat=<optimized out>) at /usr/src/sys/kern/kern_sendfile.c:1324
#22 0xffffffff81083ede in syscallenter (td=<optimized out>)
at /usr/src/sys/amd64/amd64/../../kern/subr_syscall.c:189
> While we could patch m_dup(), I don't know we want to enforce the policy that the dup is always unmapped?
Did you mean mapped? In any case, yeah, I was wondering if it's really a good
idea to return a mapped chain. But if a consumer is m_dup()ing something then
it probably intends to write to the dup anyway. m_copypacket() should be used
otherwise.
--
You are receiving this mail because:
You are the assignee for the bug.