[DragonFlyBSD - Bug #2930] 'objcache' causes panic during 'nfs_readdir'

bugtracker-admin at leaf.dragonflybsd.org bugtracker-admin at leaf.dragonflybsd.org
Tue Jul 26 13:09:11 PDT 2016

Issue #2930 has been updated by tofergus.

It seems that 'nfs' creats an 'objcache_create_simple' for the 'NFS Node' structures, however, 'objcache_simple' does not seem to allow 'kmalloc' to return NULL and thus, we 'panic'.

Unclear to me how this should be resolved.  It would seem that 'objcache_simple' should set 'M_NULLOK' to allow and propagate the NULL return but I would need a much better understanding of all subsystems before guessing where and how that should happen.

Bug #2930: 'objcache' causes panic during 'nfs_readdir'

* Author: tofergus
* Status: New
* Priority: High
* Assignee: 
* Category: VFS subsystem
* Target version: 
'vkernel' with '/home' file system mounted from host produces the following panic when trying to read a directory with 10s of 1000s of files.  Increasing memory to the 'vkernel' avoids the issue.

panic: NFS node: malloc limit exceeded
cpuid = 0
Trace beginning at frame 0x80291f70a0
panic() at 0x4bc587
panic() at 0x4bc587
kmalloc() at 0x4b87aa
objcache_malloc_alloc() at 0x4af344
objcache_get() at 0x4afba5
nfs_nget_nonblock() at 0x5f7ab4

CPU0 stopping CPUs: 0x0000000000000000
Stopped at      0x6ab941:       movb    $0,0x1165564(%rip)

You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: http://bugs.dragonflybsd.org/my/account

More information about the Bugs mailing list