Hi Christian,
Thank you for your answers!
On Wed, Oct 7, 2015 at 9:09 AM, Christian Helmuth < christian.helmuth@...1...> wrote:
Hello Abhay Amala,
On Tue, Oct 06, 2015 at 11:29:25PM +0200, Abhay Amala wrote:
I execute run/demo on base-nova successfully. i have tried to run make run/noux_bash in my nova build directory, but i am not getting command prompt inside my qemu. After displaying the following outputs, it gets stuck.
[...]
[init -> ps2_drv] Using keyboard with scan code set 1 (xlate). [init -> ps2_drv] Detected ExPS/2 mouse - activating scroll-wheel and 5-button support. [init -> platform_drv] PS2 uses IRQ, vector 0x1 [init -> platform_drv] PS2 uses IRQ, vector 0xc
At this point the PS/2 driver hangs. This is a known issue with the new Qemu GTK front end, but we had no time to look into it up to now. Please add to your <nova-build-dir>/etc/build.conf the following line
QEMU_OPT += -display sdl
and retry.
I added the above line and executed the run script again, but there is no change, still the output.
Regarding the problem with base-linux on Ubuntu 14.04, I hope somebody in the community using this particular version will speak up. Unfortunately, I'm of no help as I'm still using 12.04 LTS ;-)
On the other hand, you may try to debug it yourself with my guidance. First, I'd start to instrument the fb_sdl server component. If you're on Genode 15.08 you'll find the sources in
repos/os/src/drivers/framebuffer/sdl/
The input handling is implemented in input.cc in the function wait_for_event(), which is executed in the main thread of the component. (The actual server runs in a separate thread providing the RPC entrypoint for clients.) You can add a trace output at line 156 (right after "if ... SDL_GetMouseState()") like follows
PLOG("event type=%s (%u)", event.type == SDL_KEYUP ? "SDL_KEYUP" : event.type == SDL_KEYDOWN ? "SDL_KEYDOWN" : event.type == SDL_MOUSEBUTTONUP ? "SDL_MOUSEBUTTONUP" : event.type == SDL_MOUSEBUTTONDOWN ? "SDL_MOUSEBUTTONDOWN" : event.type == SDL_MOUSEBUTTONDOWN ? "SDL_MOUSEBUTTONDOWN" : event.type == SDL_MOUSEMOTION ? "SDL_MOUSEMOTION" : event.type == SDL_ACTIVEEVENT ? "SDL_ACTIVEEVENT" : "other", event.type);
It may also be of interest if the input driver tries to submit an excessive number of invalid events for unknown event types. Please also look at line 195 and instrument with
if (type == Event::INVALID) PINF("submit invalid event");
I'm curious what you'll discover.
I did what you mentioned above, and I got the following outputs.
init -> terminal] create terminal session [init -> terminal] new terminal session: [init -> terminal] framebuffer has 1024x768 pixels [init -> terminal] character size is 6x14 pixels [init -> terminal] terminal size is 170x54 characters [init -> fb_sdl] event type=other (13) [init -> fb_sdl] submit invalid event [init -> fb_sdl] event type=other (13) [init -> fb_sdl] submit invalid event [init -> fb_sdl] event type=other (13) [init -> fb_sdl] submit invalid event [init -> fb_sdl] event type=other (13) [init -> fb_sdl] submit invalid event [init -> fb_sdl] event type=other (13) [init -> fb_sdl] submit invalid event
Best regards, Abhay
Regards
Christian Helmuth Genode Labs
http://www.genode-labs.com/ · http://genode.org/ https://twitter.com/GenodeLabs · /ˈdʒiː.nəʊd/
Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
Full-scale, agent-less Infrastructure Monitoring from a single dashboard Integrate with 40+ ManageEngine ITSM Solutions for complete visibility Physical-Virtual-Cloud Infrastructure monitoring from one console Real user monitoring with APM Insights and performance trend reports Learn More http://pubads.g.doubleclick.net/gampad/clk?id=247754911&iu=/4140 _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main