Messages in this thread | | | From | Murilo Pontes <> | Subject | Re: psmouse.c, throwing 3 bytes away | Date | Thu, 5 Feb 2004 19:08:21 +0000 |
| |
Em Qui 05 Fev 2004 20:59, você escreveu: > The exception seems to be coming from > linux-2.6.2/drivers/input/mouse/psmouse-base.c, specifically from > > if (psmouse->state == PSMOUSE_ACTIVATED && > psmouse->pktcnt && time_after(jiffies, psmouse->last + > HZ/2)) { > printk(KERN_WARNING "psmouse.c: %s at %s lost > synchronization, throwing %d bytes away.\n", > psmouse->name, psmouse->phys, psmouse->pktcnt); > psmouse->pktcnt = 0; > } > > > where (for me) HZ is 1804768000, and therefore HZ/2 is 902384000, > psmouse->pktcnt is 3, and (I assume) PSMOUSE_ACTIVATED is non-0 after > boot. I assume that pktcnt is fed by interrupt, and the problem then is > that psmouse->last + HZ/2 blows past the jiffies value, causing the > warning message to be issued. When mouse service finally comes back, > pktcnt is non-zero (and possibly whatever the maximum is that it will > hold), and when it flushes, the mouse pointer goes nuts for a second. > The real problem then, is why does the sum of ps->last + HZ/2 grow to > beyond the size of jiffies (or what is delaying the mouse service)? > > This is just a rough guesstimate of what is going on, but seems to fit > the facts. Cheers! > > Bob Always in heavy load(like c++ compiling, high volume of VM operations), kernel jiffies are more large or short delay....
Bug is solved? I am open to receive patchs for test! Please send when avaliable!
Thanks
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |