On 2015/7/7 21:26, Ian Jackson wrote:
Chen, Tiejun writes ("Re: [v5][PATCH 10/16] tools: introduce some new parameters to
set rdm policy"):
[Later:]
As I discussed with Campbell we'd like not to expose "none" in xl level
since this is equivalent to that case we don't set anything.
I think this observation of mine applies to the libxl API level too.
Sorry I don't know what I should do at this point.
I was suggesting (in text that you have snipped) that "none" in the
API should be remamed "ignore".
So sounds you're saying these two changes,
@@ -77,7 +77,7 @@ libxl_domain_type = Enumeration("domain_type", [
], init_val = "LIBXL_DOMAIN_TYPE_INVALID")
libxl_rdm_reserve_type = Enumeration("rdm_reserve_type", [
- (0, "none"),
+ (0, "ignore"),
(1, "host"),
])
@@ -381,8 +381,8 @@ libxl_vnode_info = Struct("vnode_info", [
])
libxl_rdm_reserve = Struct("rdm_reserve", [
- ("type", libxl_rdm_reserve_type),
- ("reserve", libxl_rdm_reserve_flag),
+ ("strategy", libxl_rdm_reserve_type),
+ ("reserve", libxl_rdm_reserve_flag),
])
libxl_domain_build_info = Struct("domain_build_info",[
Right?
This suggests that the default is "do the dangerous thing". That
doesn't seem right.
As I discussed with Campbell we'd like not to expose "none" in xl level
since this is equivalent to that case we don't set anything.
That's not really an answer to what I have said, I think.
Why is the default the option that the documentation recommends to
avoid ?
I mean not all devices really needs this option and actually these
devices are very rare. Currently just IGD GFX needs this consideration
so we'd like to make "none" as a default value.
What happens if "host" is used as a default with other devices ?
"host" just means we should concern all RDMS no matter if these devices
own any RDM, and even actually you don't pass though any devices.
AFAICT such other decices do not have any RDM so "host" would work
fine.
Yes but its really not pointless to keep setting host if you already
make sure nothing is involved to RDM. So why we still set 'host' to cost
those instructions cycles in this case? I don't think its not better to
set 'host' by default.
"none" means we have a chance to work as before since not all devices
own RDM. But as I said above this is same as !rdm.
Are we expecting many existing devices, and existing setups, to break
if we don't make the default be to ignore the problem ?
If we don't set anything we don't hope you can ignore this existing problem.
Is "none" not "hoping the user can ignore the problem" ?
Its impossible since the hypervisor or tools can't prevent from
accessing RDM by a VM. So as I said early, "none" is just suitable to
two cases,
#1. Those devices don't own any RDM
#2. Guest OS doesn't access RDM
Compared to other cases, these two cases are more popular in real world
and actual usage. So we'd like to keep "none" as a default.
Thanks
Tiejun
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel