Re: [RFC/RFT] calloutng

From: Fabian Keil <freebsd-listen_at_fabiankeil.de>
Date: Thu, 20 Dec 2012 19:12:43 +0100
Alexander Motin <mav_at_FreeBSD.org> wrote:

> On 20.12.2012 15:26, Fabian Keil wrote:
> > Alexander Motin <mav_at_FreeBSD.org> wrote:
> >
> >> On 20.12.2012 12:56, Fabian Keil wrote:
> >>> Alexander Motin <mav_at_FreeBSD.org> wrote:
> >>>
> >>>> Experiments with dummynet shown ineffective support for very short
> >>>> tick-based callouts. New version fixes that, allowing to get as many
> >>>> tick-based callout events as hz value permits, while still be able to
> >>>> aggregate events and generating minimum of interrupts.
> >>>>
> >>>> Also this version modifies system load average calculation to fix some
> >>>> cases existing in HEAD and 9 branches, that could be fixed with new
> >>>> direct callout functionality.
> >>>>
> >>>> http://people.freebsd.org/~mav/calloutng_12_17.patch
> >>>
> >>> With this patch (and the previous one, I didn't test the others)
> >>> my mouse cursor is occasionally not reacting for short amounts of
> >>> time (less than a second, but long enough to be noticeable).

> >> Could you try to revert part of the patch, related to dev/atkbdc? I am
> >> not strong in details of that hardware, but in comments there mention
> >> that they are related. May be lost keyboard interrupts (which polling
> >> rate was increased to 1 second) cause PS/2 mouse delays.
> >
> > I reverted the changes to sys/dev/atkbdc/* about an hour ago
> > and so far it's looking good. I'll report back tomorrow after
> > some more testing.
>
> Thank you for the report. If it will be fine. you can try to reapply 
> that part of the patch, just changing line:
> callout_reset_flags(&sc->callout, hz, atkbdtimeout, dev, C_PRELSET(0));
> to the:
> callout_reset_flags(&sc->callout, hz/10, atkbdtimeout, dev, C_PRELSET(0));
> 
> It should about to restore original polling interval, but still make it 
> more flexible then original.

With this change the mouse stops working completely after moving
the cursor a couple of pixels, at which point dmesg shows:
 
kbdc: TEST_AUX_PORT status:0000
kbdc: RESET_AUX return code:00fa
kbdc: RESET_AUX status:00aa
kbdc: RESET_AUX ID:0000

Using the keyboard frequently causes duplicated characters.

I'm aware of a problem in vanilla CURRENT where the mouse stops working
with similar looking messages when the cursor is being moved "at the wrong
moment", but this happens less than once a week and I haven't been able to
track it down yet. It's possible that it's the same bug and your patch just
triggers it more reliable (two times in a row). I haven't seen the
duplicated-characters issue before, though.

Just for kicks I also tried:

callout_reset_flags(&sc->callout, hz/100, atkbdtimeout, dev, C_PRELSET(0));

but with this modification I can't even enter my login password
and thus can't tell if the mouse would work.

Fabian

Received on Thu Dec 20 2012 - 17:16:42 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:33 UTC