[OpenAFS] slab error in kmem_cache_destroy

Hendrik Hoeth hendrik.hoeth@cern.ch
Fri, 20 Jan 2006 01:58:39 +0100


I'm running a debian stable on i686, kernel Downloaded the
debian sources for openafs-1.4.0-3 from "testing" and compiled it with
debuild. Installed the client, build and installed the kernel module.

When I started the client, it ran into a firewall between the client and
the db-servers of the cell (stupid, I know), so the afsd couldn't mount
/afs. I did afsd -shutdown and rmmod'ed the module.

Now I find in the kern.log:

 slab error in kmem_cache_destroy(): cache `afs_inode_cache': Can't free all objects
  [<c013b716>] kmem_cache_destroy+0xb6/0xf0
  [<f8a82fad>] afs_destroy_inodecache+0xd/0x30 [openafs]
  [<f8a82b30>] osi_sysctl_clean+0x10/0x20 [openafs]
  [<f8a93279>] cleanup_module+0x19/0x23 [openafs]
  [<c012c4db>] sys_delete_module+0x14b/0x190
  [<c014477e>] unmap_vma_list+0xe/0x20
  [<c0144ada>] do_munmap+0xea/0x120
  [<c0144b50>] sys_munmap+0x40/0x70
  [<c01026d5>] syscall_call+0x7/0xb
 afs_inode_cache: not all structures were freed

Any hints, ideas, ...? What's this error about?



sh -c 'set 2 1 0 / . - + ^ : , ! %;y=70;for a in $* $*;do x=54;while [ \
${#s} -lt 79 ];do r=0;i=0;for b in % $*;do [ $(((q=r*r)+(t=i*i))) -ge 9\
999 ]&&break;i=$((y+(r*i)/32));r=$((x+(q-t)/64));done;s=$b$s;x=$((x-2))\
;done;y=$((y-6));echo $s;s=;done;'