cvs commit: src/sys/kern vfs_mount.c
Tim Robbins
tjr at FreeBSD.ORG
Thu Apr 24 02:15:57 PDT 2003
On Thu, Apr 24, 2003 at 01:16:07AM -0700, Tim J. Robbins wrote:
> tjr 2003/04/24 01:16:07 PDT
>
> FreeBSD src repository
>
> Modified files:
> sys/kern vfs_mount.c
> Log:
> Free mount credentials (mnt_cred) when freeing the mount struct
> in failure cases to avoid leaking struct ucreds, and ultimately
> leaking struct uidinfo references.
Here's the full log message, which explains the implications of the uidinfo
refcount leak.
//depot/user/tjr/freebsd-tjr/src/sys/kern/vfs_mount.c
... #3 change 29586 edit on 2003/04/23 by tjr at tjr_dev (text+ko)
Free mount credentials (mnt_cred) when freeing the mount struct
in failures cases to avoid leaking struct ucreds, and ultimately
leaking struct uidinfo references.
Since the uidinfo reference count was only a "u_short" until a few
days ago, this leak could quite easily have caused an overflow after
a few thousand failed mount attempts, leading to the struct uidinfo
being freed prematurely and the panics in uifree() that Kris was
seeing on the ports cluster. I'm not sure that this specific cred
leak was causing the problems -- I will look for more.
Tim
More information about the cvs-src
mailing list