• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login
Netgate Discussion Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login

Fatal trap 12: page fault while in kernel mode when connecting PPPoE

Plus 23.09 Development Snapshots (Retired)
4
27
3.4k
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • R
    RobbieTT @w0w
    last edited by Sep 10, 2023, 2:13 PM

    @w0w said in Fatal trap 12: page fault while in kernel mode when connecting PPPoE:

    Looks like the "Do not create rules when gateway is down" option

    Where is that option?

    ☕️

    W 1 Reply Last reply Sep 10, 2023, 3:02 PM Reply Quote 0
    • W
      w0w @RobbieTT
      last edited by Sep 10, 2023, 3:02 PM

      @RobbieTT
      System/Advanced/Miscellaneous

      R 1 Reply Last reply Sep 10, 2023, 3:38 PM Reply Quote 0
      • R
        RobbieTT @w0w
        last edited by RobbieTT Sep 10, 2023, 3:47 PM Sep 10, 2023, 3:38 PM

        @w0w Thanks - got it. 👍

        login-to-view

        ☕️

        1 Reply Last reply Reply Quote 0
        • W
          w0w
          last edited by w0w Sep 13, 2023, 7:04 PM Sep 13, 2023, 7:03 PM

          Fatal trap 12: page fault while in kernel mode
          cpuid = 5; apic id = 05
          fault virtual address	= 0x50
          fault code		= supervisor read data, page not present
          instruction pointer	= 0x20:0xffffffff80fb8037
          stack pointer	        = 0x28:0xfffffe001b1ec930
          frame pointer	        = 0x28:0xfffffe001b1ec9f0
          code segment		= base 0x0, limit 0xfffff, type 0x1b
          			= DPL 0, pres 1, long 1, def32 0, gran 1
          processor eflags	= interrupt enabled, resume, IOPL = 0
          current process		= 12 (swi1: netisr 7)
          rdi: fffff8030039446e rsi: fffffe00c481e82d rdx: 0000000000000000
          rcx: fffffe00c481e370  r8: fffffe001b1eca50  r9: 0000000000000000
          rax: 0000000000000000 rbx: fffff803fcd6f970 rbp: fffffe001b1ec9f0
          r10: 0000000000000000 r11: fffffe00c481e370 r12: fffffe00c481e370
          r13: 0000000000000002 r14: fffff8035defd000 r15: fffffe001b1ecc78
          trap number		= 12
          panic: page fault
          cpuid = 5
          time = 1694631331
          KDB: enter: panic
          

          No. :) It was primary in carp maintenance mode and secondary was master and just rebooted — that caused the primary to crash.

          1 Reply Last reply Reply Quote 0
          • W
            w0w
            last edited by Sep 14, 2023, 4:36 PM

            @stephenw10,
            I apologize for disturbing you, maybe you have an idea in which direction to dig? If you need any other tests or information, I will be happy to perform them and provide the data. Unfortunately, my knowledge is too little to analyze the dumps on my own. 🙄

            R 1 Reply Last reply Sep 20, 2023, 6:50 PM Reply Quote 0
            • W
              w0w
              last edited by w0w Sep 21, 2023, 4:29 AM Sep 20, 2023, 6:32 PM

              Secondary firewall crashed, when master firewall was rebooted manually in GUI

              db:1:pfs> bt
              Tracing pid 0 tid 100009 td 0xfffffe00205eec80
              kdb_enter() at kdb_enter+0x32/frame 0xfffffe00c676e390
              vpanic() at vpanic+0x163/frame 0xfffffe00c676e4c0
              panic() at panic+0x43/frame 0xfffffe00c676e520
              trap_fatal() at trap_fatal+0x40c/frame 0xfffffe00c676e580
              trap_pfault() at trap_pfault+0x4f/frame 0xfffffe00c676e5e0
              calltrap() at calltrap+0x8/frame 0xfffffe00c676e5e0
              --- trap 0xc, rip = 0xffffffff80fb86d7, rsp = 0xfffffe00c676e6b0, rbp = 0xfffffe00c676e770 ---
              pf_route() at pf_route+0x4e7/frame 0xfffffe00c676e770
              pf_test() at pf_test+0xd7b/frame 0xfffffe00c676e910
              pf_check_out() at pf_check_out+0x22/frame 0xfffffe00c676e930
              pfil_mbuf_out() at pfil_mbuf_out+0x38/frame 0xfffffe00c676e960
              ip_output() at ip_output+0xb4a/frame 0xfffffe00c676ea60
              ip_forward() at ip_forward+0x3c2/frame 0xfffffe00c676eb10
              ip_input() at ip_input+0x6e9/frame 0xfffffe00c676eb70
              netisr_dispatch_src() at netisr_dispatch_src+0x22c/frame 0xfffffe00c676ebc0
              ether_demux() at ether_demux+0x149/frame 0xfffffe00c676ebf0
              ether_nh_input() at ether_nh_input+0x36e/frame 0xfffffe00c676ec50
              netisr_dispatch_src() at netisr_dispatch_src+0xaf/frame 0xfffffe00c676eca0
              ether_input() at ether_input+0x69/frame 0xfffffe00c676ed00
              iflib_rxeof() at iflib_rxeof+0xc46/frame 0xfffffe00c676ee00
              _task_fn_rx() at _task_fn_rx+0x72/frame 0xfffffe00c676ee40
              gtaskqueue_run_locked() at gtaskqueue_run_locked+0x14e/frame 0xfffffe00c676eec0
              gtaskqueue_thread_loop() at gtaskqueue_thread_loop+0xc2/frame 0xfffffe00c676eef0
              fork_exit() at fork_exit+0x7f/frame 0xfffffe00c676ef30
              fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe00c676ef30
              --- trap 0x7cfdf9fb, rip = 0x16592cb25965b2cb, rsp = 0x29d353a6a74c4e99, rbp = 0xde82bd057a0af415 ---
              db:1:pfs>  show registers
              cs                        0x20
              ds                        0x3b
              es                        0x3b
              fs                        0x13
              gs                        0x1b
              ss                        0x28
              rax                       0x12
              rcx         0xffffffff81457767
              rdx         0xfffffe00c676dfd0
              rbx                      0x100
              rsp         0xfffffe00c676e390
              rbp         0xfffffe00c676e390
              rsi                       0x2d
              rdi         0xffffffff82d40298  vt_conswindow+0x10
              r8                           0
              r9                           0
              r10                          0
              r11                          0
              r12                          0
              r13                          0
              r14         0xffffffff813db3a1
              r15         0xfffffe00205eec80
              rip         0xffffffff80d38812  kdb_enter+0x32
              rflags                    0x82
              kdb_enter+0x32: movq    $0,0x2344ff3(%rip)
              db:1:pfs>  show pcpu
              cpuid        = 2
              dynamic pcpu = 0xfffffe009d56af00
              curthread    = 0xfffffe00205eec80: pid 0 tid 100009 critnest 1 "if_io_tqg_2"
              curpcb       = 0xfffffe00205ef1a0
              fpcurthread  = none
              idlethread   = 0xfffffe0020566560: tid 100005 "idle: cpu2"
              self         = 0xffffffff84212000
              curpmap      = 0xffffffff83021ab0
              tssp         = 0xffffffff84212384
              rsp0         = 0xfffffe00c676f000
              kcr3         = 0x73a39000
              ucr3         = 0xffffffffffffffff
              scr3         = 0x17042a000
              gs32p        = 0xffffffff84212404
              ldt          = 0xffffffff84212444
              tss          = 0xffffffff84212434
              curvnet      = 0xfffff80001241400
              db:1:pfs>  run lockinfo
              db:2:lockinfo> show locks
              No such command; use "help" to list available commands
              db:2:lockinfo>  show alllocks
              No such command; use "help" to list available commands
              db:2:lockinfo>  show lockedvnods
              Locked vnodes
              db:1:pfs>  acttrace
              
              
              1 Reply Last reply Reply Quote 0
              • R
                RobbieTT @w0w
                last edited by Sep 20, 2023, 6:50 PM

                @w0w said in Fatal trap 12: page fault while in kernel mode when connecting PPPoE:

                @stephenw10,
                I apologize for disturbing you, maybe you have an idea in which direction to dig? If you need any other tests or information, I will be happy to perform them and provide the data. Unfortunately, my knowledge is too little to analyze the dumps on my own. 🙄

                I can't speak for Steve but the Netgate team has made a significant discovery in issues related to IPv6. There is a chance that the changes needed could make it to the 23.09 release.

                ☕️

                W 1 Reply Last reply Sep 20, 2023, 6:59 PM Reply Quote 0
                • W
                  w0w @RobbieTT
                  last edited by w0w Sep 20, 2023, 7:00 PM Sep 20, 2023, 6:59 PM

                  @RobbieTT
                  Do you mean something https://redmine.pfsense.org/issues/14077 like that?
                  I see no IPv6 traces in this trap.

                  1 Reply Last reply Reply Quote 0
                  • W
                    w0w
                    last edited by Sep 21, 2023, 4:28 AM

                    Primary firewall leaving "Carp Maintenance mode"

                    db:1:pfs> bt
                    Tracing pid 12 tid 100063 td 0xfffffe00c498ae40
                    kdb_enter() at kdb_enter+0x32/frame 0xfffffe001b1f1610
                    vpanic() at vpanic+0x163/frame 0xfffffe001b1f1740
                    panic() at panic+0x43/frame 0xfffffe001b1f17a0
                    trap_fatal() at trap_fatal+0x40c/frame 0xfffffe001b1f1800
                    trap_pfault() at trap_pfault+0x4f/frame 0xfffffe001b1f1860
                    calltrap() at calltrap+0x8/frame 0xfffffe001b1f1860
                    --- trap 0xc, rip = 0xffffffff80fb86d7, rsp = 0xfffffe001b1f1930, rbp = 0xfffffe001b1f19f0 ---
                    pf_route() at pf_route+0x4e7/frame 0xfffffe001b1f19f0
                    pf_test() at pf_test+0xd7b/frame 0xfffffe001b1f1b90
                    pf_check_out() at pf_check_out+0x22/frame 0xfffffe001b1f1bb0
                    pfil_mbuf_out() at pfil_mbuf_out+0x38/frame 0xfffffe001b1f1be0
                    ip_output() at ip_output+0xb4a/frame 0xfffffe001b1f1ce0
                    ip_forward() at ip_forward+0x3c2/frame 0xfffffe001b1f1d90
                    ip_input() at ip_input+0x6e9/frame 0xfffffe001b1f1df0
                    swi_net() at swi_net+0x128/frame 0xfffffe001b1f1e60
                    ithread_loop() at ithread_loop+0x257/frame 0xfffffe001b1f1ef0
                    fork_exit() at fork_exit+0x7f/frame 0xfffffe001b1f1f30
                    fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe001b1f1f30
                    --- trap 0xaf34f5ea, rip = 0x56a9887e31914e4f, rsp = 0x4506b2da7d808177, rbp = 0xf56feca9dc25ff3d ---
                    db:1:pfs>  show registers
                    cs                        0x20
                    ds                        0x3b
                    es                        0x3b
                    fs                        0x13
                    gs                        0x1b
                    ss                        0x28
                    rax                       0x12
                    rcx         0xffffffff81457767
                    rdx         0xfffffe001b1f1250
                    rbx                      0x100
                    rsp         0xfffffe001b1f1610
                    rbp         0xfffffe001b1f1610
                    rsi                       0x30
                    rdi         0xffffffff82d40298  vt_conswindow+0x10
                    r8                           0
                    r9                           0
                    r10                          0
                    r11                          0
                    r12                          0
                    r13                          0
                    r14         0xffffffff813db3a1
                    r15         0xfffffe00c498ae40
                    rip         0xffffffff80d38812  kdb_enter+0x32
                    rflags                    0x86
                    kdb_enter+0x32: movq    $0,0x2344ff3(%rip)
                    db:1:pfs>  show pcpu
                    cpuid        = 3
                    dynamic pcpu = 0xfffffe009afa7f00
                    curthread    = 0xfffffe00c498ae40: pid 12 tid 100063 critnest 1 "swi1: netisr 6"
                    curpcb       = 0xfffffe00c498b360
                    fpcurthread  = none
                    idlethread   = 0xfffffe00c48d5e40: tid 100006 "idle: cpu3"
                    self         = 0xffffffff84013000
                    curpmap      = 0xffffffff83021ab0
                    tssp         = 0xffffffff84013384
                    rsp0         = 0xfffffe001b1f2000
                    kcr3         = 0x80000000c5d31001
                    ucr3         = 0xffffffffffffffff
                    scr3         = 0x316df2c9a
                    gs32p        = 0xffffffff84013404
                    ldt          = 0xffffffff84013444
                    tss          = 0xffffffff84013434
                    curvnet      = 0xfffff800012791c0
                    db:1:pfs>  run lockinfo
                    db:2:lockinfo> show locks
                    No such command; use "help" to list available commands
                    db:2:lockinfo>  show alllocks
                    No such command; use "help" to list available commands
                    db:2:lockinfo>  show lockedvnods
                    Locked vnodes
                    
                    1 Reply Last reply Reply Quote 0
                    • W
                      w0w
                      last edited by Sep 22, 2023, 5:22 PM

                      Primary crashes when it is in CARP maintenance mode and I manually reboot the secondary firewall, which is currently “MASTER”

                      db:1:pfs> bt
                      Tracing pid 12 tid 100062 td 0xfffffe00c498b560
                      kdb_enter() at kdb_enter+0x32/frame 0xfffffe001b1f6610
                      vpanic() at vpanic+0x163/frame 0xfffffe001b1f6740
                      panic() at panic+0x43/frame 0xfffffe001b1f67a0
                      trap_fatal() at trap_fatal+0x40c/frame 0xfffffe001b1f6800
                      trap_pfault() at trap_pfault+0x4f/frame 0xfffffe001b1f6860
                      calltrap() at calltrap+0x8/frame 0xfffffe001b1f6860
                      --- trap 0xc, rip = 0xffffffff80fb86d7, rsp = 0xfffffe001b1f6930, rbp = 0xfffffe001b1f69f0 ---
                      pf_route() at pf_route+0x4e7/frame 0xfffffe001b1f69f0
                      pf_test() at pf_test+0xd7b/frame 0xfffffe001b1f6b90
                      pf_check_out() at pf_check_out+0x22/frame 0xfffffe001b1f6bb0
                      pfil_mbuf_out() at pfil_mbuf_out+0x38/frame 0xfffffe001b1f6be0
                      ip_output() at ip_output+0xb4a/frame 0xfffffe001b1f6ce0
                      ip_forward() at ip_forward+0x3c2/frame 0xfffffe001b1f6d90
                      ip_input() at ip_input+0x6e9/frame 0xfffffe001b1f6df0
                      swi_net() at swi_net+0x128/frame 0xfffffe001b1f6e60
                      ithread_loop() at ithread_loop+0x257/frame 0xfffffe001b1f6ef0
                      fork_exit() at fork_exit+0x7f/frame 0xfffffe001b1f6f30
                      fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe001b1f6f30
                      --- trap 0x24f03cbe, rip = 0x3e5ce0ab5d44269a, rsp = 0x9a1bada3ca8f0cb6, rbp = 0x2a37be9697d8c544 ---
                      db:1:pfs>  show registers
                      cs                        0x20
                      ds                        0x3b
                      es                        0x3b
                      fs                        0x13
                      gs                        0x1b
                      ss                        0x28
                      rax                       0x12
                      rcx         0xffffffff81457767
                      rdx         0xfffffe001b1f6250
                      rbx                      0x100
                      rsp         0xfffffe001b1f6610
                      rbp         0xfffffe001b1f6610
                      rsi                       0x30
                      rdi         0xffffffff82d40298  vt_conswindow+0x10
                      r8                           0
                      r9                           0
                      r10                          0
                      r11                          0
                      r12                          0
                      r13                          0
                      r14         0xffffffff813db3a1
                      r15         0xfffffe00c498b560
                      rip         0xffffffff80d38812  kdb_enter+0x32
                      rflags                    0x86
                      kdb_enter+0x32: movq    $0,0x2344ff3(%rip)
                      db:1:pfs>  show pcpu
                      cpuid        = 5
                      dynamic pcpu = 0xfffffe009afc5f00
                      curthread    = 0xfffffe00c498b560: pid 12 tid 100062 critnest 1 "swi1: netisr 5"
                      curpcb       = 0xfffffe00c498ba80
                      fpcurthread  = none
                      idlethread   = 0xfffffe00c48d5000: tid 100008 "idle: cpu5"
                      self         = 0xffffffff84015000
                      curpmap      = 0xffffffff83021ab0
                      tssp         = 0xffffffff84015384
                      rsp0         = 0xfffffe001b1f7000
                      kcr3         = 0x80000000c5d25002
                      ucr3         = 0xffffffffffffffff
                      scr3         = 0x262086cbb
                      gs32p        = 0xffffffff84015404
                      ldt          = 0xffffffff84015444
                      tss          = 0xffffffff84015434
                      curvnet      = 0xfffff80001279200
                      db:1:pfs>  run lockinfo
                      db:2:lockinfo> show locks
                      No such command; use "help" to list available commands
                      db:2:lockinfo>  show alllocks
                      No such command; use "help" to list available commands
                      db:2:lockinfo>  show lockedvnods
                      Locked vnodes
                      
                      C 1 Reply Last reply Sep 22, 2023, 7:28 PM Reply Quote 0
                      • C
                        cmcdonald Netgate Developer @w0w
                        last edited by Sep 22, 2023, 7:28 PM

                        @w0w

                        Hi, could you add the line net.isr.maxthreads=1 to /boot/loader.conf on both primary and secondary, and try replicating the crash?

                        Need help fast? https://www.netgate.com/support

                        W 1 Reply Last reply Sep 23, 2023, 6:22 AM Reply Quote 0
                        • W
                          w0w @cmcdonald
                          last edited by w0w Sep 23, 2023, 6:32 AM Sep 23, 2023, 6:22 AM

                          @cmcdonald

                          Crash on primary, leaving CARP maintenance mode.

                          db:1:pfs> bt
                          Tracing pid 12 tid 100063 td 0xfffffe00c498ae40
                          kdb_enter() at kdb_enter+0x32/frame 0xfffffe001b1f1610
                          vpanic() at vpanic+0x163/frame 0xfffffe001b1f1740
                          panic() at panic+0x43/frame 0xfffffe001b1f17a0
                          trap_fatal() at trap_fatal+0x40c/frame 0xfffffe001b1f1800
                          trap_pfault() at trap_pfault+0x4f/frame 0xfffffe001b1f1860
                          calltrap() at calltrap+0x8/frame 0xfffffe001b1f1860
                          --- trap 0xc, rip = 0xffffffff80fb86d7, rsp = 0xfffffe001b1f1930, rbp = 0xfffffe001b1f19f0 ---
                          pf_route() at pf_route+0x4e7/frame 0xfffffe001b1f19f0
                          pf_test() at pf_test+0xd7b/frame 0xfffffe001b1f1b90
                          pf_check_out() at pf_check_out+0x22/frame 0xfffffe001b1f1bb0
                          pfil_mbuf_out() at pfil_mbuf_out+0x38/frame 0xfffffe001b1f1be0
                          ip_output() at ip_output+0xb4a/frame 0xfffffe001b1f1ce0
                          ip_forward() at ip_forward+0x3c2/frame 0xfffffe001b1f1d90
                          ip_input() at ip_input+0x6e9/frame 0xfffffe001b1f1df0
                          swi_net() at swi_net+0x128/frame 0xfffffe001b1f1e60
                          ithread_loop() at ithread_loop+0x257/frame 0xfffffe001b1f1ef0
                          fork_exit() at fork_exit+0x7f/frame 0xfffffe001b1f1f30
                          fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe001b1f1f30
                          --- trap 0xaf34f5ea, rip = 0x56a9887e31914e4f, rsp = 0x4506b2da7d808177, rbp = 0xf56feca9dc25ff3d ---
                          db:1:pfs>  show registers
                          cs                        0x20
                          ds                        0x3b
                          es                        0x3b
                          fs                        0x13
                          gs                        0x1b
                          ss                        0x28
                          rax                       0x12
                          rcx         0xffffffff81457767
                          rdx         0xfffffe001b1f1250
                          rbx                      0x100
                          rsp         0xfffffe001b1f1610
                          rbp         0xfffffe001b1f1610
                          rsi                       0x30
                          rdi         0xffffffff82d40298  vt_conswindow+0x10
                          r8                           0
                          r9                           0
                          r10                          0
                          r11                          0
                          r12                          0
                          r13                          0
                          r14         0xffffffff813db3a1
                          r15         0xfffffe00c498ae40
                          rip         0xffffffff80d38812  kdb_enter+0x32
                          rflags                    0x86
                          kdb_enter+0x32: movq    $0,0x2344ff3(%rip)
                          db:1:pfs>  show pcpu
                          cpuid        = 0
                          dynamic pcpu = 0x111df00
                          curthread    = 0xfffffe00c498ae40: pid 12 tid 100063 critnest 1 "swi1: netisr 6"
                          curpcb       = 0xfffffe00c498b360
                          fpcurthread  = none
                          idlethread   = 0xfffffe00c48d73a0: tid 100003 "idle: cpu0"
                          self         = 0xffffffff84010000
                          curpmap      = 0xffffffff83021ab0
                          tssp         = 0xffffffff84010384
                          rsp0         = 0xfffffe001b1f2000
                          kcr3         = 0x80000000c5d25003
                          ucr3         = 0xffffffffffffffff
                          scr3         = 0x2f5f9db5f
                          gs32p        = 0xffffffff84010404
                          ldt          = 0xffffffff84010444
                          tss          = 0xffffffff84010434
                          curvnet      = 0xfffff80001279200
                          db:1:pfs>  run lockinfo
                          db:2:lockinfo> show locks
                          No such command; use "help" to list available commands
                          db:2:lockinfo>  show alllocks
                          No such command; use "help" to list available commands
                          db:2:lockinfo>  show lockedvnods
                          Locked vnodes
                          ************************************************************************
                          Fatal trap 12: page fault while in kernel mode
                          cpuid = 5; apic id = 05
                          
                          fault virtual address	= 0x50
                          
                          
                          
                          
                          
                          
                          fault code		= supervisor read data, page not present
                          
                          Fatal trap 12: page fault while in kernel mode
                          Fatal trap 12: page fault while in kernel mode
                          instruction pointer	= 0x20:0xffffffff80fb86d7
                          cpuid = 1; 
                          Fatal trap 12: page fault while in kernel mode
                          apic id = 01
                          cpuid = 3; stack pointer	        = 0x28:0xfffffe001b1e2930
                          Fatal trap 12: page fault while in kernel mode
                          
                          frame pointer	        = 0x28:0xfffffe001b1e29f0
                          cpuid = 0; apic id = 00
                          fault virtual address	= 0x50
                          fault code		= supervisor read data, page not present
                          fault virtual address	= 0x50
                          instruction pointer	= 0x20:0xffffffff80fb86d7
                          stack pointer	        = 0x28:0xfffffe001b1f1930
                          frame pointer	        = 0x28:0xfffffe001b1f19f0
                          code segment		= base 0x0, limit 0xfffff, type 0x1b
                          Fatal trap 12: page fault while in kernel mode
                          			= DPL 0, pres 1, long 1, def32 0, gran 1
                          code segment		= base 0x0, limit 0xfffff, type 0x1b
                          			= DPL 0, pres 1, long 1, def32 0, gran 1
                          processor eflags	= interrupt enabled, resume, IOPL = 0
                          cpuid = 6; apic id = 06
                          processor eflags	= interrupt enabled, resume, IOPL = 0
                          current process		= 12 (swi1: netisr 6)
                          rdi: fffff8028743200e rsi: fffffe00c481e82d rdx: 0000000000000000
                          rcx: fffffe00c481e370  r8: fffffe001b1f1a50  r9: 0000000000000000
                          rax: 0000000000000000 rbx: fffff80317e5b8b8 rbp: fffffe001b1f19f0
                          r10: 0000000000000000 r11: fffffe00c481e370 r12: fffffe00c481e370
                          r13: 0000000000000002 r14: fffff802f5b13840 r15: fffffe001b1f1c78
                          trap number		= 12
                          panic: page fault
                          cpuid = 0
                          time = 1695445416
                          KDB: enter: panic
                          
                          net.isr.numthreads: 1
                          net.isr.maxprot: 16
                          net.isr.defaultqlimit: 256
                          net.isr.maxqlimit: 10240
                          net.isr.bindthreads: 0
                          net.isr.maxthreads: 1
                          net.isr.dispatch: hybrid
                          

                          When primary booted, I just selected Reboot in GUI and confirmed, at the same time secondary firewall crashed

                          db:1:pfs> bt
                          Tracing pid 0 tid 100007 td 0xfffffe0020565720
                          kdb_enter() at kdb_enter+0x32/frame 0xfffffe001d7da390
                          vpanic() at vpanic+0x163/frame 0xfffffe001d7da4c0
                          panic() at panic+0x43/frame 0xfffffe001d7da520
                          trap_fatal() at trap_fatal+0x40c/frame 0xfffffe001d7da580
                          trap_pfault() at trap_pfault+0x4f/frame 0xfffffe001d7da5e0
                          calltrap() at calltrap+0x8/frame 0xfffffe001d7da5e0
                          --- trap 0xc, rip = 0xffffffff80fb86d7, rsp = 0xfffffe001d7da6b0, rbp = 0xfffffe001d7da770 ---
                          pf_route() at pf_route+0x4e7/frame 0xfffffe001d7da770
                          pf_test() at pf_test+0xd7b/frame 0xfffffe001d7da910
                          pf_check_out() at pf_check_out+0x22/frame 0xfffffe001d7da930
                          pfil_mbuf_out() at pfil_mbuf_out+0x38/frame 0xfffffe001d7da960
                          ip_output() at ip_output+0xb4a/frame 0xfffffe001d7daa60
                          ip_forward() at ip_forward+0x3c2/frame 0xfffffe001d7dab10
                          ip_input() at ip_input+0x6e9/frame 0xfffffe001d7dab70
                          netisr_dispatch_src() at netisr_dispatch_src+0x22c/frame 0xfffffe001d7dabc0
                          ether_demux() at ether_demux+0x149/frame 0xfffffe001d7dabf0
                          ether_nh_input() at ether_nh_input+0x36e/frame 0xfffffe001d7dac50
                          netisr_dispatch_src() at netisr_dispatch_src+0xaf/frame 0xfffffe001d7daca0
                          ether_input() at ether_input+0x69/frame 0xfffffe001d7dad00
                          iflib_rxeof() at iflib_rxeof+0xc46/frame 0xfffffe001d7dae00
                          _task_fn_rx() at _task_fn_rx+0x72/frame 0xfffffe001d7dae40
                          gtaskqueue_run_locked() at gtaskqueue_run_locked+0x14e/frame 0xfffffe001d7daec0
                          gtaskqueue_thread_loop() at gtaskqueue_thread_loop+0xc2/frame 0xfffffe001d7daef0
                          fork_exit() at fork_exit+0x7f/frame 0xfffffe001d7daf30
                          fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe001d7daf30
                          --- trap 0x5965b2cb, rip = 0x526ba4d649ac9358, rsp = 0xe81fd03ea07c40f8, rbp = 0 ---
                          db:1:pfs>  show registers
                          cs                        0x20
                          ds                        0x3b
                          es                        0x3b
                          fs                        0x13
                          gs                        0x1b
                          ss                           0
                          rax                       0x12
                          rcx         0xffffffff81457767
                          rdx         0xfffffe001d7d9fd0
                          rbx                      0x100
                          rsp         0xfffffe001d7da390
                          rbp         0xfffffe001d7da390
                          rsi                       0x2d
                          rdi         0xffffffff82d40298  vt_conswindow+0x10
                          r8                           0
                          r9                           0
                          r10                          0
                          r11                          0
                          r12                          0
                          r13                          0
                          r14         0xffffffff813db3a1
                          r15         0xfffffe0020565720
                          rip         0xffffffff80d38812  kdb_enter+0x32
                          rflags                    0x82
                          kdb_enter+0x32: movq    $0,0x2344ff3(%rip)
                          db:1:pfs>  show pcpu
                          cpuid        = 0
                          dynamic pcpu = 0x122bf00
                          curthread    = 0xfffffe0020565720: pid 0 tid 100007 critnest 1 "if_io_tqg_0"
                          curpcb       = 0xfffffe0020565c40
                          fpcurthread  = none
                          idlethread   = 0xfffffe00205673a0: tid 100003 "idle: cpu0"
                          self         = 0xffffffff84210000
                          curpmap      = 0xffffffff83021ab0
                          tssp         = 0xffffffff84210384
                          rsp0         = 0xfffffe001d7db000
                          kcr3         = 0x73a43000
                          ucr3         = 0xffffffffffffffff
                          scr3         = 0x15ba88000
                          gs32p        = 0xffffffff84210404
                          ldt          = 0xffffffff84210444
                          tss          = 0xffffffff84210434
                          curvnet      = 0xfffff80001241400
                          db:1:pfs>  run lockinfo
                          db:2:lockinfo> show locks
                          No such command; use "help" to list available commands
                          db:2:lockinfo>  show alllocks
                          No such command; use "help" to list available commands
                          db:2:lockinfo>  show lockedvnods
                          Locked vnodes
                          **************************************************************************************
                          
                          Fatal trap 12: page fault while in kernel mode
                          cpuid = 0; apic id = 00
                          fault virtual address	= 0x50
                          fault code		= supervisor read data, page not present
                          instruction pointer	= 0x20:0xffffffff80fb86d7
                          stack pointer	        = 0x0:0xfffffe001d7da6b0
                          frame pointer	        = 0x0:0xfffffe001d7da770
                          code segment		= base 0x0, limit 0xfffff, type 0x1b
                          			= DPL 0, pres 1, long 1, def32 0, gran 1
                          processor eflags	= interrupt enabled, resume, IOPL = 0
                          current process		= 0 (if_io_tqg_0)
                          rdi: fffff8011bf9c80e rsi: fffffe002049d82d rdx: 0000000000000000
                          rcx: fffffe002049d370  r8: fffffe001d7da7d0  r9: 0000000000000000
                          rax: 0000000000000000 rbx: fffff8015b76d3b0 rbp: fffffe001d7da770
                          r10: 0000000000000000 r11: fffffe002049d370 r12: fffffe002049d370
                          r13: 0000000000000002 r14: fffff802da989c60 r15: fffffe001d7da9f8
                          trap number		= 12
                          panic: page fault
                          cpuid = 0
                          time = 1695450285
                          KDB: enter: panic
                          
                          net.isr.numthreads: 1
                          net.isr.maxprot: 16
                          net.isr.defaultqlimit: 256
                          net.isr.maxqlimit: 10240
                          net.isr.bindthreads: 0
                          net.isr.maxthreads: 1
                          net.isr.dispatch: hybrid
                          
                          1 Reply Last reply Reply Quote 0
                          • W
                            w0w
                            last edited by Sep 23, 2023, 6:43 AM

                            If it makes sense, I have re-configured both nodes with LAGGs to exactly match order and interface names, but it did not change anything in this behavior. So far I can't reproduce this in VMs, but one of the VMs was crashed once sometime ago when I tried other pf bug replication, unfortunately I have not saved this crash, but it was similar, fatal trap 12, referring to two exact things:
                            fault virtual address = 0x50
                            and
                            fault code = supervisor read data, page not present

                            C 1 Reply Last reply Sep 25, 2023, 3:57 PM Reply Quote 0
                            • C
                              cmcdonald Netgate Developer @w0w
                              last edited by Sep 25, 2023, 3:57 PM

                              @w0w Can you try disabling pfsync?

                              Need help fast? https://www.netgate.com/support

                              W 2 Replies Last reply Sep 25, 2023, 4:23 PM Reply Quote 0
                              • W
                                w0w @cmcdonald
                                last edited by Sep 25, 2023, 4:23 PM

                                @cmcdonald
                                Last time when I disabled pfsync, it stopped to crash. But I need to re-test it.

                                1 Reply Last reply Reply Quote 0
                                • W
                                  w0w @cmcdonald
                                  last edited by Sep 25, 2023, 4:46 PM

                                  @cmcdonald
                                  Yes, looks like the problem is limited to “Synchronize states” option.

                                  K C 2 Replies Last reply Sep 27, 2023, 1:38 PM Reply Quote 0
                                  • K
                                    kprovost @w0w
                                    last edited by Sep 27, 2023, 1:38 PM

                                    @w0w I've had a look at that dump, and while I think I've identified what's going wrong I do not understand how we can end up in that situation.

                                    It'd be interesting to get a full core dump (as opposed to these text dumps). Are you up for reproducing the problem and sharing a core dump (along with the exact version you triggered the crash on, of course)?

                                    Short version: add a device for a swap partition, ideally at least as large as system RAM. A USB stick should work. (Note you'll lose all data on the stick!)
                                    If the USB (or other) swap device is da0 do:

                                    gpart destroy -F da0
                                    gpart create -s gpt da0
                                    gpart add -t freebsd-swap da0
                                    

                                    Add /dev/da0p1 none swap sw 0 0 to /etc/fstab.
                                    Edit /etc/pfSense-ddb.conf and change the script kdb.enter.default to script kdb.enter.default=bt ; show registers ; dump ; reset.

                                    Reboot.

                                    Future panics should dump a kernel core to the swap partition, which will get saved to /var/crash on the next boot. Those files (along with an exact version number of the system this happened on) should let us dig a bit deeper.

                                    1 Reply Last reply Reply Quote 1
                                    • C
                                      cmcdonald Netgate Developer @w0w
                                      last edited by Sep 27, 2023, 2:42 PM

                                      @w0w What if you restrict pfsync updates from primary to secondary only, a vice-versa...instead of bi-directional syncing?

                                      Need help fast? https://www.netgate.com/support

                                      W 1 Reply Last reply Sep 27, 2023, 4:21 PM Reply Quote 1
                                      • W
                                        w0w @cmcdonald
                                        last edited by Sep 27, 2023, 4:21 PM

                                        @cmcdonald That's what I did last time 😊
                                        It looks like it stopped to crash, but maybe it needs further testing, not sure.
                                        @kprovost
                                        I posted some links with core dumps created privately 🙄

                                        C 1 Reply Last reply Sep 27, 2023, 8:11 PM Reply Quote 0
                                        • C
                                          cmcdonald Netgate Developer @w0w
                                          last edited by Sep 27, 2023, 8:11 PM

                                          @w0w disabling which sync path (primary to secondary or secondary to primary) ?

                                          Need help fast? https://www.netgate.com/support

                                          W 1 Reply Last reply Sep 28, 2023, 2:15 AM Reply Quote 0
                                          15 out of 27
                                          • First post
                                            15/27
                                            Last post
                                          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.