From: Roger Pau Monne <roger.pau@citrix.com>
To: Ian Campbell <Ian.Campbell@citrix.com>
Cc: Ian Jackson <Ian.Jackson@eu.citrix.com>,
"xen-devel@lists.xen.org" <xen-devel@lists.xen.org>
Subject: Re: [PATCH v6 10/13] libxl: set nic type to VIF by default
Date: Thu, 28 Jun 2012 10:41:22 +0100 [thread overview]
Message-ID: <4FEC26C2.6070901@citrix.com> (raw)
In-Reply-To: <1340875618.10942.14.camel@zakaz.uk.xensource.com>
Ian Campbell wrote:
> On Thu, 2012-06-28 at 10:22 +0100, Roger Pau Monne wrote:
>> Ian Campbell wrote:
>>> On Tue, 2012-06-26 at 17:58 +0100, Pasi Kärkkäinen wrote:
>>>> On Tue, Jun 26, 2012 at 05:20:35PM +0100, Roger Pau Monne wrote:
>>>>> Ian Jackson wrote:
>>>>>> Roger Pau Monne writes ("[PATCH v6 10/13] libxl: set nic type to VIF by default"):
>>>>>>> Set the default value for nic interfaces to VIF, since it used to be
>>>>>>> IOEMU, even for PV guests.
>>>>>> If your renaming of IOEMU to VIF_IOEMU is correct, does this not stop
>>>>>> HVM guests getting emulated network interfaces by default ?
>>>>> Yes, if you want emulated interfaces with HVM guests you should use
>>>>> 'type=ioemu', that's how it has always been right?
>>>>>
>>>> With Xen 4.1 you don't have to use "type=ioemu". Emulated interfaces seem to work OK without "type=ioemu".
>>>> (at least with xm/xend). And if you actually do add "type=ioemu" it will break PVHVM for Linux guests..
>>>>
>>>> Quote from: http://wiki.xen.org/wiki/XenLinuxPVonHVMdrivers
>>>>
>>>> "NOTE! If you have "type=ioemu" specified for the "vif"-line, PVHVM
>>>> drivers WILL NOT work! Don't specify "type" parameter for the vif.
>>>> (with type=ioemu the pvhvm nic in the VM will have mac address full of
>>>> zeroes - and thus won't work!). "
>>> mac=00:00:00:00:00 is certainly a bug, if (lib)xl behaves this way too
>>> then we should fix it.
>>>
>>> But surely type=ioemu is supposed to mean "only emulated"? In which case
>>> the actual xend bug is that it created a PV VIF at all.
>> Currently there's no network type that means "emulated only", we have
>> VIF and VIF_IOEMU.
>
> Ah, ok, yes I'm confused.
>
>>> What are the options here? I think they are, with their (lib)xl
>>> behaviour:
>>>
>>> PV HVM
>>> type=ioemu meaningless / an error emulated device + paravirt VIF*
>>> type=vif paravirt VIF device*& paravirt VIF device only&
>> You are missing a row, the default one when user doesn't specify
>> anything,
>
> That was supposed to be indicated by the * (now) and& (after your
> patch) symbols above.
>
>> this currently is:
>>
>> PV HVM
>> default nic type is set to IEOMU nic type is set to IOEMU
>>
>> In the past this was not a problem, since when the guest is PV, we
>> didn't launch Qemu, and thus the tap device was never created and the
>> hotplug scripts were not launched. Now that we launch hotplug scripts
>> from libxl this is a problem, because when we call libxl_device_nic_add,
>> libxl has no idea if the domain is a PV or HVM guest, and only sees the
>> network type, which is set to IOEMU by default.
>
> It has a domid so it can ask and/or propagate it down to setdefaults.
I think the most suitable place is
libxl_create.c:initiate_domain_create, which also sets the defaults for
disk devices, so I think it's adequate to place something like:
if (d_config->c_info.type == LIBXL_DOMAIN_TYPE_PV) {
for (i = 0; i < d_config->num_vifs; i++) {
d_config->vifs[i].nictype = LIBXL_NIC_TYPE_VIF;
}
}
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
next prev parent reply other threads:[~2012-06-28 9:41 UTC|newest]
Thread overview: 84+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-14 12:21 [PATCH v6 00/13] execute hotplug scripts from libxl Roger Pau Monne
2012-06-14 12:21 ` [PATCH v6 01/13] libxl: change ao_device_remove to ao_device Roger Pau Monne
2012-06-15 16:45 ` Ian Jackson
2012-06-18 8:58 ` Roger Pau Monne
2012-06-14 12:21 ` [PATCH v6 02/13] libxl: move device model creation prototypes Roger Pau Monne
2012-06-14 12:21 ` [PATCH v6 03/13] libxl: convert libxl_domain_destroy to an async op Roger Pau Monne
2012-06-21 17:34 ` Ian Jackson
2012-06-14 12:21 ` [PATCH v6 04/13] libxl: move bootloader data strucutres and prototypes Roger Pau Monne
2012-06-21 17:35 ` Ian Jackson
2012-06-14 12:21 ` [PATCH v6 05/13] libxl: convert libxl__device_disk_local_attach to an async op Roger Pau Monne
2012-06-21 17:58 ` Ian Jackson
2012-06-26 10:27 ` Roger Pau Monne
2012-07-03 15:14 ` Ian Campbell
2012-06-14 12:21 ` [PATCH v6 06/13] libxl: convert libxl_device_disk_add " Roger Pau Monne
2012-06-22 11:33 ` Ian Jackson
2012-06-26 15:04 ` Roger Pau Monne
2012-06-26 15:14 ` Roger Pau Monne
2012-06-26 17:19 ` Ian Jackson
2012-06-27 17:35 ` Roger Pau Monne
2012-06-14 12:21 ` [PATCH v6 07/13] libxl: convert libxl_device_nic_add to an async operation Roger Pau Monne
2012-06-22 11:37 ` Ian Jackson
2012-06-22 12:01 ` Ian Campbell
2012-06-26 16:17 ` Roger Pau Monne
2012-06-26 17:22 ` Ian Jackson
2012-06-28 9:53 ` Roger Pau Monne
2012-06-28 9:56 ` Ian Campbell
2012-06-28 13:30 ` Roger Pau Monne
2012-06-14 12:21 ` [PATCH v6 08/13] libxl: add option to choose who executes hotplug scripts Roger Pau Monne
2012-07-03 8:33 ` Ian Campbell
2012-06-14 12:21 ` [PATCH v6 09/13] libxl: rename _IOEMU nic type to VIF_IOEMU Roger Pau Monne
2012-06-22 11:39 ` Ian Jackson
2012-06-14 12:21 ` [PATCH v6 10/13] libxl: set nic type to VIF by default Roger Pau Monne
2012-06-22 11:40 ` Ian Jackson
2012-06-26 16:20 ` Roger Pau Monne
2012-06-26 16:58 ` Pasi Kärkkäinen
2012-06-27 8:50 ` Ian Campbell
2012-06-28 9:22 ` Roger Pau Monne
2012-06-28 9:26 ` Ian Campbell
2012-06-28 9:41 ` Roger Pau Monne [this message]
2012-06-28 9:54 ` Ian Campbell
2012-06-28 10:07 ` Roger Pau Monne
2012-06-28 10:10 ` Ian Campbell
2012-06-28 13:29 ` Roger Pau Monne
2012-06-28 9:28 ` Roger Pau Monne
2012-06-26 17:22 ` Ian Jackson
2012-06-14 12:21 ` [PATCH v6 11/13] libxl: use libxl__xs_path_cleanup on device_destroy Roger Pau Monne
2012-06-14 12:21 ` [PATCH v6 12/13] libxl: call hotplug scripts for disk devices from libxl Roger Pau Monne
2012-06-22 11:43 ` Ian Jackson
2012-06-14 12:21 ` [PATCH v6 13/13] libxl: call hotplug scripts for nic " Roger Pau Monne
2012-05-30 13:07 ` [PATCH v5 01/10] execute hotplug scripts " Roger Pau Monne
2012-05-30 13:07 ` [PATCH v5 01/10] libxl: change libxl__ao_device_remove to libxl__ao_device Roger Pau Monne
2012-06-07 10:53 ` Ian Jackson
2012-06-11 10:09 ` Roger Pau Monne
2012-05-30 13:07 ` [PATCH v5 02/10] libxl: move device model creation prototypes Roger Pau Monne
2012-05-30 13:07 ` [PATCH v5 03/10] libxl: convert libxl_domain_destroy to an async op Roger Pau Monne
2012-05-30 13:07 ` [PATCH v5 04/10] libxl: convert libxl_device_disk_add to an asyn op Roger Pau Monne
2012-06-07 11:38 ` Ian Jackson
2012-06-11 12:33 ` Roger Pau Monne
2012-06-07 14:20 ` Ian Jackson
2012-06-07 16:42 ` Roger Pau Monne
2012-06-07 16:47 ` Ian Jackson
2012-06-07 14:25 ` Ian Jackson
2012-06-07 16:55 ` Roger Pau Monne
2012-06-07 17:05 ` Ian Jackson
2012-06-07 17:07 ` Roger Pau Monne
2012-06-07 17:11 ` Ian Jackson
2012-05-30 13:07 ` [PATCH v5 05/10] libxl: convert libxl_device_nic_add to an async operation Roger Pau Monne
2012-06-07 14:26 ` Ian Jackson
2012-05-30 13:07 ` [PATCH v5 06/10] libxl: add option to choose who executes hotplug scripts Roger Pau Monne
2012-05-30 13:07 ` [PATCH v5 07/10] libxl: set nic type to VIF by default Roger Pau Monne
2012-05-30 13:07 ` [PATCH v5 08/10] libxl: call hotplug scripts for disk devices from libxl Roger Pau Monne
2012-06-07 14:40 ` Ian Jackson
2012-05-30 13:07 ` [PATCH v5 09/10] libxl: call hotplug scripts for nic " Roger Pau Monne
2012-06-07 14:48 ` Ian Jackson
2012-06-11 14:34 ` Roger Pau Monne
2012-06-22 11:47 ` [PATCH v5 09/10] libxl: call hotplug scripts for nic devices from libxl [and 1 more messages] Ian Jackson
2012-06-26 8:57 ` Roger Pau Monne
2012-05-30 13:07 ` [PATCH v5 10/10] libxl: use libxl__xs_path_cleanup on device_destroy Roger Pau Monne
2012-06-07 14:50 ` Ian Jackson
2012-07-03 8:27 ` [PATCH v6 00/13] execute hotplug scripts from libxl Ian Campbell
2012-07-03 9:19 ` Ian Campbell
2012-07-03 9:26 ` Ian Campbell
2012-07-03 12:54 ` Ian Jackson
2012-07-03 13:04 ` Ian Campbell
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=4FEC26C2.6070901@citrix.com \
--to=roger.pau@citrix.com \
--cc=Ian.Campbell@citrix.com \
--cc=Ian.Jackson@eu.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).