|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] HVMlite ABI specification DRAFT A
El 4/2/16 a les 19:51, Samuel Thibault ha escrit:
> Boris Ostrovsky, on Thu 04 Feb 2016 13:38:02 -0500, wrote:
>> On 02/04/2016 12:48 PM, Roger Pau Monné wrote:
>>> The format of the boot start info structure is the following (pointed to
>>> be %ebx):
>>>
>>> struct hvm_start_info {
>>> #define HVM_START_MAGIC_VALUE 0x336ec578
>>> uint32_t magic; /* Contains the magic value 0x336ec578
>>> */
>>> /* ("xEn3" with the 0x80 bit of the "E"
>>> set).*/
>>> uint32_t flags; /* SIF_xxx flags.
>>> */
>>> uint32_t cmdline_paddr; /* Physical address of the command
>>> line. */
>>> uint32_t nr_modules; /* Number of modules passed to the
>>> kernel. */
>>> uint32_t modlist_paddr; /* Physical address of an array of
>>> */
>>> /* hvm_modlist_entry.
>>> */
>>> };
>>>
>>> struct hvm_modlist_entry {
>>> uint32_t paddr; /* Physical address of the module.
>>> */
>>> uint32_t size; /* Size of the module in bytes.
>>> */
>>> };
>>
>> If there is more than one module, how is the guest expected to sort out
>> which module is what?
In general I was expecting this would be done by position, or if that's
not enough an additional module (at either position 0 or n) should be
passed to contain that information.
> +1
> We need that to pass parameters to gnumach modules.
Hm, parameters as in a string that's paired with a module, or something
more complex like a metadata block?
I see that multiboot provides a string associated with each module, we
could do the same IMHO. I'm fine with adding it to the boot ABI, but I
would prefer if someone with access to such an OS does the actual
implementation of this feature.
Just to be clear that we are on the same page, then the _entry struct
becomes:
struct hvm_modlist_entry {
uint32_t paddr;
uint32_t size;
uint32_t cmdline_paddr;
};
cmdline_paddr would work the same way as it does in the hvm_start_info
struct (ie: physical address of a zero-terminated ASCII string).
I think I'm going to re-write this in binary form (getting rid of the
structs), or else people are going to get the implementation wrong due
to paddings.
Roger.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |