On Tue, Jul 04, 2017 at 12:22:23PM +0200, Martin Pieuchot wrote:
> Using a pool for 'radix_node_head' should fix the problem. pf_table
> seems to be the only place where such nodes are freed. I converted
> rn_inithead() to be able to audit all consumers of this API.
>
> Diff below.
New diff, new problem, this time in NFS server.
Panic happens during /usr/src/regress/sys/ffs/nfs setup.
login: panic: free: non-malloced addr 0xd4b81630 type rtable
Stopped at db_enter+0x7: leave
TID PID UID PRFLAGS PFLAGS CPU COMMAND
382123 44974 0 0x100002 0 1 sh
*424094 92583 0 0 0 0 mountd
db_enter(d09d2ab3,f5820bb8,d0baf53c,f5820bb8,d4aa5600) at db_enter+0x7
panic(d0baf53c,d4b81630,d0aaab21,d4aa5600,2) at panic+0x71
free(d4b81630,5,0,d09157dc,d4ad2a9c) at free+0xd5
vfs_free_addrlist(d5f88954,d4ad15f0,f5820c5c,d0779a59,d4ad2a9c) at vfs_free_add
rlist+0x45
vfs_export(d5e58c00,d5f88954,f5820cb0,d4ad15f0,d4a99454) at vfs_export+0x63
ffs_mount(d5e58c00,f5820e92,cf7cd2fc,f5820e2c,d4a99454) at ffs_mount+0x55d
sys_mount(d4a99454,f5820f54,f5820f7c,0,286) at sys_mount+0x2f0
syscall() at syscall+0x250
--- syscall (number -813903004) ---
0x6:
bluhm