[haiku-development] Re: Anyone seen this - Vesa delay

  • From: Jan Klötzke <jan.kloetzke@xxxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Tue, 8 Jul 2008 22:13:58 +0200

Bruno Albuquerque <bga@xxxxxxxxxxxxx> wrote:
> Stephan Assmus escreveu:
> > Thanks, applied in r26325. Going to check out the results on my other
> > machine in a minute and report back.
>
> Tried it here and no change concerning my problem (I don´t have the
> booting lag, but I get general OS error when trying to switch
> resolutions). Here is what I get in syslog when switching to a different
> resolution:
>
> KERN: vm_soft_fault: va 0x10ffc not covered by area in address space
> KERN: vm_page_fault: vm_soft_fault returned error 'Bad address' on fault
> at 0x10ffc, ip 0x4cab, write 1, user 1, thread 0xed
> KERN: vm_page_fault: sending team "app_server" 0x60 SIGSEGV, ip 0x4cab
> ("???" +0x4cab)
> KERN: vesa: vbe_get_mode_info(326): vm86 failed
> KERN: vesa: vesa_set_display_mode(): cannot get mode info

This looks like something else. I don't know why but the BIOS code seems to 
touch an address which it shouldn't access. Maybe another error in the 
emulation part but you could also change the following line in 
src/add-ons/kernel/drivers/graphics/vesa/vesa.cpp from:
        status_t status = vm86_prepare(&vmState, 0x2000);
to...
        status_t status = vm86_prepare(&vmState, 0x20000);
.

This will cover the location where the page fault happened. Maybe it helps for 
the time being...

/Jan

Other related posts: