Hi,
Here is another one panic tag_unref(). Note that the change in
pf_purge_thread() has been backouted, but I test and report anyway
as we want to fix this stuff.
Basically we have to remove all malloc(9) from pf or make it MP
safe.
bluhm
login: panic: kernel diagnostic assertion "_kernel_lock_held()" failed: file
"/usr/src/sys/kern/kern_malloc.c", line 373
Stopped at db_enter+0x7: leave
TID PID UID PRFLAGS PFLAGS CPU COMMAND
*159741 24648 0 0x14000 0x200 0 pfpurge
db_enter(d0b75a09,f5480e38,d0baed34,f5480e38,d0be3fe0) at db_enter+0x7
panic(d0baed34,d09c409a,d0a42528,d0a92068,175) at panic+0x71
__assert(d09c409a,d0a92068,175,d0a42528,b8f) at __assert+0x2e
free(d7ecdd00,5,50,f5480ecc,d07b3375) at free+0x251
tag_unref(d0bdc660,1,f5480010,0,0) at tag_unref+0x77
pf_tag_unref(1,1,f5480f5c,d06dcb38,d0be0908) at pf_tag_unref+0x1a
pf_free_state(d7329380,ffffffff,40,0,1) at pf_free_state+0x186
pf_purge_expired_states(2,d0be0908,20,d0a39846,64) at pf_purge_expired_states+0
x62
pf_purge_thread(d774e2cc) at pf_purge_thread+0x6e