mouse interactivity (Re: svn commit: r182109 - head/sys/dev/syscons)
Kris Kennaway
kris at FreeBSD.org
Mon Aug 25 13:46:21 UTC 2008
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.
Kris
More information about the freebsd-current
mailing list