xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* Problems booting Xen on Toshiba Satellite L505
@ 2010-08-03 19:06 Roger Cruz
  2010-08-03 20:01 ` Keir Fraser
  0 siblings, 1 reply; 5+ messages in thread
From: Roger Cruz @ 2010-08-03 19:06 UTC (permalink / raw)
  To: xen-devel


[-- Attachment #1.1: Type: text/plain, Size: 1323 bytes --]


I have tried Xen-3.4.2 and Xen-4.1-unstable on a new i3 Toshiba Satellite L505 and with both versions, I get a blinking cursor upon boot.  I used the code from 3.4.2 to narrow down the problem to this section of code in x86_64.S

        /* Initialise IDT with simple error defaults. */
        leaq    ignore_int(%rip),%rcx
        movl    %ecx,%eax
        andl    $0xFFFF0000,%eax
        orl     $0x00008E00,%eax
        shlq    $32,%rax
        movl    %ecx,%edx
        andl    $0x0000FFFF,%edx
        orl     $(__HYPERVISOR_CS64<<16),%edx
        orq     %rdx,%rax
        shrq    $32,%rcx
        movl    %ecx,%edx
        leaq    idt_table(%rip),%rdi
        movl    $256,%ecx
1:      movq    %rax,(%rdi)          
        movq    %rdx,8(%rdi)
        addq    $16,%rdi
        loop    1b

The code never gets out of the loop to execute the following lines:

        /* Pass off the Multiboot info structure to C land. */
        mov     multiboot_ptr(%rip),%edi
        call    __start_xen

By playing around with the loop counter in ECX, I determined that loading vectors 0-6 works (ie, it gets out of the loop)... but as soon as vector 7 is written, we never get out of the loop and I get a blinking cursor.  Does anyone have any ideas or suggestions?

Thanks

Roger R. Cruz


[-- Attachment #1.2: Type: text/html, Size: 2938 bytes --]

[-- Attachment #2: Type: text/plain, Size: 138 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Problems booting Xen on Toshiba Satellite L505
  2010-08-03 19:06 Problems booting Xen on Toshiba Satellite L505 Roger Cruz
@ 2010-08-03 20:01 ` Keir Fraser
  2010-08-03 20:26   ` Roger Cruz
  2010-08-04 19:09   ` Roger Cruz
  0 siblings, 2 replies; 5+ messages in thread
From: Keir Fraser @ 2010-08-03 20:01 UTC (permalink / raw)
  To: Roger Cruz, xen-devel@lists.xensource.com

On 03/08/2010 20:06, "Roger Cruz" <roger.cruz@virtualcomputer.com> wrote:

> 
> 
> I have tried Xen-3.4.2 and Xen-4.1-unstable on a new i3 Toshiba Satellite L505
> and with both versions, I get a blinking cursor upon boot.  I used the code
> from 3.4.2 to narrow down the problem to this section of code in x86_64.S

Never heard of anything like this. You'll have to fiddle around some more
I'm afraid. Can you get any output onto the screen before this point, and
maybe get some debug tracing out that way... Does everything work okay if
you get out of the loop? Vector 7 is device-not-available, so could be FPU
related perhaps.

 K.

