WARNING - OLD ARCHIVES

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/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] Bootstrap in mini-os

To: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] Bootstrap in mini-os
From: "Jayaraman, Bhaskar" <Bhaskar.Jayaraman@xxxxxxx>
Date: Fri, 27 Jun 2008 02:55:58 +0800
Accept-language: en-US
Acceptlanguage: en-US
Delivery-date: Thu, 26 Jun 2008 11:56:28 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
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/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AQHI17nfv+taSFfPekmWs/cm/olWrw==
Thread-topic: Bootstrap in mini-os
Hi i hope this is the right mailing list for discussing stuff on Mini-OS.

1] I have been looking through its sources and I wanted to know what is the 
bootstrap code comprised of in Mini-os.

2] The start_info pages seem to contain bootstrap pages in them and also the 
mini-os kernel text loads itself at virtual address 0x00 as directed by the lds 
script so does the bootstrap code come from Xen loader.

3] Also I guess the start pfn begins after the bootstrap pfn as mentioned here??

 /* First page follows page table pages and 3 more pages (store page etc) */
    start_pfn = PFN_UP(to_phys(start_info.pt_base)) +
                start_info.nr_pt_frames + 3;

If so why is the text virtual address being deducted from bootstrap page in 
to_phys ??

#define VIRT_START                 ((unsigned long)&_text)
#define to_phys(x)                 ((unsigned long)(x)-VIRT_START)

4] So kernel text will reside before bootstrap code? Which is why I'm curious 
to know if this is part of bootloader code.

5] What is being achieved by deducting the kernel text virtual address from the 
bootstrap virtual address? I mean why do we not want to account for that space 
while organizing mini-os memory?
i.e. if text were to be loaded at 1MB and bootstrap was at 2 MB we will have 
start pfn at 1 MB according to the calculations above and not at 2MB. Why is 
that so?

6] Why are we Oring 7 with shared info page while mapping it with the 
hypervisor?
HYPERVISOR_update_va_mapping(
                (unsigned long)shared_info, __pte(pa | 7), UVMF_INVLPG)


7] Will this virtual address be listed in the mfn_list, the page frame list for 
this VM before this hypercall?

Regards,
Bhaskar.

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

<Prev in Thread] Current Thread [Next in Thread>