Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 24 Mar 2003 14:33:55 +0200
From:      Alexey Zelkin <phantom@FreeBSD.org.ua>
To:        Ruslan Ermilov <ru@FreeBSD.org>
Cc:        Chip Norkus <wd@arpa.com>, hackers@FreeBSD.org
Subject:   Re: KVM mice issues
Message-ID:  <20030324143355.A52752@phantom.cris.net>
In-Reply-To: <20030324105024.GE23857@sunbay.com>; from ru@FreeBSD.org on Mon, Mar 24, 2003 at 12:50:24PM %2B0200
References:  <200303230957.36433.wd@arpa.com> <20030324105024.GE23857@sunbay.com>

next in thread | previous in thread | raw e-mail | index | archive | help
hi,

Yep.  In order to avoid moused(8) getting something crazy (after
console switch) I just forced psm reset after synchronization error
detection.  It can be achieved by changing changing of
PSM_SYNCERR_THRESHOLD1 define from 20 to 0 (in file sys/isa/psm.c).

Please try to do it and let me know result, if you're also happy
with solution -- I'll cleanup and commit my patch which forces such
behaviour using sysctl(8).

On Mon, Mar 24, 2003 at 12:50:24PM +0200, Ruslan Ermilov wrote:
> I think Alexey was having similar issues, and may have some
> non-production quality patches for you to try.
> 
> On Sun, Mar 23, 2003 at 09:57:36AM -0600, Chip Norkus wrote:
> > 
> > Greetings hackers,
> > 
> > I have a KVM switch and a fairly new (Logitech MouseMan+ cordless) mouse, 
> > and I've found that while FreeBSD properly detects the mouse and all its 
> > functionality (buttons, scrollwheel, etc) upon boot if I switch to 
> > another port on the KVM and then switch back my mouse "loses" its 
> > functionality.
> > 
> > After spending a while trying to figure out this problem (and reading PRs 
> > on the issue (esp. i386/25463)) I found that a solution was not 
> > immediately available, but might be somewhat easy to achieve.  In 
> > particular, for my mouse, the mouse driver can and does detect invalid 
> > packets, and invalid packets are always received after a return to my 
> > FreeBSD system via the KVM.  I found that doing a reinitialization of the 
> > device would fix the mouse, but that doing it from the interrupt handler 
> > (in sys/isa/psm.c around line 2170) caused some intermediate problems.  
> > Normally the mouse would just bounce around and generate click events for 
> > a while and then settle down, but occasionally the driver (or maybe 
> > mouse?) would lock solid and I'd have to reboot the system.
> > 
> > Anyways, I'd like to work further on this problem and hopefully find a 
> > solution, but I'm having some trouble understanding where and what I 
> > should do.  I'm not a novice C hacker, but I *am* a very novice kernel 
> > hacker and would appreciate help from anyone with knowledge of the psm 
> > (and atkbdc) code.  I've considered maybe adding an ioctl to reset the 
> > mouse and adding a signal handler to moused to force a reset, but that 
> > seems kind of silly when the kernel driver can detect the problem itself 
> > and resolve it.  On the other hand, maybe that's the right way to go?  
> > Advice would be greatly appreciated.
> > 
> > -chip
> > -- 
> > chip norkus; renaissance hacker;                wd@arpa.com
> > "question = (to) ? be : !be;" --Shakespeare     http://telekinesis.org/
> > 
> > 
> > To Unsubscribe: send mail to majordomo@FreeBSD.org
> > with "unsubscribe freebsd-hackers" in the body of the message
> 
> -- 
> Ruslan Ermilov		Sysadmin and DBA,
> ru@sunbay.com		Sunbay Software AG,
> ru@FreeBSD.org		FreeBSD committer,
> +380.652.512.251	Simferopol, Ukraine
> 
> http://www.FreeBSD.org	The Power To Serve
> http://www.oracle.com	Enabling The Information Age



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030324143355.A52752>