>         /* Initialise IDT with simple error defaults. */
>         leaq    ignore_int(%rip),%rcx
>         movl    %ecx,%eax
>         andl    $0xFFFF0000,%eax
>         orl     $0x00008E00,%eax
>         shlq    $32,%rax
>         movl    %ecx,%edx
>         andl    $0x0000FFFF,%edx
>         orl     $(__HYPERVISOR_CS64<<16),%edx
>         orq     %rdx,%rax
>         shrq    $32,%rcx
>         movl    %ecx,%edx
>         leaq    idt_table(%rip),%rdi
>         movl    $256,%ecx
> 1:      movq    %rax,(%rdi)
>         movq    %rdx,8(%rdi)
>         addq    $16,%rdi
>         loop    1b
> 
> The code never gets out of the loop to execute the following lines:
> 
>         /* Pass off the Multiboot info structure to C land. */
>         mov     multiboot_ptr(%rip),%edi
>         call    __start_xen
> 
> By playing around with the loop counter in ECX, I determined that loading
> vectors 0-6 works (ie, it gets out of the loop)... but as soon as vector 7 is
> written, we never get out of the loop and I get a blinking cursor.  Does
> anyone have any ideas or suggestions?
> 
> Thanks
> 
> Roger R. Cruz
> 
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: Problems booting Xen on Toshiba Satellite L505
  2010-08-03 20:01 ` Keir Fraser
@ 2010-08-03 20:26   ` Roger Cruz
  2010-08-03 21:38     ` Keir Fraser
  2010-08-04 19:09   ` Roger Cruz
  1 sibling, 1 reply; 5+ messages in thread
From: Roger Cruz @ 2010-08-03 20:26 UTC (permalink / raw)
  To: Keir Fraser, xen-devel


[-- Attachment #1.1: Type: text/plain, Size: 2940 bytes --]


There is no output at this point.  The only output before is when we are in real-mode and I purposely used the vga boot option with an illegal value.  This allows me to then see the list of valid values and enter one.  After that point, the code switches from real to protected mode.   Based on my level of understanding, in order to make further BIOS calls to print anything to the screen, I would have to switch to real mode and then back to protected.  I would probably spend a lot of time trying to get that part right so right now I'm simply using a "ud2" instruction to cause a reboot.  I move that instruction around the code and that is how I managed to narrow down the problem to the IDT initialization.

I'll continue to play with this but I only have the laptop for one more day, so if anyone else has suggestions, I'm all ears.

Thanks for your help Keir.

Roger R. Cruz

-----Original Message-----
From: Keir Fraser [mailto:keir.fraser@eu.citrix.com]
Sent: Tue 8/3/2010 4:01 PM
To: Roger Cruz; xen-devel@lists.xensource.com
Subject: Re: [Xen-devel] Problems booting Xen on Toshiba Satellite L505
 
On 03/08/2010 20:06, "Roger Cruz" <roger.cruz@virtualcomputer.com> wrote:

> 
> 
> I have tried Xen-3.4.2 and Xen-4.1-unstable on a new i3 Toshiba Satellite L505
> and with both versions, I get a blinking cursor upon boot.  I used the code
> from 3.4.2 to narrow down the problem to this section of code in x86_64.S

Never heard of anything like this. You'll have to fiddle around some more
I'm afraid. Can you get any output onto the screen before this point, and
maybe get some debug tracing out that way... Does everything work okay if
you get out of the loop? Vector 7 is device-not-available, so could be FPU
related perhaps.

 K.

>         /* Initialise IDT with simple error defaults. */
>         leaq    ignore_int(%rip),%rcx
>         movl    %ecx,%eax
>         andl    $0xFFFF0000,%eax
>         orl     $0x00008E00,%eax
>         shlq    $32,%rax
>         movl    %ecx,%edx
>         andl    $0x0000FFFF,%edx
>         orl     $(__HYPERVISOR_CS64<<16),%edx
>         orq     %rdx,%rax
>         shrq    $32,%rcx
>         movl    %ecx,%edx
>         leaq    idt_table(%rip),%rdi
>         movl    $256,%ecx
> 1:      movq    %rax,(%rdi)
>         movq    %rdx,8(%rdi)
>         addq    $16,%rdi
>         loop    1b
> 
> The code never gets out of the loop to execute the following lines:
> 
>         /* Pass off the Multiboot info structure to C land. */
>         mov     multiboot_ptr(%rip),%edi
>         call    __start_xen
> 
> By playing around with the loop counter in ECX, I determined that loading
> vectors 0-6 works (ie, it gets out of the loop)... but as soon as vector 7 is
> written, we never get out of the loop and I get a blinking cursor.  Does
> anyone have any ideas or suggestions?
> 
> Thanks
> 
> Roger R. Cruz
> 
> 




[-- Attachment #1.2: Type: text/html, Size: 4990 bytes --]

[-- Attachment #2: Type: text/plain, Size: 138 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Problems booting Xen on Toshiba Satellite L505
  2010-08-03 20:26   ` Roger Cruz
@ 2010-08-03 21:38     ` Keir Fraser
  0 siblings, 0 replies; 5+ messages in thread
From: Keir Fraser @ 2010-08-03 21:38 UTC (permalink / raw)
  To: Roger Cruz, xen-devel@lists.xensource.com

On 03/08/2010 21:26, "Roger Cruz" <roger.cruz@virtualcomputer.com> wrote:

> 
> 
> There is no output at this point.  The only output before is when we are in
> real-mode and I purposely used the vga boot option with an illegal value.
> This allows me to then see the list of valid values and enter one.  After that
> point, the code switches from real to protected mode.   Based on my level of
> understanding, in order to make further BIOS calls to print anything to the
> screen, I would have to switch to real mode and then back to protected.  I
> would probably spend a lot of time trying to get that part right so right now
> I'm simply using a "ud2" instruction to cause a reboot.  I move that
> instruction around the code and that is how I managed to narrow down the
> problem to the IDT initialization.

You should be able to dump characters out to a graphics card in text mode.
See the code at label 'print_err' in head.S for example.

 -- Keir

> I'll continue to play with this but I only have the laptop for one more day,
> so if anyone else has suggestions, I'm all ears.
> 
> Thanks for your help Keir.
> 
> Roger R. Cruz
> 
> -----Original Message-----
> From: Keir Fraser [mailto:keir.fraser@eu.citrix.com]
> Sent: Tue 8/3/2010 4:01 PM
> To: Roger Cruz; xen-devel@lists.xensource.com
> Subject: Re: [Xen-devel] Problems booting Xen on Toshiba Satellite L505
> 
> On 03/08/2010 20:06, "Roger Cruz" <roger.cruz@virtualcomputer.com> wrote:
> 
>> 
>> 
>> I have tried Xen-3.4.2 and Xen-4.1-unstable on a new i3 Toshiba Satellite
>> L505
>> and with both versions, I get a blinking cursor upon boot.  I used the code
>> from 3.4.2 to narrow down the problem to this section of code in x86_64.S
> 
> Never heard of anything like this. You'll have to fiddle around some more
> I'm afraid. Can you get any output onto the screen before this point, and
> maybe get some debug tracing out that way... Does everything work okay if
> you get out of the loop? Vector 7 is device-not-available, so could be FPU
> related perhaps.
> 
>  K.
> 
>>         /* Initialise IDT with simple error defaults. */
>>         leaq    ignore_int(%rip),%rcx
>>         movl    %ecx,%eax
>>         andl    $0xFFFF0000,%eax
>>         orl     $0x00008E00,%eax
>>         shlq    $32,%rax
>>         movl    %ecx,%edx
>>         andl    $0x0000FFFF,%edx
>>         orl     $(__HYPERVISOR_CS64<<16),%edx
>>         orq     %rdx,%rax
>>         shrq    $32,%rcx
>>         movl    %ecx,%edx
>>         leaq    idt_table(%rip),%rdi
>>         movl    $256,%ecx
>> 1:      movq    %rax,(%rdi)
>>         movq    %rdx,8(%rdi)
>>         addq    $16,%rdi
>>         loop    1b
>> 
>> The code never gets out of the loop to execute the following lines:
>> 
>>         /* Pass off the Multiboot info structure to C land. */
>>         mov     multiboot_ptr(%rip),%edi
>>         call    __start_xen
>> 
>> By playing around with the loop counter in ECX, I determined that loading
>> vectors 0-6 works (ie, it gets out of the loop)... but as soon as vector 7 is
>> written, we never get out of the loop and I get a blinking cursor.  Does
>> anyone have any ideas or suggestions?
>> 
>> Thanks
>> 
>> Roger R. Cruz
>> 
>> 
> 
> 
> 
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: Problems booting Xen on Toshiba Satellite L505
  2010-08-03 20:01 ` Keir Fraser
  2010-08-03 20:26   ` Roger Cruz
@ 2010-08-04 19:09   ` Roger Cruz
  1 sibling, 0 replies; 5+ messages in thread
From: Roger Cruz @ 2010-08-04 19:09 UTC (permalink / raw)
  To: Keir Fraser, xen-devel


[-- Attachment #1.1: Type: text/plain, Size: 2348 bytes --]


This turned out to be a buggy BIOS on these Toshiba laptops.  There is a work-around in the Ubuntu forums which fixes it.   Thanks for your help Keir.


http://ubuntuforums.org/showthread.php?t=1470732&page=2
http://kerneltrap.org/mailarchive/git-commits-head/2010/5/20/34989

Roger R. Cruz

-----Original Message-----
From: Keir Fraser [mailto:keir.fraser@eu.citrix.com]
Sent: Tue 8/3/2010 4:01 PM
To: Roger Cruz; xen-devel@lists.xensource.com
Subject: Re: [Xen-devel] Problems booting Xen on Toshiba Satellite L505
 
On 03/08/2010 20:06, "Roger Cruz" <roger.cruz@virtualcomputer.com> wrote:

> 
> 
> I have tried Xen-3.4.2 and Xen-4.1-unstable on a new i3 Toshiba Satellite L505
> and with both versions, I get a blinking cursor upon boot.  I used the code
> from 3.4.2 to narrow down the problem to this section of code in x86_64.S

Never heard of anything like this. You'll have to fiddle around some more
I'm afraid. Can you get any output onto the screen before this point, and
maybe get some debug tracing out that way... Does everything work okay if
you get out of the loop? Vector 7 is device-not-available, so could be FPU
related perhaps.

 K.

>         /* Initialise IDT with simple error defaults. */
>         leaq    ignore_int(%rip),%rcx
>         movl    %ecx,%eax
>         andl    $0xFFFF0000,%eax
>         orl     $0x00008E00,%eax
>         shlq    $32,%rax
>         movl    %ecx,%edx
>         andl    $0x0000FFFF,%edx
>         orl     $(__HYPERVISOR_CS64<<16),%edx
>         orq     %rdx,%rax
>         shrq    $32,%rcx
>         movl    %ecx,%edx
>         leaq    idt_table(%rip),%rdi
>         movl    $256,%ecx
> 1:      movq    %rax,(%rdi)
>         movq    %rdx,8(%rdi)
>         addq    $16,%rdi
>         loop    1b
> 
> The code never gets out of the loop to execute the following lines:
> 
>         /* Pass off the Multiboot info structure to C land. */
>         mov     multiboot_ptr(%rip),%edi
>         call    __start_xen
> 
> By playing around with the loop counter in ECX, I determined that loading
> vectors 0-6 works (ie, it gets out of the loop)... but as soon as vector 7 is
> written, we never get out of the loop and I get a blinking cursor.  Does
> anyone have any ideas or suggestions?
> 
> Thanks
> 
> Roger R. Cruz
> 
> 




[-- Attachment #1.2: Type: text/html, Size: 4519 bytes --]

[-- Attachment #2: Type: text/plain, Size: 138 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2010-08-04 19:09 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-08-03 19:06 Problems booting Xen on Toshiba Satellite L505 Roger Cruz
2010-08-03 20:01 ` Keir Fraser
2010-08-03 20:26   ` Roger Cruz
2010-08-03 21:38     ` Keir Fraser
2010-08-04 19:09   ` Roger Cruz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).