Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Oct 2019 12:03:42 +0200
From:      Hans Petter Selasky <hps@selasky.org>
To:        Gleb Smirnoff <glebius@FreeBSD.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r353292 - in head/sys: contrib/ipfilter/netinet dev/firewire dev/iicbus dev/usb/net kern net netgraph netinet netinet6 netipsec netpfil/ipfw netpfil/pf ofed/drivers/infiniband/ulp/ipoib
Message-ID:  <4e5b6b75-b230-8aa0-61db-077bfbf7cf1f@selasky.org>
In-Reply-To: <201910072240.x97Me60x065650@repo.freebsd.org>
References:  <201910072240.x97Me60x065650@repo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2019-10-08 00:40, Gleb Smirnoff wrote:
> Author: glebius
> Date: Mon Oct  7 22:40:05 2019
> New Revision: 353292
> URL: https://svnweb.freebsd.org/changeset/base/353292
> 
> Log:
>    Widen NET_EPOCH coverage.
>    
>    When epoch(9) was introduced to network stack, it was basically
>    dropped in place of existing locking, which was mutexes and
>    rwlocks. For the sake of performance mutex covered areas were
>    as small as possible, so became epoch covered areas.
>    

Hi Gleb,

There are several callers of arpresolve() outside sys/net, which now 
require EPOCH(), which appears missing in your patch:

Same for nd6_resolve() I believe.

--HPS

> (kgdb) #0  __curthread () at /usr/src/sys/amd64/include/pcpu_aux.h:55
> #1  doadump (textdump=0) at /usr/src/sys/kern/kern_shutdown.c:392
> #2  0xffffffff804948fa in db_dump (dummy=<optimized out>, 
>     dummy2=<unavailable>, dummy3=<unavailable>, dummy4=<unavailable>)
>     at /usr/src/sys/ddb/db_command.c:575
> #3  0xffffffff804946bc in db_command (last_cmdp=<optimized out>, 
>     cmd_table=<optimized out>, dopager=1) at /usr/src/sys/ddb/db_command.c:482
> #4  0xffffffff8049442d in db_command_loop ()
>     at /usr/src/sys/ddb/db_command.c:535
> #5  0xffffffff80497658 in db_trap (type=<optimized out>, code=<optimized out>)
>     at /usr/src/sys/ddb/db_main.c:252
> #6  0xffffffff80c09e27 in kdb_trap (type=3, code=0, tf=<optimized out>)
>     at /usr/src/sys/kern/subr_kdb.c:692
> #7  0xffffffff8102de77 in trap (frame=0xfffffe00600dfbe0)
>     at /usr/src/sys/amd64/amd64/trap.c:585
> #8  <signal handler called>
> #9  kdb_enter (why=0xffffffff811d7eaa "panic", msg=<optimized out>)
>     at /usr/src/sys/kern/subr_kdb.c:479
> #10 0xffffffff80bbe96a in vpanic (fmt=<optimized out>, ap=<optimized out>)
>     at /usr/src/sys/kern/kern_shutdown.c:897
> #11 0xffffffff80bbe703 in panic (
>     fmt=0xffffffff81c85638 <cnputs_mtx> "G\320\031\201\377\377\377\377")
>     at /usr/src/sys/kern/kern_shutdown.c:835
> #12 0xffffffff80d4484f in arpresolve (ifp=0xfffff8000496b000, is_gw=0, m=0x0, 
>     dst=0xfffffe00600dfe68, desten=0xfffffe00600dfe50 "", pflags=0x0, plle=0x0)
>     at /usr/src/sys/netinet/if_ether.c:628
> #13 0xffffffff82408243 in addr4_resolve (src_in=0xfffff80007ef5210, 
>     dst_in=0xfffff80007ef5290, addr=<optimized out>, edst=<optimized out>, 
>     ifpp=<optimized out>)
>     at /usr/src/sys/ofed/drivers/infiniband/core/ib_addr.c:401
> #14 addr_resolve (src_in=0xfffff80007ef5210, dst_in=0xfffff80007ef5290, 
>     addr=0xfffff80108f20520)
>     at /usr/src/sys/ofed/drivers/infiniband/core/ib_addr.c:688
> #15 0xffffffff82407872 in rdma_resolve_ip (
>     client=0xffffffff82456450 <addr_client>, src_addr=<optimized out>, 
>     dst_addr=0xfffffe00600e0054, addr=0xfffff80108f20520, timeout_ms=2000, 
>     callback=0xffffffff82416b40 <addr_handler>, context=0xfffff80108f20400)
>     at /usr/src/sys/ofed/drivers/infiniband/core/ib_addr.c:789
> #16 0xffffffff82416352 in rdma_resolve_addr (id=0xfffff80108f20400, 
>     src_addr=<optimized out>, dst_addr=0xfffffe00600e0054, timeout_ms=2000)
>     at /usr/src/sys/ofed/drivers/infiniband/core/ib_cma.c:3039
> #17 0xffffffff8243786b in ucma_resolve_ip (linux_file=0xfffff80135c08400, 
>     inbuf=<optimized out>, in_len=<optimized out>, out_len=<optimized out>)
>     at /usr/src/sys/ofed/drivers/infiniband/core/ib_ucma.c:694
> #18 0xffffffff82436ee4 in ucma_write (filp=<optimized out>, 
>     buf=<optimized out>, len=72, pos=<optimized out>)
>     at /usr/src/sys/ofed/drivers/infiniband/core/ib_ucma.c:1625
> #19 0xffffffff823a1ad3 in linux_file_write (file=0xfffff8015403c0a0, 
>     uio=0xfffffe00600e01c0, active_cred=<optimized out>, 
>     flags=<optimized out>, td=<optimized out>)
>     at /usr/src/sys/compat/linuxkpi/common/src/linux_compat.c:1445
> #20 0xffffffff80c2f511 in fo_write (fp=0xfffff8015403c0a0, 
>     uio=0xfffffe00600e01c0, active_cred=0xfffffe00600dfba0, flags=1999, 
>     td=0xfffff8002e4cf000) at /usr/src/sys/sys/file.h:324
> #21 dofilewrite (td=0xfffff8002e4cf000, fd=7, fp=0xfffff8015403c0a0, 
>     auio=0xfffffe00600e01c0, offset=<optimized out>, flags=<optimized out>)
>     at /usr/src/sys/kern/sys_generic.c:564
> #22 0xffffffff80c2f149 in kern_writev (td=0xfffff8002e4cf000, fd=7, 
>     auio=0xfffffe00600e01c0) at /usr/src/sys/kern/sys_generic.c:491
> #23 0xffffffff80c2f0f3 in sys_write (td=0xffffffff81c85638 <cnputs_mtx>, 
>     uap=<optimized out>) at /usr/src/sys/kern/sys_generic.c:406
> #24 0xffffffff8102ee45 in syscallenter (td=0xfffff8002e4cf000)
>     at /usr/src/sys/amd64/amd64/../../kern/subr_syscall.c:144
> #25 amd64_syscall (td=0xfffff8002e4cf000, traced=0)
>     at /usr/src/sys/amd64/amd64/trap.c:1162



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4e5b6b75-b230-8aa0-61db-077bfbf7cf1f>