[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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



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
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.