lkml.org 
[lkml]   [2012]   [Jun]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2 1/5] x86: Add helper variables and functions to hold VMCSINFO
On 05/16/2012 10:52 AM, zhangyanfei wrote:
> This patch provides a set of variables to hold the VMCSINFO and also
> some helper functions to help fill the VMCSINFO.

Need to document the format.


> +void vmcsinfo_append_id(u32 id)
> +{
> + size_t r;
> +
> + r = sizeof(id);
> + if (r + vmcsinfo_size > vmcsinfo_max_size)
> + return;
> +
> + memcpy(&vmcsinfo_data[vmcsinfo_size], &id, r);
> + vmcsinfo_size += r;
> +}
> +EXPORT_SYMBOL_GPL(vmcsinfo_append_id);
> +
> +void vmcsinfo_append_field(u32 field, u64 offset)

Why u64? It's guaranteed to fit within a page.

> +{
> + size_t r;
> +
> + r = sizeof(field) + sizeof(offset);
> + if (r + vmcsinfo_size > vmcsinfo_max_size)
> + return;
> +
> + memcpy(&vmcsinfo_data[vmcsinfo_size], &field, sizeof(field));
> + vmcsinfo_size += sizeof(field);
> + memcpy(&vmcsinfo_data[vmcsinfo_size], &offset, sizeof(offset));
> + vmcsinfo_size += sizeof(offset);

Instead of this vmcsinfo_data, how about a struct with fields for the
revision ID and field count, and an array for the fields? Should be a
lot simpler.

> +}
> +EXPORT_SYMBOL_GPL(vmcsinfo_append_field);
> +
> +unsigned long paddr_vmcsinfo_note(void)
> +{
> + return __pa((unsigned long)(char *)&vmcsinfo_note);
> +}
>


--
error compiling committee.c: too many arguments to function




\
 
 \ /
  Last update: 2012-06-14 16:01    [W:0.311 / U:0.380 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site