Bug 228584

Summary: kldload ipl: Fatal trap 12: page fault while in kernel mode
Product: Base System Reporter: Eitan Adler <eadler>
Component: kernAssignee: freebsd-bugs (Nobody) <bugs>
Status: New ---    
Severity: Affects Only Me CC: zlei
Priority: --- Keywords: crash
Version: CURRENT   
Hardware: Any   
OS: Any   

Description Eitan Adler freebsd_committer freebsd_triage 2018-05-29 05:41:10 UTC
#0  __curthread () at ./machine/pcpu.h:231
        td = <optimized out>
#1  doadump (textdump=0) at /usr/src/sys/kern/kern_shutdown.c:366
        error = <error reading variable error (Cannot access memory at address 0x0)>
        coredump = <optimized out>
#2  0xffffffff804350bb in db_dump (dummy=<optimized out>, dummy2=<unavailable>, dummy3=<unavailable>, dummy4=<unavailable>)
    at /usr/src/sys/ddb/db_command.c:574
        error = <optimized out>
#3  0xffffffff80434e7d in db_command (last_cmdp=<optimized out>, cmd_table=<optimized out>, dopager=<optimized out>) at /usr/src/sys/ddb/db_command.c:481
        modif =           ""
        have_addr = false
        t = <optimized out>
        result = <optimized out>
        cmd = 0xffffffff81a5ce20 <db_cmds+480>
        addr = <unavailable>
        count = <unavailable>
#4  0xffffffff80434c14 in db_command_loop () at /usr/src/sys/ddb/db_command.c:534
No locals.
#5  0xffffffff80437dff in db_trap (type=<optimized out>, code=<optimized out>) at /usr/src/sys/ddb/db_main.c:252
        jb =           {{
            _jb =               {-2193054773040,
              -2193054773048,
              -2193054772912,
              -2115128448,
              -2119837784,
              0,
              12,
              -2143060599,
              -2193054772944,
              -2140630981,
              -2116086448,
              0}
          }}
        bkpt = false
        watchpt = false
        prev_jb = 0x0
        why = <optimized out>
#6  0xffffffff80ba3923 in kdb_trap (type=12, code=0, tf=<optimized out>) at /usr/src/sys/kern/subr_kdb.c:697
        be = 0xffffffff81a5d7a8 <ddb_dbbe>
        intr = 582
        did_stop_cpus = <error reading variable did_stop_cpus (Cannot access memory at address 0x1)>
        handled = <optimized out>
        other_cpus = <optimized out>
#7  0xffffffff8101fbef in trap_fatal (frame=0xfffffe0163bfd380, eva=<optimized out>) at /usr/src/sys/amd64/amd64/trap.c:883
        code = <optimized out>
        softseg = {
          ssd_base = 0, 
          ssd_limit = 1048575, 
          ssd_type = 27, 
          ssd_dpl = 0, 
          ssd_p = 1, 
          ssd_long = 1, 
          ssd_def32 = 0, 
          ssd_gran = 1
        }
        msg = <optimized out>
        ss = 40
        type = <optimized out>
        handled = <optimized out>
#8  0xffffffff8101fd12 in trap_pfault (frame=0xfffffe0163bfd380, usermode=<optimized out>) at /usr/src/sys/amd64/amd64/trap.c:728
        td = 0xfffff80e2432e000
        eva = 0
        p = <optimized out>
        va = <optimized out>
        map = <optimized out>
        ftype = <optimized out>
        rv = <optimized out>
#9  0xffffffff8101f391 in trap (frame=0xfffffe0163bfd380) at /usr/src/sys/amd64/amd64/trap.c:427
        td = 0xfffff80e2432e000
        dr6 = <error reading variable dr6 (Cannot access memory at address 0x0)>
        addr = -2193054772352
        ucode = <error reading variable ucode (Cannot access memory at address 0x3)>
        signo = <error reading variable signo (Cannot access memory at address 0xa)>
        p = <optimized out>
        type = 12
        ksi = <optimized out>
#10 <signal handler called>
No locals.
#11 strncmp (s1=0x0, s2=0xffffffff812626a6 "set_", n=4) at /usr/src/sys/libkern/strncmp.c:44
No locals.
#12 0xffffffff81156b94 in link_elf_lookup_set (lf=0xfffff802db0ae400, name=0xffffffff83ba9bc2 "sdt_providers_set", startp=0xfffffe0163bfd4a0, 
    stopp=0xfffffe0163bfd4a8, countp=0x0) at /usr/src/sys/kern/link_elf_obj.c:1272
        ef = 0xfffff802db0ae400
        i = 12
        start = <optimized out>
        stop = <optimized out>
        count = <optimized out>
#13 0xffffffff83ba9509 in sdt_kld_unload_try (arg=<optimized out>, lf=0xfffff802db0ae200, error=0xfffffe0163bfd504) at /usr/src/sys/cddl/dev/sdt/sdt.c:321
        curr = <optimized out>
        begin = <optimized out>
        prov = <optimized out>
        tmp = <optimized out>
        end = <optimized out>
#14 0xffffffff80b2c68b in linker_file_unload (file=0xfffff802db0ae400, flags=1) at /usr/src/sys/kern/kern_linker.c:656
        _ep = <optimized out>
        _t = 0xfffff800983b6840
        _el = <optimized out>
        error = 0
        mod = <optimized out>
        next = <optimized out>
        ml = <optimized out>
        nextml = <optimized out>
        i = <optimized out>
        cp = <optimized out>
#15 0xffffffff81155233 in link_elf_load_file (cls=<optimized out>, filename=<optimized out>, result=0xfffffe0163bfd788)
    at /usr/src/sys/kern/link_elf_obj.c:1002
        mapsize = <error reading variable mapsize (Cannot access memory at address 0x0)>
        error = 28
        td = 0xfffff80e2432e000
        nd = 0xfffff800a29ae200
        flags = 1
        hdr = 0xfffff80786571d00
        resid = 0
        lf = <optimized out>
        ef = <optimized out>
        nbytes = <optimized out>
        shdr = <optimized out>
        nsym = <optimized out>
        symtabindex = <optimized out>
        symstrindex = <optimized out>
        i = <optimized out>
        shstrindex = <optimized out>
        alignmask = <optimized out>
        mapbase = <optimized out>
        ra = <optimized out>
        rl = <optimized out>
        pb = <optimized out>
        j = <optimized out>
        es = <optimized out>
#16 0xffffffff80b2bf87 in LINKER_LOAD_FILE (cls=0xffffffff81b827e0 <link_elf_class>, result=0x0, filename=<optimized out>) at ./linker_if.h:180
        _m = <optimized out>
        rc = <optimized out>
        _desc = <optimized out>
        _ce = <optimized out>
        _cep = <optimized out>
#17 linker_load_file (filename=<optimized out>, result=<optimized out>) at /usr/src/sys/kern/kern_linker.c:447
        lf = <optimized out>
        foundfile = <error reading variable foundfile (Cannot access memory at address 0x0)>
        error = <error reading variable error (Cannot access memory at address 0x0)>
        lc = <optimized out>
        modules = <optimized out>
        _el = <optimized out>
        _ep = <optimized out>
        _t = <optimized out>
#18 linker_load_module (kldname=<optimized out>, modname=0xfffff800a29b0800 "ipl", parent=0x0, verinfo=<optimized out>, lfpp=0xfffffe0163bfd918)
    at /usr/src/sys/kern/kern_linker.c:2092
        pathname = <optimized out>
        filename = <optimized out>
        error = <error reading variable error (Cannot access memory at address 0x0)>
        lfdep = <optimized out>
#19 0xffffffff80b2d8b1 in kern_kldload (td=<optimized out>, file=<optimized out>, fileid=<optimized out>) at /usr/src/sys/kern/kern_linker.c:1071
        error = 0
        saved_vnet = 0x0
        modname = 0xfffff800a29b0800 "ipl"
        kldname = 0x0
        lf = 0x6
#20 0xffffffff80b2d9db in sys_kldload (td=0xfffff80e2432e000, uap=<optimized out>) at /usr/src/sys/kern/kern_linker.c:1097
        pathname = 0xfffff800a29b0800 "ipl"
        error = 0
        fileid = -1
#21 0xffffffff810205fc in syscallenter (td=0xfffff80e2432e000) at /usr/src/sys/amd64/amd64/../../kern/subr_syscall.c:135
        p = 0xfffff802e5ba6a70
        error = <optimized out>
        sa = 0xfffff80e2432e3b0
        traced = <optimized out>
#22 amd64_syscall (td=0xfffff80e2432e000, traced=0) at /usr/src/sys/amd64/amd64/trap.c:1006
        ksi = <optimized out>
        error = <optimized out>
