This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] Problems booting Xen on Toshiba Satellite L505

To: Roger Cruz <roger.cruz@xxxxxxxxxxxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] Problems booting Xen on Toshiba Satellite L505
From: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Date: Tue, 3 Aug 2010 22:38:13 +0100
Delivery-date: Tue, 03 Aug 2010 14:40:09 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <EACA7CA90354A849B1315959042A052C26F453@xxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcszPwKfxGJXFchGSNq78zvrX5XwjgAB7C5IAADbbV4AAoLo1g==
Thread-topic: [Xen-devel] Problems booting Xen on Toshiba Satellite L505
User-agent: Microsoft-Entourage/
On 03/08/2010 21:26, "Roger Cruz" <roger.cruz@xxxxxxxxxxxxxxxxxxx> 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@xxxxxxxxxxxxx]
> Sent: Tue 8/3/2010 4:01 PM
> To: Roger Cruz; xen-devel@xxxxxxxxxxxxxxxxxxx
> Subject: Re: [Xen-devel] Problems booting Xen on Toshiba Satellite L505
> On 03/08/2010 20:06, "Roger Cruz" <roger.cruz@xxxxxxxxxxxxxxxxxxx> 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

Xen-devel mailing list