Date: Thu, 10 Jun 2004 18:30:23 -0700 From: Alfred Perlstein <alfred@freebsd.org> To: Robert Watson <rwatson@FreeBSD.org> Cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/kern uipc_usrreq.c Message-ID: <20040611013023.GJ78955@elvis.mu.org> In-Reply-To: <20040611012513.GI78955@elvis.mu.org> References: <200406102134.i5ALYcNr004704@repoman.freebsd.org> <20040611012513.GI78955@elvis.mu.org>
next in thread | previous in thread | raw e-mail | index | archive | help
* Alfred Perlstein <alfred@freebsd.org> [040610 18:26] wrote: > * Robert Watson <rwatson@FreeBSD.org> [040610 14:34] wrote: > > rwatson 2004-06-10 21:34:38 UTC > > > > FreeBSD src repository > > > > Modified files: > > sys/kern uipc_usrreq.c > > Log: > > Introduce a subsystem lock around UNIX domain sockets in order to protect > > global and allocated variables. This strategy is derived from work > > originally developed by BSDi for BSD/OS, and applied to FreeBSD by Sam > > Leffler: There's also a bug here in the locking I added for files/filedescs. On line 1525 nfiles is accessed without the filelist_lock held, so its value is inconsistant. A fix would be to peek at nfiles, do the allocation, then lock the filelist lock, then check the value to see if it changed if it changed to something lower, then free and re-malloc more memory. -- - Alfred Perlstein - Research Engineering Development Inc. - email: bright@mu.org cell: 408-480-4684
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040611013023.GJ78955>