Hi Jiri, I've just debugged code with precompiled BIOS from qemu 1.4.1. ENOMEM returned by physmem_map() when vesafb tries to map framebuffer when it sets mode. physmem_map() fails to map the framebuffer because it asked to map 0 frames. 0 frames come from kfb.size = kfb.scanline*kfb.height with kfb.scanline = ModeInfo->LinBytesPerScanLine = 0 since LinBytesPerScanLine field introduced only in 3rd version of VBE.
Now vesafb uses BytesPerScanLine field and there is no errors with old bios. 2014-07-10 10:35 GMT+04:00, Jiri Svoboda <[email protected]>: > Hi Wolf, > "" > > "could you please checkout it with bugfixes and test now under the same > conditions? I suppose error was caused by wild pionter. (Such a > noobish mistake. Don't understand how is it happened that bug > manifested itself only now) > " > I tried it, but it's the same - works in 2.0.0, but doesn't work in 1.4.1. I > might try to debug it, but let's first wait if fixing the problem with > compositor connection helps (since even the workaround with the thread is > racy and could, potentially, be the cause). > > > > > Btw. I was too eager to remove overcomplicated code... and found out it had > its purpose :-) So in the end I ended up with more fixing. When you merge > mainline,2134, you'll need to make a small adjustment to vesafb, similar to > what I did in kfb (remove implementation of graph_dev_iface and add a > trivial connection handler function that calls graph_visualizer_connection() > . > > > > > > Cheers, > > Jiri > > _______________________________________________ HelenOS-devel mailing list [email protected] http://lists.modry.cz/listinfo/helenos-devel
