|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH for-4.5 v6 05/16] tools: Add vmware_port support
On Wed, 2014-09-24 at 12:31 -0400, Don Slutz wrote:
> On 09/23/14 08:20, Ian Campbell wrote:
> > On Mon, 2014-09-22 at 12:42 -0400, Don Slutz wrote:
> >>> The latter would allow moving to buildinfo.u.hvm, which would be nicer
> >>> from the libxl PoV, I think.
> >> I could not find "buildinfo.u.hvm":
> >>
> >>
> >> dcs-xen-54:~/xen>git grep buildinfo.u.hvm
> >> dcs-xen-54:~/xen>
> >>
> >>
> >> So unable to comment.
> > It's in the idl, next to createinfo.
>
> I take that to mean:
>
>
> libxl_domain_config = Struct("domain_config", [
> ("c_info", libxl_domain_create_info),
> ("b_info", libxl_domain_build_info),
> ...
>
> I.E.
>
> b_info->u.hvm
Yes.
> >> Currently I do not know of a way to
> >> say "set vmware_hw to 7
> >> if vmware_port is true and vmware_hw is not specified".
> > That's an error case, isn't it? Or at least a vmware_port is ignored
> > case.
>
> Nope. But I will agree that I have not done a lot with 3 (at least)
> state booleans. The 3 states being true, false, and not specified.
The third state is "default" as in: libxl sets something sensible based
on other criteria (internal choice, other settings etc).
> And vmware_port is not ignored.
>
> > What I suggested was "if vmware_hw is non-zero then set vmware_port".
> >
>
> I am reading that as "set vmware_port if not specified". To avoid
> complexity, I am treating vmware_hw as a boolean. Using this
> I get the following table:
>
> _hw _port
> 0 0 Just like today
> 1 0 Only cpuid leaves change -- very unlikey
> 1 1 Full VMware mode
> 0 1 VMware hyper call mode.
>
> Adding U for unspecified:
>
> _hw _port
> U U ==> _hw=0 _port=0
> 0 U ==> _hw=0 _port=0
> 1 U The case in question.
> U 0 ==> _hw=0 _port=0
> U 1 What I was talking about.
> 0 0 Just like today
> 1 0 Only cpuid leaves change -- very unlikey
> 1 1 Full VMware mode
> 0 1 VMware hyper call mode.
>
> The problem here is that vmware_hw is not a boolean and there is
> currently not a value that lets you know it has not been specified.
The unspecified value is 0, surely? All of the rows with U under _hw can
be ignored, I am talking only about _port being a defbool.
0 U ==> _hw=0 _port=0
1 U The case in question.
=> libxl should convert U to 1.
0 0 Just like today
1 0 Only cpuid leaves change -- very unlikey
1 1 Full VMware mode
0 1 VMware hyper call mode.
All reasonable things to ask for explicitly, I think (I'm not so sure
about the last one, might be an error?).
But a user who asks for vmware_hw and says nothing about _port should
get _port = 1 automatically by libxl.
This should be as simple as in the appropriate setdefault function:
libxl_defbool_setdefault(&...vmware_port, &...vmare_hw != 0);
The setdefault sets the first argument to the second iff it is current
== default.
> So I think it is just more confusing to have vmware_hw change
> the default of vmware_port but the inverse is not true.
>
> -Don Slutz
>
> >> Which would be
> >> the inverse. I lean to
> >> not having the default of vmware_port based on vmware_hw.
>
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxx
> http://lists.xen.org/xen-devel
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |