On 04/19/2013 07:00 PM, Ján Veselý wrote:
> On Fri, Apr 19, 2013 at 5:49 PM, Jiří Zárevúcky
> <[email protected]> wrote:
>>>>> [...]
>>>>
>>>> I do not know how qemu deals with hw emulation, but I suspect this
>>>> problem only affected me because I own a gaming mouse (1000Hz update
>>>> rate).
>>>
>>> 1000Hz is high above ps2 limit (200Hz), unless qemu throttles it down.
>>> every event is 4 interrupt messages, 1 ps2 driver read msg and 1 or 2
>>> event reports.
>>>
>>> 6000-7000 messages per second (not counting console and other stuff)
>>> just to move a mouse seems pretty high
>>>
>>
>> Unfortunately, I don't have any other mouse to check with.
>> The question is, do we try to fix this, or at least make it safe (even
>> if not really usable)? Or do we just assume it's a qemu bug and leave
>> it?
> 
> The situation is definitely pathological, but the crash should be fixed.
> It looks like a missing malloc check somewhere. IMO the best
> approach would be to just drop the interrupt if the handling fibril
> cannot be created,
> ignoring the resulting breakage.
In fact, the current code seems to do exactly this -- see
process_notification in async.c (lines 601-605). But I don't think we
need to create a new fibril for each notification, see my other e-mail.

Martin Sucha


_______________________________________________
HelenOS-devel mailing list
[email protected]
http://lists.modry.cz/cgi-bin/listinfo/helenos-devel

Reply via email to