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

Reply via email to