#23 <signal handler called>
No locals.
#24 0x00000008002cc44a in ?? ()
No symbol table info available.
Backtrace stopped: Cannot access memory at address 0x7fffffffd458
#11 strncmp (s1=0x0, s2=0xffffffff812626a6 "set_", n=4) at /usr/src/sys/libkern/strncmp.c:44
44			if (*s1 != *s2++)
$1 = 115 's'
$2 = 0xffffffff812626a6 "set_"
#12 0xffffffff81156b94 in link_elf_lookup_set (lf=0xfffff802db0ae400, name=0xffffffff83ba9bc2 "sdt_providers_set", startp=0xfffffe0163bfd4a0, 
    stopp=0xfffffe0163bfd4a8, countp=0x0) at /usr/src/sys/kern/link_elf_obj.c:1272
1272			if ((strncmp(ef->progtab[i].name, "set_", 4) == 0) &&
$3 = {
  addr = 0xffffffff8456b000 <sysctl_ipf_int>, 
  size = 296178, 
  flags = 0, 
  sec = 1, 
  name = 0xfffff800a279fc20 ".text"
}
Structure has no component named operator*.
Structure has no component named operator*.
$4 = {
  addr = 0xffffffff8456b000 <sysctl_ipf_int>, 
  size = 296178, 
  flags = 0, 
  sec = 1, 
  name = 0xfffff800a279fc20 ".text"
}
$5 = {
  addr = 0xffffffff845b34f2, 
  size = 12137, 
  flags = 0, 
  sec = 3, 
  name = 0xfffff800a279fc26 ".rodata.str1.1"
}
A syntax error in expression, near `]'.
$6 = {
  addr = 0xffffffff845b6460 <sysctl___net_inet_ipf>, 
  size = 100848, 
  flags = 0, 
  sec = 4, 
  name = 0xfffff800a279fc3a ".data"
}
$7 = {
  addr = 0xffffffff845cee50 <__set_sysctl_set_sym_sysctl___net_inet_ipf>, 
  size = 128, 
  flags = 0, 
  sec = 6, 
  name = 0xfffff800a279fc45 "set_sysctl_set"
}
$8 = {
  addr = 0xffffffff845ceed0 <__set_sysinit_set_sym_vnet_init_vnet_ipf_init_sys_init>, 
  size = 24, 
  flags = 0, 
  sec = 8, 
  name = 0xfffff800a279fc59 "set_sysinit_set"
}
$9 = {
  addr = 0xffffffff845ceee8 <__set_sysuninit_set_sym_vnet_init_vnet_ipf_init_sys_uninit>, 
  size = 16, 
  flags = 0, 
  sec = 10, 
  name = 0xfffff800a279fc6e "set_sysuninit_set"
}
$10 = {
  addr = 0xffffffff845ceef8 <__set_modmetadata_set_sym__mod_metadata_md_ipfilter_on_kernel>, 
  size = 24, 
  flags = 0, 
  sec = 12, 
  name = 0xfffff800a279fc85 "set_modmetadata_set"
}
$11 = {
  addr = 0xffffffff845cef10 <ipf_devs>, 
  size = 6584, 
  flags = 0, 
  sec = 14, 
  name = 0xfffff800a279fc99 ".bss"
}
$12 = {
  addr = 0xffffffff845d08d0 <ipf_devfiles>, 
  size = 5496, 
  flags = 0, 
  sec = 15, 
  name = 0xfffff800a279fca3 ".rodata"
}
$13 = {
  addr = 0xffffffff845d1e48 <ipf_nat_ioctl.__set_sdt_probes_set_sym_sdt_sdt___user_error>, 
  size = 5360, 
  flags = 0, 
  sec = 18, 
  name = 0xfffff800a279fcb9 "set_sdt_probes_set"
}
$14 = {
  addr = 0xffffffff845d3338 <ipf_nat_ioctl.__set_sdt_argtypes_set_sym_sdta_sdt___user_error0>, 
  size = 4736, 
  flags = 0, 
  sec = 20, 
  name = 0xfffff800a279fcd1 "set_sdt_argtypes_set"
}
$15 = {
  addr = 0x0, 
  size = 0, 
  flags = 0, 
  sec = 0, 
  name = 0xfffff800a279fce6 "set_vnet"
}
$16 = {
  addr = 0x0, 
  size = 0, 
  flags = 0, 
  sec = 0, 
  name = 0x0
}
$17 = {
  addr = 0x0, 
  size = 0, 
  flags = 0, 
  sec = 0, 
  name = 0x0
}
quit
Comment 1 Zhenlei Huang freebsd_committer freebsd_triage 2023-11-03 14:16:09 UTC
Does the issue still persist ? I'm not able to repeat this.