a problem seen with tg3's needing some time for auto-negotiation, and so the
script would fail.
Patch courtesy of someone who's name has been lost to history.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
This is done by defining ifup/down both to 'false' when they're
missing; then instead of attempting to parse the IP params from
the kernel command line, we get them from 'ip' instead. So this
works even with (for example) ip=dhcp on the kernel command line.
Also made a few minor syntax changes (in particular, replaced "=="
with "=", and ">&foo" with ">foo 2>foo") so this works with more
limited shells.
Signed-off-by: Ben Thomas <bjthomas3@gmail.com>
hvm_info_table. Previous we pass it to xen by guest vcpu context ECX
register, now we unify to use hvm_info_table.
Signed-off-by: Xin Li <xin.b.li@intel.com>
versions of Xen, and allows one to name a vif when it is created. This is
useful for integration with IP accounting packages, for example.
Closes bug #439.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
entries in vif to guide the configuration. This is much less confusing.
Closes bug #440.
Change the example configuration files to match. Also change them to use the
XenSource OUI in the MAC addresses. Also change xm-test to match.
Remove the obsolete ipaddr configuration entry, and the backend_mac vif config
option.
Remove the preprocess_vifs function, folding it into the configure_vifs
function, and creating a simple comma_sep_kv_to_dict helper.
Remove the configure_vfr method, as it is unused.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
set up the networking, but now that we use ip directly, we don't need them, and
they were in any case broken when the ip address was specified without a suffix.
This work is by James Dykman <dykman@us.ibm.com>.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
it, when using ip on the kernel command line and not using the installed ifup /
ifdown. This stops the script bailing out if there is already an address
attached to that device, which was leaving the device without routing (since
this has already been removed).
Fix the stop action under the same circumstances. No attempt was made to
restore the kernel command line details to the interfaces if the ifdown failed
in that case.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
rather than the eversoskanky approach taken previously (use grep, and replace
any occurrences of %d with [0-9]* !)
Signed-off-by: Ewan Mellor <ewan@xensource.com>
command were not available elsewhere on the machine (on my Debian boxes, for
example).
Sleep for a configurable amount of time between xm create calls (by default,
5 seconds). This spaces out the booting of the new domains, meaning that they
should not thrash the disk so much.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
I've changed this to only write "backend" (xenbus_backend.root) into
XENBUS_BASE_PATH. After appending XENBUS_TYPE (also exported) you can
construct the "base path" easily in the scripts. I've completely
removed writing XENBUS_FRONTEND_ID in favour of reading it from the
store at "$XENBUS_PATH/frontend-id".
Avoid re-reading the store over and over for the frontend domain's vm-path.
The patch also fixes a memory leak in backend_bus_id where we
leak the memory referenced by frontend if the function succeeds.
This work is by Christian Limpach.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
localhost migration.
return [ test ] is not valid, simply [ test ] at the end of the function is the
correct syntax.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
is specified, from guest-2, guest-3 etc. Have the DHCP server send the
hostname to the guest.
Added a lock around DHCP config file frobbing, to avoid racing creation vs
deletion.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
loop driver stores only the first 64 chars of the filename). In this case, we
need to read through the store until we find the domain using the device, and
read the configured filename from there instead.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Use the IP address associated with the backend network interface
for connections from dom0 to the guest connected to this network
interface.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
CPUs a domains' vcpus can use. The older 'cpu' config option is
prepended to the list of cpus to use and will keep the behavior of
pinning VCPU0.
The cpus option supports ranges and negation, so:
cpus = "0-3,5,^1" produces -> [0,2,3,5]
The list is circular, so in a domain with the following config:
vcpus = 4
cpus = "0,3,7" # Use any of 0, 3, 7 for this domain.
would see vcpus 0-3 pinned to cpus 0,3,7,0 respectively.
Also, the pin operation is moved before the memory reservation as vcpu
to cpu mapping will be helpful for future NUMA work when trying to
allocate pages close to the physical cpus being used.
An update to the display of cpumap was needed to normalize the cpumap
values to the range of possible cpus.
I've also included some text for the xmdomain.cfg(5) man page.
Signed-off-by: Ryan Harper <ryanh@us.ibm.com>
the check, reading from the store rather than /sys, and checking whether the
VM for apparently-conflicting uses is actually the same (i.e. this is a
migration or a reboot in progress).
This fixes recent failures in 12_block_attach_shared_domU and recloses bug #331.
This fix includes particularly skanky path slicing inside xenbus_probe, which
it would be nice to remove very soon.
The loopback device check still suffers from the problem that filenames over
64 characters long are truncated.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
the older hotplug infrastructure does not, so we must be able to serialise the
block-sharing checks (etc) ourselves.
Redirect stderr to /var/log/xen-hotplug.log, for better debugging.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
the appropriate entries into dom0's DHCP server configuration file, allowing
that server to provide info for the guest when it starts.
If an IP address is not configured for vif-nat, invent one using the domain
ID and vif ID.
Fix the vif-nat script.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
configured. Both of the files pick the same free loop device in the for
loop, and then one fails to losetup. This patch will now retry if
losetup fails until it succeeds or no more devices are available.
Signed-off-by: Robert Read <robert@xensource.com>
escape.
Allow the vif-nat and vif-route scripts to have netdev specified, rather than
hard-coding eth0.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
check_sharing functions have been rejigged slightly so that the file-specific
stuff can share the code therein. This separates the actual test from the
generation of the error message, and introduces the canonicalise_mode function.
This also restores the broken teardown functionality for file: devices -- the
writing of XENBUS_PATH/node had been removed, but this is required for file
device teardown.
Signed-off-by: Ewan Mellor <ewan@xensource.com>