Date: Thu, 06 Jul 2006 16:21:55 -0600 From: Scott Long <scottl@samsco.org> To: John Baldwin <jhb@FreeBSD.org> Cc: cvs-src@FreeBSD.org, src-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/amd64/linux32 syscalls.master src/sys/compat/linux linux_ioctl.c src/sys/i386/linux syscalls.master Message-ID: <44AD8D03.3000706@samsco.org> In-Reply-To: <200607061808.16440.jhb@freebsd.org> References: <200607062142.k66LgaoV050809@repoman.freebsd.org> <44AD8667.9090600@samsco.org> <200607061808.16440.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
John Baldwin wrote: > On Thursday 06 July 2006 17:53, Scott Long wrote: > >>John Baldwin wrote: >> >>>jhb 2006-07-06 21:42:36 UTC >>> >>> FreeBSD src repository >>> >>> Modified files: >>> sys/amd64/linux32 syscalls.master >>> sys/compat/linux linux_ioctl.c >>> sys/i386/linux syscalls.master >>> Log: >>> - Protect the list of linux ioctl handlers with an sx lock. >>> - Hold Giant while calling linux ioctl handlers for now as they aren't > > all > >>> known to be MPSAFE yet. >>> - Mark linux_ioctl() MPSAFE. >>> >>> Revision Changes Path >>> 1.15 +1 -1 src/sys/amd64/linux32/syscalls.master >>> 1.137 +17 -0 src/sys/compat/linux/linux_ioctl.c >>> 1.72 +1 -1 src/sys/i386/linux/syscalls.master >> >>Why not add the small bit of infrastucture so that modules can declare >>their handlers as MPSAFE or not? There are certainly some drivers that >>would benefit from this. > > > We can certainly do that. I'm up to at least 3 places that this could be > done now: > > - module event handlers > - sysinit's > - linux_ioctl handlers > > For now my focus is on eliminating syscall mpsafe flag, and most syscalls > can be made Giant free at this point, but for a few Giant is just being > pushed part of the way in. > What I'm afraid of is that these things will get forgotten now that they have been pushed out of the way. Are you interested in taking the next step here? Scott
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?44AD8D03.3000706>