xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: "Chen, Tiejun" <tiejun.chen@intel.com>
To: Jan Beulich <JBeulich@suse.com>,
	ian.campbell@citrix.com, ian.jackson@eu.citrix.com,
	stefano.stabellini@eu.citrix.com
Cc: yang.z.zhang@intel.com, andrew.cooper3@citrix.com,
	kevin.tian@intel.com, xen-devel@lists.xen.org
Subject: Re: [v5][PATCH 06/10] hvm_info_table: introduce nr_reserved_device_memory_map
Date: Thu, 04 Sep 2014 14:55:43 +0800	[thread overview]
Message-ID: <54080CEF.30402@intel.com> (raw)
In-Reply-To: <540823BA0200007800030B88@mail.emea.novell.com>

On 2014/9/4 14:32, Jan Beulich wrote:
>>>> On 04.09.14 at 04:07, <tiejun.chen@intel.com> wrote:
>> On 2014/9/2 16:34, Jan Beulich wrote:
>>>>>> On 26.08.14 at 13:02, <tiejun.chen@intel.com> wrote:
>>>> libxc can expose how many reserved device memory entries
>>>> hvmloader should get. And '0' means that doesn't exist so
>>>> we can skip this check.
>>>
>>> I assume you introduce this without consumer to limit patch size. In
>>> such a case title _and_ description should be more meaningful as
>>> to what this really does and what it's intended use is.
>>
>> This patch involves two files, one is xen file,
>> xen/include/public/hvm/hvm_info_table.h, and a tools file,
>> tools/libxc/xc_hvm_build_x86.c.
>>
>> So I'm considering to split with two small patches like this:
>>
>> #1 Introduce this new field in xen/include/public/hvm/hvm_info_table.h
>>
>> xen/hvm_info_table: introduce a new field nr_device_reserved_memory_map
>>
>> In hvm_info_table this field represents the number of all device memory
>> maps. It will be convenient to expose such a information to VM.
>>
>> #2 Construct this field in tools/libxc/xc_hvm_build_x86.c
>>
>> tools/libxc: construct nr_device_reserved_memory_map
>>
>> While building hvm info, libxc is responsible for constructing
>> this number after check_drm_overlap().
>>
>> Is it reasonable to use different patches covering xen internal and
>> tools, respectively?
>
> I don't see the "xen internal" here. As said this is an interface
> between tool stack and hvmloader, both of which are tools
> components.

Understood.

>
>> Or just one is already fine?
>
> I think so.
>
>>>> --- a/xen/include/public/hvm/hvm_info_table.h
>>>> +++ b/xen/include/public/hvm/hvm_info_table.h
>>>> @@ -67,6 +67,9 @@ struct hvm_info_table {
>>>>
>>>>        /* Bitmap of which CPUs are online at boot time. */
>>>>        uint8_t     vcpu_online[(HVM_MAX_VCPUS + 7)/8];
>>>> +
>>>> +    /* How many reserved device memory does this domain have? */
>>>> +    uint32_t    nr_reserved_device_memory_map;
>>>>    };
>>>
>>> This being defacto a private interface between tools and hvmloader
>>> I wonder if it wouldn't be better to put this before the (in the future)
>>> eventually growing vcpu_online[].
>>>
>>
>> Any latest consideration? Could we push line above 'uint8_t
>> vcpu_online[(HVM_MAX_VCPUS + 7)/8];'?
>>
>> And I just think it may be reasonable and convenient to expose this info
>> in hvm_info_table since this is a fixed value that we should record for
>> all VMs.
>
> I think information easily obtained via hypercall doesn't belong here,

Yes, but just don't feel better to call twice hypercall in hvmloader 
since this means we have to reallocate memory to store all entries.

This is a little bit different what we did in libxc since we can't get 
that number of all entries directly in libxc. But here it may be fine.

> but I'd also prefer to have input from the tools maintainers here.
>

I think I already include all guys by get_maintainer.pc here, but maybe 
I need ping them actively, so you think who can give us a ack or nack 
eventually?

