mouse interactivity (Re: svn commit: r182109 - head/sys/dev/syscons)

Kris Kennaway kris at FreeBSD.org
Mon Aug 25 14:04:04 UTC 2008


Kris Kennaway 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.

(obviously, only if you're using sysmouse)

Kris


More information about the freebsd-current mailing list