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
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to