kern/118017: [patch]: Memory leak in NTFS when unloading module
Ighighi
ighighi at gmail.com
Tue Nov 13 01:10:02 PST 2007
>Number: 118017
>Category: kern
>Synopsis: [patch]: Memory leak in NTFS when unloading module
>Confidential: no
>Severity: serious
>Priority: high
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Tue Nov 13 09:10:02 UTC 2007
>Closed-Date:
>Last-Modified:
>Originator: Ighighi
>Release: 6.3-PRERELEASE (RELENG_6)
>Organization:
>Environment:
FreeBSD orion 6.3-PRERELEASE FreeBSD 6.3-PRERELEASE #0: Mon Nov 12 08:12:36 VET 2007 root at orion:/usr/obj/usr/src/sys/CUSTOM i386
>Description:
When unloading ntfs.ko with kldunload(8), the following message appears in syslog:
"Warning: memory type NTFS nthash leaked memory on destroy (1 allocations, 65536 bytes leaked)."
The bug is in src/sys/fs/ntfs/ntfs_ihash.c
ntfs_nthashdestroy() is supposed to call hashdestroy(9) on ntfs_nthashtbl since
the latter was allocated with hashinit(9).
I've seen this message since 6.1. By looking at the sources for -CURRENT and
RELENG_7, it seems to me that they also contain this bug.
>How-To-Repeat:
/sbin/umount -v -t ntfs -a
/sbin/kldunload -v ntfs.ko
grep nthash /var/log/messages
>Fix:
The attached patch was successfully built and tested on FreeBSD 6.3-PRERELEASE.
Patch attached with submission follows:
--- src/sys/fs/ntfs/ntfs_ihash.c.orig 2005-01-06 14:10:39.000000000 -0400
+++ src/sys/fs/ntfs/ntfs_ihash.c 2007-11-13 03:59:58.252339682 -0400
@@ -73,6 +73,7 @@ ntfs_nthashinit()
void
ntfs_nthashdestroy(void)
{
+ hashdestroy(ntfs_nthashtbl, M_NTFSNTHASH, ntfs_nthash);
lockdestroy(&ntfs_hashlock);
mtx_destroy(&ntfs_nthash_mtx);
}
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list