miniupnp and pimd crash on my system
-
i was able to find why my system crash if i enable pimd or miniupnp
some time ago i applyed some tuning from here -> https://docs.netgate.com/pfsense/en/latest/hardware/tuning-and-troubleshooting-network-cards.html
under PPPoE with Multi-Queue NICs
Adding a System Tunable or loader.conf.local entry for net.isr.dispatch=deferred can lead to performance gains on such systems.
this in combination with upnp and / or pimd lead to the following crash:
tested on a new and clean pfsense installation (does not matter if pppoe or dhcp, it crash anyway)Crash report begins. Anonymous machine information: amd64 12.0-RELEASE-p10 FreeBSD 12.0-RELEASE-p10 ce9563d5729(RELENG_2_5) pfSense Crash report details: No PHP errors found. Filename: /var/crash/info.0 Dump header from device: /dev/label/swap0 Architecture: amd64 Architecture Version: 4 Dump Length: 156160 Blocksize: 512 Compression: none Dumptime: Mon Mar 30 21:17:07 2020 Hostname: pfSense.localdomain Magic: FreeBSD Text Dump Version String: FreeBSD 12.0-RELEASE-p10 ce9563d5729(RELENG_2_5) pfSense Panic String: Dump Parity: 3658602292 Bounds: 0 Dump Status: good Filename: /var/crash/textdump.tar.0 ddb.txt06000014000013640460723 7077 ustarrootwheeldb:0:kdb.enter.default> run lockinfo db:1:lockinfo> show locks No such command; use "help" to list available commands db:1:lockinfo> show alllocks No such command; use "help" to list available commands db:1:lockinfo> show lockedvnods Locked vnodes db:0:kdb.enter.default> show pcpu cpuid = 0 dynamic pcpu = 0xb45ac0 curthread = 0xfffff8000424e580: pid 12 tid 100028 "swi1: netisr 0"
-
Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x360 fault code = supervisor read data, page not present instruction pointer = 0x20:0xffffffff80e785f7 stack pointer = 0x28:0xfffffe0025b9f9a0 frame pointer = 0x28:0xfffffe0025b9fa00 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 0)
db:0:kdb.enter.default> bt Tracing pid 12 tid 100028 td 0xfffff8000424e580 swi_net() at swi_net+0x167/frame 0xfffffe0025b9fa00 ithread_loop() at ithread_loop+0x1a7/frame 0xfffffe0025b9fa70 fork_exit() at fork_exit+0x83/frame 0xfffffe0025b9fab0 fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe0025b9fab0
The crash is in netisr so the change you made could be related. Though I don't see how it would be related to either miniupnpd or pimd specifically.
Probably nothing that can be done there except to change that dispatch method back to the default for now. Eventually when we move 2.5.0 up to 12-STABLE you might try again.
Also, you will want to delete that attachment. The message buffer in the textdump had large chunks of your config.xml and you probably don't want all that info out there.
EDIT: I removed the attachment files from the backend. I didn't edit your post to remove the links.