From: "Chen, Tiejun" <tiejun.chen@intel.com>
To: Wei Liu <wei.liu2@citrix.com>
Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
Ian Jackson <ian.jackson@eu.citrix.com>,
Ian Campbell <ian.campbell@citrix.com>,
xen-devel@lists.xen.org
Subject: Re: [v5][PATCH 10/16] tools: introduce some new parameters to set rdm policy
Date: Wed, 08 Jul 2015 08:54:11 +0800 [thread overview]
Message-ID: <559C74B3.7090909@intel.com> (raw)
In-Reply-To: <20150707102150.GQ1134@zion.uk.xensource.com>
>> +"none" is the default value and it means we don't check any reserved regions
>> +and then all rdm policies would be ignored. Guest just works as before and
>> +the conflict of RDM and guest address space wouldn't be handled, and then
>> +this may result in the associated device not being able to work or even crash
>> +the VM. So if you're assigning this kind of device, this option is not
>> +recommended unless you can make sure any conflict doesn't exist.
>> +
>
> One issue didn't come to conclusion during last round of review. Ian was
> asking what's the difference with type=none vs not specifying rdm option
> at all.
>
> You need to either convince Ian or remove "type=none" in *xl* level.
> I.e. don't touch the libxl IDL. It still needs a none type.
I'll update this next revision. And also rephrase this doc to address
your comments below.
Thanks
Tiejun
>
>> +For example, you're trying to set "memory = 2800" to allocate memory to one
>> +given VM but the platform owns two RDM regions like,
>> +
>> +RMRR region: base_addr ac6d3000 end_address ac6e6fff
>> +RMRR region: base_addr ad800000 end_address afffffff
>> +
>> +In this conflict case,
>> +
>> +#1. If the type options is set with "none",
>> +
>
> If B<type> is set to "none", for example,
>
>> +rdm = "type=none,reserve=strict" or rdm = "type=none,reserve=relaxed"
>> +
>> +mean we don't handle any conflict just to make VM keep running as before.
>> +Note this is our default behavior.
>> +
>
> It means we don't handle any conflict to make VM run as before. This is
> the default behavior.
>
>> +#2. If the type options is set with "host",
>> +
>
> If B<type> is set to "host", for example,
>
>> +rdm = "type=host,reserve=strict" or rdm = "type=host,reserve=relaxed"
>> +
>> +mean all conflict would be handled according to our policies which is
>> +introduced by the reserve option as described below.
>> +
>
> It means all conflicts will be handled according to the policy
> introduced by B<reserve> as described below.
>
>> +=item B<reserve="STRING">
>> +
>> +Specifies how to deal with conflicts discovered when reserving reserved device
>> +memory in the guest address space.
>> +
>
> Specifies how to deal with conflicts when reserving reserved device
> memory in guest address space.
>
>> +When that conflict is unsolved,
>> +
>> +"strict" means this VM can't be created successfully, or the associated device
>> +can't be attached in the case of hotplug;
>> +
>
> "strict" means VM can't be created, or the associated device can't be
> attached in the case of hotplug.
>
>> +"relaxed" allows a VM to be created to keep running with a warning message
>> +thrown out. But this may crash this VM if this device accesses RDM. For example,
>> +Windows IGD GFX driver always access these regions so this lead to a blue screen
>> +to crash VM in such a case.
>> +
>
> "relaxed" allows VM to be created but may cause VM to crash if
> pass-through device accesses RDM. For exampl,e Windows IGD GFX driver
> always accessed RDM regions so it leads to VM crash.
>
> Wei.
>
>
next prev parent reply other threads:[~2015-07-08 0:54 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-07 6:17 [v5][PATCH 00/16] Fix RMRR Tiejun Chen
2015-07-07 6:17 ` [v5][PATCH 01/16] xen: introduce XENMEM_reserved_device_memory_map Tiejun Chen
2015-07-07 11:17 ` Ian Jackson
2015-07-07 12:46 ` Jan Beulich
2015-07-07 13:23 ` Ian Jackson
2015-07-07 14:05 ` Jan Beulich
2015-07-07 21:32 ` Chen, Tiejun
2015-07-08 6:25 ` Jan Beulich
2015-07-07 6:17 ` [v5][PATCH 02/16] xen/vtd: create RMRR mapping Tiejun Chen
2015-07-07 6:17 ` [v5][PATCH 03/16] xen/passthrough: extend hypercall to support rdm reservation policy Tiejun Chen
2015-07-07 6:17 ` [v5][PATCH 04/16] xen: enable XENMEM_memory_map in hvm Tiejun Chen
2015-07-07 6:17 ` [v5][PATCH 05/16] hvmloader: get guest memory map into memory_map[] Tiejun Chen
2015-07-07 6:17 ` [v5][PATCH 06/16] hvmloader/pci: skip reserved ranges Tiejun Chen
2015-07-07 6:17 ` [v5][PATCH 07/16] hvmloader/e820: construct guest e820 table Tiejun Chen
2015-07-07 6:17 ` [v5][PATCH 08/16] tools/libxc: Expose new hypercall xc_reserved_device_memory_map Tiejun Chen
2015-07-07 6:17 ` [v5][PATCH 09/16] tools: extend xc_assign_device() to support rdm reservation policy Tiejun Chen
2015-07-07 6:17 ` [v5][PATCH 10/16] tools: introduce some new parameters to set rdm policy Tiejun Chen
2015-07-07 10:21 ` Wei Liu
2015-07-08 0:54 ` Chen, Tiejun [this message]
2015-07-08 8:32 ` Ian Campbell
2015-07-08 9:06 ` Chen, Tiejun
2015-07-08 9:17 ` Ian Campbell
2015-07-07 11:47 ` Ian Jackson
2015-07-07 12:03 ` Chen, Tiejun
2015-07-07 12:14 ` Ian Jackson
2015-07-07 12:31 ` Chen, Tiejun
2015-07-07 13:26 ` Ian Jackson
2015-07-07 13:53 ` Chen, Tiejun
2015-07-07 14:16 ` Ian Jackson
2015-07-07 14:40 ` Ian Jackson
2015-07-07 15:16 ` Chen, Tiejun
2015-07-07 15:39 ` Chen, Tiejun
2015-07-07 17:08 ` Ian Jackson
2015-07-07 21:45 ` Chen, Tiejun
2015-07-07 6:17 ` [v5][PATCH 11/16] tools/libxl: detect and avoid conflicts with RDM Tiejun Chen
2015-07-07 11:20 ` Wei Liu
2015-07-07 11:51 ` Ian Jackson
2015-07-07 12:08 ` Wei Liu
2015-07-07 12:16 ` Ian Jackson
2015-07-07 11:57 ` Ian Jackson
2015-07-07 14:52 ` Chen, Tiejun
2015-07-07 14:57 ` Ian Jackson
2015-07-07 15:27 ` Chen, Tiejun
2015-07-07 16:01 ` Ian Jackson
2015-07-07 6:17 ` [v5][PATCH 12/16] tools: introduce a new parameter to set a predefined rdm boundary Tiejun Chen
2015-07-07 11:22 ` Wei Liu
2015-07-07 6:17 ` [v5][PATCH 13/16] libxl: construct e820 map with RDM information for HVM guest Tiejun Chen
2015-07-07 9:03 ` Wei Liu
2015-07-07 6:17 ` [v5][PATCH 14/16] xen/vtd: enable USB device assignment Tiejun Chen
2015-07-07 6:17 ` [v5][PATCH 15/16] xen/vtd: prevent from assign the device with shared rmrr Tiejun Chen
2015-07-07 6:17 ` [v5][PATCH 16/16] tools: parse to enable new rdm policy parameters 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=559C74B3.7090909@intel.com \
--to=tiejun.chen@intel.com \
--cc=ian.campbell@citrix.com \
--cc=ian.jackson@eu.citrix.com \
--cc=stefano.stabellini@eu.citrix.com \
--cc=wei.liu2@citrix.com \
--cc=xen-devel@lists.xen.org \
/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).