mouse interactivity (Re: svn commit: r182109 -
head/sys/dev/syscons)
Ed Schouten
ed at 80386.nl
Mon Aug 25 14:19:52 UTC 2008
* Kris Kennaway <kris at FreeBSD.org> wrote:
> Ed Schouten wrote:
>> Author: ed
>> Date: Sun Aug 24 15:20:44 2008
>> New Revision: 182109
>> URL: http://svn.freebsd.org/changeset/base/182109
>>
>> Log:
>> Make sysmouse(4) use its own locks, instead of using Giant.
>> When I changed syscons(4) to work with the MPSAFE TTY code, I just
>> locked all device nodes down using the compatibility feature that allows
>> you to override the TTY's lock (Giant in this case). Upon closer
>> inspection, it seems sysmouse(4) only has two internal variables that
>> need locking: mouse_level and mouse_status.
>> I haven't done any performance benchmarks on this, though I think
>> it
>> won't have any dramatic improvements on the system. It is good to get
>> rid of Giant here, because the third argument of tty_alloc() has only
>> been added to ease migration to MPSAFE TTY. It should not be used when
>> not needed.
>> While there, remove SC_MOUSE, which is a leftover from the MPSAFE
>> TTY
>> import.
>
> This might help mouse interactivity for desktop users that have legacy
> Giant-locked systems in use (e.g. busy MSDOS filesystems, giant-locked
> disk drivers), etc.
Yes, but only a very very little bit. moused still delivers the input to
/dev/consolectl, which is still Giant locked. The part where the Xorg
server reads from /dev/sysmouse is now Giant-free.
--
Ed Schouten <ed at 80386.nl>
WWW: http://80386.nl/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20080825/afec0a70/attachment.pgp
More information about the freebsd-current
mailing list