Thanks
Tiejun

  reply	other threads:[~2014-09-04  6:55 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-26 11:02 [v5][PATCH 0/10] xen: reserve RMRR to avoid conflicting MMIO/RAM Tiejun Chen
2014-08-26 11:02 ` [v5][PATCH 01/10] xen:vtd:rmrr: export acpi_rmrr_units Tiejun Chen
2014-08-26 11:02 ` [v5][PATCH 02/10] xen:vtd:rmrr: introduce acpi_rmrr_unit_entries Tiejun Chen
2014-08-26 11:02 ` [v5][PATCH 03/10] xen:x86: define a new hypercall to get RMRR mappings Tiejun Chen
2014-08-26 12:02   ` Andrew Cooper
2014-08-26 12:37     ` Jan Beulich
2014-08-27  1:37       ` Chen, Tiejun
2014-08-27  6:51         ` Jan Beulich
2014-08-27  7:21           ` Chen, Tiejun
2014-08-28  2:24             ` Chen, Tiejun
2014-08-28  6:50               ` Jan Beulich
2014-08-28  7:09                 ` Chen, Tiejun
2014-08-28  7:19                   ` Chen, Tiejun
2014-08-28  7:29                     ` Chen, Tiejun
2014-08-28  7:44                     ` Jan Beulich
2014-08-29  3:02                       ` Chen, Tiejun
2014-08-29  9:18                         ` Jan Beulich
2014-09-01  9:44                           ` Chen, Tiejun
2014-09-01 10:29                             ` Jan Beulich
2014-09-02  9:59                               ` Chen, Tiejun
2014-09-02 10:15                                 ` Jan Beulich
2014-09-02 11:10                                   ` Chen, Tiejun
2014-09-02 13:15                                     ` Jan Beulich
2014-09-03  1:45                                       ` Chen, Tiejun
2014-09-03  8:31                                         ` Chen, Tiejun
2014-09-03  8:41                                           ` Jan Beulich
2014-09-03  8:59                                             ` Chen, Tiejun
2014-09-03  9:01                                               ` Chen, Tiejun
2014-09-03  9:54                                                 ` Chen, Tiejun
2014-09-03 12:54                                             ` Jan Beulich
2014-09-04  1:15                                               ` Chen, Tiejun
2014-09-03  8:35                                         ` Jan Beulich
2014-08-27  1:15     ` Chen, Tiejun
2014-09-02  8:25   ` Jan Beulich
2014-08-26 11:02 ` [v5][PATCH 04/10] tools:libxc: introduce hypercall for xc_reserved_device_memory_map Tiejun Chen
2014-08-26 11:02 ` [v5][PATCH 05/10] tools:libxc: check if mmio BAR is out of RMRR mappings Tiejun Chen
2014-08-26 11:02 ` [v5][PATCH 06/10] hvm_info_table: introduce nr_reserved_device_memory_map Tiejun Chen
2014-09-02  8:34   ` Jan Beulich
2014-09-04  2:07     ` Chen, Tiejun
2014-09-04  6:32       ` Jan Beulich
2014-09-04  6:55         ` Chen, Tiejun [this message]
     [not found]           ` <54082E3B0200007800030BCB@mail.emea.novell.com>
2014-09-09  6:40             ` Chen, Tiejun
2014-08-26 11:02 ` [v5][PATCH 07/10] xen:x86:: support xc_reserved_device_memory_map in compat case Tiejun Chen
2014-09-02  8:35   ` Jan Beulich
2014-09-04  2:13     ` Chen, Tiejun
2014-08-26 11:02 ` [v5][PATCH 08/10] tools:firmware:hvmloader: introduce hypercall for xc_reserved_device_memory_map Tiejun Chen
2014-09-02  8:37   ` Jan Beulich
2014-08-26 11:02 ` [v5][PATCH 09/10] tools:firmware:hvmloader: check to reserve RMRR mappings in e820 Tiejun Chen
2014-09-02  8:47   ` Jan Beulich
2014-09-04  3:04     ` Chen, Tiejun
2014-09-04  4:32       ` Chen, Tiejun
2014-09-04  6:36       ` Jan Beulich
2014-08-26 11:03 ` [v5][PATCH 10/10] xen:vtd: make USB RMRR mapping safe Tiejun Chen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=54080CEF.30402@intel.com \
    --to=tiejun.chen@intel.com \
    --cc=JBeulich@suse.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=ian.campbell@citrix.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=kevin.tian@intel.com \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=xen-devel@lists.xen.org \
    --cc=yang.z.zhang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).