Hello Keqin, it looks like the PS/2 driver is getting user input (filling the ring buffer) but the input client (which is nitpicker in the demo scenario) is not requesting the input from the driver in a timely manner. There could be several causes for this:
* The nitpicker GUI server could not be started correctly. To see whether the problem lies within nitpicker, you might try instrumenting the code (located at os/src/server/nitpicker/'). For example, add a PDBG message at the 'Nitpicker::Main::Main' constructor. You might also instrument the 'Nitpicker::Main::handle_input' function to see a message each time, the GUI server gets an input event from the driver. * There is a problem in Qemu's PS/2 device model. Depending on the emulated hardware platform, some versions of Qemu have problems with emulating certain peripherals. We have repeatedly experienced such problems. Could you give a different Qemu version a try? I recommend to build Qemu from source: http://git.qemu.org/git/qemu.git Btw, currently, I am using version 1.6.2, which works fine for me. * The timer driver might not work correctly and thereby prevent nitpicker from fetching input events. To see if the timer works, please give 'make run/timer' a try. The corresponding run script is located at 'os/run/timer.run'. * The framebuffer driver might not work correctly, causing nitpicker to get stuch. To see if the framebuffer driver is working on your platform, please give 'make run/framebuffer' a try. The corresponding run script is located at 'os/run/framebuffer.run'. For further investigation, please provide us with the information about which version of Genode and which base platform you are using. Also, the complete log output would be helpful. Cheers Norman On 03/23/2014 04:31 PM, Sun Keqin wrote: > Hi all, > > I met a problem when I ran "demo" on Ubuntu which installed on > MACBOOK PRO with VMWare Fusion. The mouse didn't show up and the log > printed below. I have tried to change the size of Ring_buffer but it > didn't work. What should I do to fix that? > > Thanks > > > Keqin > > > [init -> launchpad] --- entering main loop --- > [init -> ps2_drv] C++ runtime: Ring_buffer<unsigned char, 1024>::Overflow > [init -> ps2_drv] void* abort(): abort called -- Dr.-Ing. Norman Feske Genode Labs http://www.genode-labs.com · http://genode.org Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth ------------------------------------------------------------------------------ _______________________________________________ Genode-main mailing list Genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main