A memory leak in hs_mountfs() was observed during snv_52 ONPIT run in two of our systems:
+------------+---------------+----------+------------+------+----------+----------+
| NAME | SYSTEM_DESC | PROC_NUM | PROC_SPEED | RAM | BUS_TYPE | NET_TYPE |
+------------+---------------+----------+------------+------+----------+----------+
| lisinopril | SUNW,Ultra-60 | 2 | 450 | 1024 | SCSI | hme |
| gaire | i86pc,Opteron | 2 | 2000 | 2048 | IDE | elxl |
+------------+---------------+----------+------------+------+----------+----------+
We have other Opterons and Ultra-60s in our lab that did not show this issue.
The leak is reproducible on the above systems, and they are different than the
rest because both have a documentation CD mounted on the CD tray.
# df -h
Filesystem size used avail capacity Mounted on
...
/dev/dsk/c0t4d0s2 43M 43M 0K 100% /media/DOCUMENTATION_CD
...
Crash dump files have been copied to:
/net/diablo.ireland/export/crash/snv_52/findleaks/hs_mountfs
Here's the output from ::findleaks running on the above core dump files obtained after a
reboot -d command:
> ::status
debugging crash dump /var/crash/lisinopril/vmcore.0 (64-bit) from lisinopril
operating system: 5.11 snv_52 (sun4u)
panic message: forced crash dump initiated at user request
dump content: kernel pages only
> kmem_flags/X
kmem_flags:
kmem_flags: f
> moddebug/X
moddebug:
moddebug: 20000
> ::findleaks -dv
findleaks: maximum buffers => 77310
findleaks: actual buffers => 76479
findleaks:
findleaks: potential pointers => 5742373
findleaks: dismissals => 5204795 (90.6%)
findleaks: misses => 53305 ( 0.9%)
findleaks: dups => 407796 ( 7.1%)
findleaks: follows => 76477 ( 1.3%)
findleaks:
findleaks: peak memory usage => 1868 kB
findleaks: elapsed CPU time => 1.7 seconds
findleaks: elapsed wall time => 2.1 seconds
findleaks:
CACHE LEAKED BUFCTL CALLER
000003000005c288 1 0000030004813ef8 get_syms+0x78
0000030000059908 1 0000030004a4c690 hs_mountfs+0x11c
------------------------------------------------------------------------
Total 2 buffers, 608 bytes
kmem_alloc_224 leak: 1 buffer, 224 bytes
ADDR BUFADDR TIMESTAMP THREAD
CACHE LASTLOG CONTENTS
30004a4c690 30006484008 1fd3398338 30005fadb00
30000059908 300010d7000 30002335980
kmem_cache_alloc+0x88
kmem_zalloc+0x28
hs_mountfs+0x11c
hsfs_mount+0x258
domount+0x984
mount+0xec
syscall_ap+0x44