Avoid 'names_cache' memory leak with CONFIG_AUDITSYSCALL
authorLinus Torvalds <torvalds@g5.osdl.org>
Fri, 7 Oct 2005 04:54:21 +0000 (21:54 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Fri, 7 Oct 2005 04:54:21 +0000 (21:54 -0700)
commit829841146878e082613a49581ae252c071057c23
treeb38d26d6c99f043f14242351ac084f8b088a772b
parentedb4a3534adbaf90768d67da35f0bfeac4767db6
Avoid 'names_cache' memory leak with CONFIG_AUDITSYSCALL

The nameidata "last.name" is always allocated with "__getname()", and
should always be free'd with "__putname()".

Using "putname()" without the underscores will leak memory, because the
allocation will have been hidden from the AUDITSYSCALL code.

Arguably the real bug is that the AUDITSYSCALL code is really broken,
but in the meantime this fixes the problem people see.

Reported by Robert Derr, patch by Rick Lindsley.

Acked-by: Al Viro <viro@ftp.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
fs/namei.c