[libvirt] [PATCH] build: require netcf-0.2.2 when installing on Fedora18+
by Laine Stump
A previous patch forced libnl-3 and netcf-0.2.2 (which itself requires
libnl-3) when *building* for Fedora 18+ (and RHEL 7+), but the
install-time Requires: for netcf has always been implicit due to
libvirtd linking with libnetcf.so. However, the since the API of netcf
didn't change when it was rebuilt to use libnl-3, the internal library
version didn't change either, making it possible (from rpm's point of
view) to upgrade libvirt without upgrading netcf (in reality, that
leads to a segfault - see
https://bugzilla.redhat.com/show_bug.cgi?id=853381).
The solution is to put an explicit Requires: line in libvirt's
specfile for fedora >= 18 and rhel >= 7.
---
libvirt.spec.in | 3 +++
1 file changed, 3 insertions(+)
diff --git a/libvirt.spec.in b/libvirt.spec.in
index 9a1feed..cc5247b 100644
--- a/libvirt.spec.in
+++ b/libvirt.spec.in
@@ -589,6 +589,9 @@ Requires: iptables-ipv6
%if %{with_nwfilter}
Requires: ebtables
%endif
+%if %{with_netcf} && (0%{?fedora} >= 18 || 0%{?rhel} >= 7)
+Requires: netcf-libs >= 0.2.2
+%endif
# needed for device enumeration
%if %{with_hal}
Requires: hal
--
1.7.11.4
12 years, 3 months
[libvirt] [PATCH] network: prevent infinite hang if ovs-vswitchd isn't running
by Laine Stump
This fixes https://bugzilla.redhat.com/show_bug.cgi?id=852984
If a network or interface is configured to use Open vSwitch, but
ovs-vswitchd (the Open vSwitch database service) isn't running, the
ovs-vsctl add-port/del-port commands will hang indefinitely rather
than returning an error. There is a --nowait option, but that appears
to have no effect on add-port and del-port commands, so instead we add
a --timeout=5 to the commands - they will retry for up to 5 seconds,
then fail if there is no response.
---
I'm not sure if 5 seconds is a reasonable timeout for this, but it
seems to work okay for me (in a very lightly loaded environment, but a
successful return is always effectively instantaneous...).
Unfortunately there doesn't seem to be another way to bound the wait
time of ovs-vsctl. :-(
src/util/virnetdevopenvswitch.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/util/virnetdevopenvswitch.c b/src/util/virnetdevopenvswitch.c
index 764f478..97b9d52 100644
--- a/src/util/virnetdevopenvswitch.c
+++ b/src/util/virnetdevopenvswitch.c
@@ -105,7 +105,7 @@ int virNetDevOpenvswitchAddPort(const char *brname, const char *ifname,
cmd = virCommandNew(OVSVSCTL);
- virCommandAddArgList(cmd, "--", "--may-exist", "add-port",
+ virCommandAddArgList(cmd, "--timeout=5", "--", "--may-exist", "add-port",
brname, ifname, NULL);
if (virBufferUse(&buf) != 0)
@@ -166,7 +166,7 @@ int virNetDevOpenvswitchRemovePort(const char *brname ATTRIBUTE_UNUSED, const ch
virCommandPtr cmd = NULL;
cmd = virCommandNew(OVSVSCTL);
- virCommandAddArgList(cmd, "--", "--if-exists", "del-port", ifname, NULL);
+ virCommandAddArgList(cmd, "--timeout=5", "--", "--if-exists", "del-port", ifname, NULL);
if (virCommandRun(cmd, NULL) < 0) {
virReportSystemError(VIR_ERR_INTERNAL_ERROR,
--
1.7.11.4
12 years, 3 months
[libvirt] VM Migration with IEEE802.1Qbh and IEEE802.1Qbg
by Jagath Weerasinghe
Hi All,
Can a VM connected as IEEE802.1Qbh be migrated to a destination host
as it were connected as IEEE802.1Qbg? What I wanted to know is, is it
possible to change the configuration from IEEE802.1Qbh to IEEE802.1Qbg
on the fly?
Regards
Jagath
12 years, 3 months
[libvirt] [PATCH] Fix adding ports to OVS bridges without VLAN tags
by Kyle Mestery
The introduction of the new VLAN code, along with the fix
from 5e465df6be8bcb00f0b4bff831e91f4042fae272, caused the
addition of OVS ports to fail with the following message:
ovs-vsctl: 00002|vsctl|ERR|: missing column name
This fix takes into account the VLAN arguments are optional,
and correctly sets up the command line to run the "ovs-vsctl"
command to add ports to the OVS bridge.
Signed-off-by: Kyle Mestery <kmestery(a)cisco.com>
CC: Eric Blake <eblake(a)redhat.com>
---
V2:
- Use virBufferUse() to check if a buffer is in use. Found
by Eric Blake.
---
src/util/virnetdevopenvswitch.c | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/src/util/virnetdevopenvswitch.c b/src/util/virnetdevopenvswitch.c
index 00271a0..764f478 100644
--- a/src/util/virnetdevopenvswitch.c
+++ b/src/util/virnetdevopenvswitch.c
@@ -104,9 +104,15 @@ int virNetDevOpenvswitchAddPort(const char *brname, const char *ifname,
}
cmd = virCommandNew(OVSVSCTL);
+
+ virCommandAddArgList(cmd, "--", "--may-exist", "add-port",
+ brname, ifname, NULL);
+
+ if (virBufferUse(&buf) != 0)
+ virCommandAddArgList(cmd, virBufferCurrentContent(&buf), NULL);
+
if (ovsport->profileID[0] == '\0') {
- virCommandAddArgList(cmd, "--", "--may-exist", "add-port",
- brname, ifname, virBufferCurrentContent(&buf),
+ virCommandAddArgList(cmd,
"--", "set", "Interface", ifname, attachedmac_ex_id,
"--", "set", "Interface", ifname, ifaceid_ex_id,
"--", "set", "Interface", ifname, vmid_ex_id,
@@ -114,8 +120,7 @@ int virNetDevOpenvswitchAddPort(const char *brname, const char *ifname,
"external-ids:iface-status=active",
NULL);
} else {
- virCommandAddArgList(cmd, "--", "--may-exist", "add-port",
- brname, ifname, virBufferCurrentContent(&buf),
+ virCommandAddArgList(cmd,
"--", "set", "Interface", ifname, attachedmac_ex_id,
"--", "set", "Interface", ifname, ifaceid_ex_id,
"--", "set", "Interface", ifname, vmid_ex_id,
--
1.7.11.4
12 years, 3 months
[libvirt] [PATCH] qemu: don't pin all the cpus
by Martin Kletzander
This is another fix for the emulator-pin series. When going through
the cputune pinning settings, the current code is trying to pin all
the CPUs, even when not all of them are specified. This causes error
in the subsequent function which, of course, cannot find the cpu to
pin. Since it's enough to pass the correct VCPU ID to the function,
the fix is trivial.
---
src/qemu/qemu_cgroup.c | 25 +++++++++++++++++--------
1 file changed, 17 insertions(+), 8 deletions(-)
diff --git a/src/qemu/qemu_cgroup.c b/src/qemu/qemu_cgroup.c
index 7298e28..5b42793 100644
--- a/src/qemu/qemu_cgroup.c
+++ b/src/qemu/qemu_cgroup.c
@@ -542,7 +542,7 @@ int qemuSetupCgroupForVcpu(struct qemud_driver *driver, virDomainObjPtr vm)
qemuDomainObjPrivatePtr priv = vm->privateData;
virDomainDefPtr def = vm->def;
int rc;
- unsigned int i;
+ unsigned int i, j;
unsigned long long period = vm->def->cputune.period;
long long quota = vm->def->cputune.quota;
@@ -603,13 +603,22 @@ int qemuSetupCgroupForVcpu(struct qemud_driver *driver, virDomainObjPtr vm)
}
/* Set vcpupin in cgroup if vcpupin xml is provided */
- if (def->cputune.nvcpupin &&
- qemuCgroupControllerActive(driver, VIR_CGROUP_CONTROLLER_CPUSET) &&
- qemuSetupCgroupVcpuPin(cgroup_vcpu,
- def->cputune.vcpupin,
- def->cputune.nvcpupin,
- i) < 0)
- goto cleanup;
+ if (qemuCgroupControllerActive(driver, VIR_CGROUP_CONTROLLER_CPUSET)) {
+ /* find the right CPU to pin, otherwise
+ * qemuSetupCgroupVcpuPin will fail. */
+ for (j = 0; j < def->cputune.nvcpupin; j++) {
+ if (def->cputune.vcpupin[j]->vcpuid != i)
+ continue;
+
+ if (qemuSetupCgroupVcpuPin(cgroup_vcpu,
+ def->cputune.vcpupin,
+ def->cputune.nvcpupin,
+ i) < 0)
+ goto cleanup;
+
+ break;
+ }
+ }
virCgroupFree(&cgroup_vcpu);
}
--
1.7.12
12 years, 3 months
[libvirt] [PATCH] maint: avoid doubled name in syntax check failures
by Eric Blake
Based on a similar gnulib patch; use of $(_sc_search_regexp)
already injects $(ME) into any output messages, so a failure
of these rules would look like this, pre-patch:
./config.status: ./config.status: use virStrToLong_*, not strtol variants
* cfg.mk (sc_prohibit_strncmp, sc_prohibit_strtol)
(sc_libvirt_unmarked_diagnostics): Drop redundant name.
---
I couldn't quite bring myself to pushing this under the trivial
rule, but am instead waiting for a review.
cfg.mk | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/cfg.mk b/cfg.mk
index 245e0f2..333563f 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -353,18 +353,18 @@ snp_ = strncmp *\(.+\)
sc_prohibit_strncmp:
@prohibit='! *strncmp *\(|\<$(snp_) *[!=]=|[!=]= *$(snp_)' \
exclude=':# *define STR(N?EQLEN|PREFIX)\(' \
- halt='$(ME): use STREQLEN or STRPREFIX instead of str''ncmp' \
+ halt='use STREQLEN or STRPREFIX instead of str''ncmp' \
$(_sc_search_regexp)
# strtol and friends are too easy to misuse
sc_prohibit_strtol:
@prohibit='\bstrto(u?ll?|[ui]max) *\(' \
exclude='exempt from syntax-check' \
- halt='$(ME): use virStrToLong_*, not strtol variants' \
+ halt='use virStrToLong_*, not strtol variants' \
$(_sc_search_regexp)
@prohibit='\bstrto[df] *\(' \
exclude='exempt from syntax-check' \
- halt='$(ME): use virStrToDouble, not strtod variants' \
+ halt='use virStrToDouble, not strtod variants' \
$(_sc_search_regexp)
# Use virAsprintf rather than as'printf since *strp is undefined on error.
@@ -550,7 +550,7 @@ func_re := ($(func_or))
sc_libvirt_unmarked_diagnostics:
@prohibit='\<$(func_re) *\([^"]*"[^"]*[a-z]{3}' \
exclude='_\(' \
- halt='$(ME): found unmarked diagnostic(s)' \
+ halt='found unmarked diagnostic(s)' \
$(_sc_search_regexp)
@{ grep -nE '\<$(func_re) *\(.*;$$' $$($(VC_LIST_EXCEPT)); \
grep -A1 -nE '\<$(func_re) *\(.*,$$' $$($(VC_LIST_EXCEPT)); } \
--
1.7.11.4
12 years, 3 months
[libvirt] [PATCH] build: use re-entrant functions in virsh
by Eric Blake
Today's patches pointed out that virsh was still using localtime(),
which is not thread-safe, even though virsh is definitely
multi-threaded.
* cfg.mk (exclude_file_name_regexp--sc_prohibit_nonreentrant):
Tighten the rule.
* tools/virsh.c (vshOutputLogFile): Avoid localtime.
(vshEditWriteToTempFile, vshEditReadBackFile, cmdCd, cmdPwd)
(vshCloseLogFile): Avoid strerror.
* tools/console.c (vshMakeStdinRaw): Likewise.
* tools/virsh-domain.c (vshGenFileName): Fix spacing in previous
patch.
---
cfg.mk | 2 +-
tools/console.c | 11 +++++++----
tools/virsh-domain.c | 2 +-
tools/virsh.c | 40 ++++++++++++++++++++++++----------------
4 files changed, 33 insertions(+), 22 deletions(-)
diff --git a/cfg.mk b/cfg.mk
index 4cdfd1b..245e0f2 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -780,7 +780,7 @@ exclude_file_name_regexp--sc_prohibit_newline_at_end_of_diagnostic = \
^src/rpc/gendispatch\.pl$$
exclude_file_name_regexp--sc_prohibit_nonreentrant = \
- ^((po|tests)/|docs/.*py$$|tools/(virsh|console)\.c$$)
+ ^((po|tests)/|docs/.*py$$)
exclude_file_name_regexp--sc_prohibit_raw_allocation = \
^(src/util/memory\.[ch]|examples/.*)$$
diff --git a/tools/console.c b/tools/console.c
index fee2ce3..4394e48 100644
--- a/tools/console.c
+++ b/tools/console.c
@@ -1,7 +1,7 @@
/*
* console.c: A dumb serial console client
*
- * Copyright (C) 2007-2008, 2010-2011 Red Hat, Inc.
+ * Copyright (C) 2007-2008, 2010-2012 Red Hat, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -299,13 +299,16 @@ vshGetEscapeChar(const char *s)
return *s;
}
-int vshMakeStdinRaw(struct termios *ttyattr, bool report_errors) {
+int
+vshMakeStdinRaw(struct termios *ttyattr, bool report_errors)
+{
struct termios rawattr;
+ char ebuf[1024];
if (tcgetattr(STDIN_FILENO, ttyattr) < 0) {
if (report_errors)
VIR_ERROR(_("unable to get tty attributes: %s"),
- strerror(errno));
+ virStrerror(errno, ebuf, sizeof(ebuf)));
return -1;
}
@@ -315,7 +318,7 @@ int vshMakeStdinRaw(struct termios *ttyattr, bool report_errors) {
if (tcsetattr(STDIN_FILENO, TCSAFLUSH, &rawattr) < 0) {
if (report_errors)
VIR_ERROR(_("unable to set tty attributes: %s"),
- strerror(errno));
+ virStrerror(errno, ebuf, sizeof(ebuf)));
return -1;
}
diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c
index 3cef782..727c39b 100644
--- a/tools/virsh-domain.c
+++ b/tools/virsh-domain.c
@@ -3723,7 +3723,7 @@ vshGenFileName(vshControl *ctl, virDomainPtr dom, const char *mime)
ext = ".png";
/* add mime type here */
- time (&cur_time);
+ time(&cur_time);
localtime_r(&cur_time, &time_info);
strftime(timestr, sizeof(timestr), "%Y-%m-%d-%H:%M:%S", &time_info);
diff --git a/tools/virsh.c b/tools/virsh.c
index 88da429..e3f9e4e 100644
--- a/tools/virsh.c
+++ b/tools/virsh.c
@@ -511,6 +511,7 @@ vshEditWriteToTempFile(vshControl *ctl, const char *doc)
char *ret;
const char *tmpdir;
int fd;
+ char ebuf[1024];
tmpdir = getenv ("TMPDIR");
if (!tmpdir) tmpdir = "/tmp";
@@ -521,14 +522,14 @@ vshEditWriteToTempFile(vshControl *ctl, const char *doc)
fd = mkstemps(ret, 4);
if (fd == -1) {
vshError(ctl, _("mkstemps: failed to create temporary file: %s"),
- strerror(errno));
+ virStrerror(errno, ebuf, sizeof(ebuf)));
VIR_FREE(ret);
return NULL;
}
if (safewrite(fd, doc, strlen(doc)) == -1) {
vshError(ctl, _("write: %s: failed to write to temporary file: %s"),
- ret, strerror(errno));
+ ret, virStrerror(errno, ebuf, sizeof(ebuf)));
VIR_FORCE_CLOSE(fd);
unlink(ret);
VIR_FREE(ret);
@@ -536,7 +537,7 @@ vshEditWriteToTempFile(vshControl *ctl, const char *doc)
}
if (VIR_CLOSE(fd) < 0) {
vshError(ctl, _("close: %s: failed to write or close temporary file: %s"),
- ret, strerror(errno));
+ ret, virStrerror(errno, ebuf, sizeof(ebuf)));
unlink(ret);
VIR_FREE(ret);
return NULL;
@@ -606,11 +607,12 @@ char *
vshEditReadBackFile(vshControl *ctl, const char *filename)
{
char *ret;
+ char ebuf[1024];
if (virFileReadAll(filename, VSH_MAX_XML_FILE, &ret) == -1) {
vshError(ctl,
_("%s: failed to read temporary file: %s"),
- filename, strerror(errno));
+ filename, virStrerror(errno, ebuf, sizeof(ebuf)));
return NULL;
}
return ret;
@@ -637,6 +639,7 @@ cmdCd(vshControl *ctl, const vshCmd *cmd)
const char *dir = NULL;
char *dir_malloced = NULL;
bool ret = true;
+ char ebuf[1024];
if (!ctl->imode) {
vshError(ctl, "%s", _("cd: command valid only in interactive mode"));
@@ -650,7 +653,8 @@ cmdCd(vshControl *ctl, const vshCmd *cmd)
dir = "/";
if (chdir(dir) == -1) {
- vshError(ctl, _("cd: %s: %s"), strerror(errno), dir);
+ vshError(ctl, _("cd: %s: %s"),
+ virStrerror(errno, ebuf, sizeof(ebuf)), dir);
ret = false;
}
@@ -672,11 +676,12 @@ cmdPwd(vshControl *ctl, const vshCmd *cmd ATTRIBUTE_UNUSED)
{
char *cwd;
bool ret = true;
+ char ebuf[1024];
cwd = getcwd(NULL, 0);
if (!cwd) {
vshError(ctl, _("pwd: cannot get current directory: %s"),
- strerror(errno));
+ virStrerror(errno, ebuf, sizeof(ebuf)));
ret = false;
} else {
vshPrint(ctl, _("%s\n"), cwd);
@@ -2188,7 +2193,7 @@ vshOutputLogFile(vshControl *ctl, int log_level, const char *msg_format,
size_t len;
const char *lvl = "";
time_t stTime;
- struct tm *stTm;
+ struct tm stTm;
if (ctl->log_fd == -1)
return;
@@ -2198,15 +2203,15 @@ vshOutputLogFile(vshControl *ctl, int log_level, const char *msg_format,
*
* [YYYY.MM.DD HH:MM:SS SIGNATURE PID] LOG_LEVEL message
*/
- time (&stTime);
- stTm = localtime(&stTime);
+ time(&stTime);
+ localtime_r(&stTime, &stTm);
virBufferAsprintf(&buf, "[%d.%02d.%02d %02d:%02d:%02d %s %d] ",
- (1900 + stTm->tm_year),
- (1 + stTm->tm_mon),
- stTm->tm_mday,
- stTm->tm_hour,
- stTm->tm_min,
- stTm->tm_sec,
+ (1900 + stTm.tm_year),
+ (1 + stTm.tm_mon),
+ stTm.tm_mday,
+ stTm.tm_hour,
+ stTm.tm_min,
+ stTm.tm_sec,
SIGN_NAME,
(int) getpid());
switch (log_level) {
@@ -2264,10 +2269,13 @@ error:
void
vshCloseLogFile(vshControl *ctl)
{
+ char ebuf[1024];
+
/* log file close */
if (VIR_CLOSE(ctl->log_fd) < 0) {
vshError(ctl, _("%s: failed to write log file: %s"),
- ctl->logfile ? ctl->logfile : "?", strerror (errno));
+ ctl->logfile ? ctl->logfile : "?",
+ virStrerror(errno, ebuf, sizeof(ebuf)));
}
if (ctl->logfile) {
--
1.7.11.4
12 years, 3 months
[libvirt] [PATCH] (updated) additional parameters needed for dnsmasq
by Gene Czarcinski
As I said in a previous message, dnsmasq is forwarding a number of
queries upstream that should not be done. There still remains an MX
query for a plain name with no domain specified that will be forwarded
is dnsmasq has --domain=xxx --local=/xxx/ specified. This does not
happen with no domain name and --local=// ... not a libvirt problem.
BTW, thanks again to Claudio Bley!
====================================================
diff -uNr libvirt-0.9.11.4.orig/src/network/bridge_driver.c
libvirt-0.9.11.4/src/network/bridge_driver.c
--- libvirt-0.9.11.4.orig/src/network/bridge_driver.c 2012-06-15
14:23:21.000000000 -0400
+++ libvirt-0.9.11.4/src/network/bridge_driver.c 2012-08-22
12:16:45.263488789 -0400
@@ -490,8 +490,15 @@
*/
virCommandAddArgList(cmd, "--strict-order", "--bind-interfaces",
NULL);
- if (network->def->domain)
+ if (network->def->domain) {
virCommandAddArgList(cmd, "--domain", network->def->domain, NULL);
+ virCommandAddArgFormat(cmd, "--local=/%s/", network->def->domain);
+ virCommandAddArgList(cmd, "--domain-needed", "--filterwin2k",
NULL);
+ }
+ else { /* need to specify local even if no domain specified */
+ virCommandAddArg(cmd, "--local=//");
+ virCommandAddArgList(cmd, "--domain-needed", "--filterwin2k",
NULL);
+ }
if (pidfile)
virCommandAddArgPair(cmd, "--pid-file", pidfile);
diff -uNr
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/isolated-network.argv
libvirt-0.9.11.4/tests/networkxml2argvdata/isolated-network.argv
---
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/isolated-network.argv
2012-06-15 14:21:54.000000000 -0400
+++ libvirt-0.9.11.4/tests/networkxml2argvdata/isolated-network.argv
2012-08-22 12:20:37.700995728 -0400
@@ -1,4 +1,5 @@
-@DNSMASQ@ --strict-order --bind-interfaces --conf-file= \
+@DNSMASQ@ --strict-order --bind-interfaces \
+--local=// --domain-needed --filterwin2k --conf-file= \
--except-interface lo --dhcp-option=3 --no-resolv \
--listen-address 192.168.152.1 \
--dhcp-range 192.168.152.2,192.168.152.254 \
diff -uNr
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/nat-network.argv
libvirt-0.9.11.4/tests/networkxml2argvdata/nat-network.argv
--- libvirt-0.9.11.4.orig/tests/networkxml2argvdata/nat-network.argv
2012-06-15 14:21:54.000000000 -0400
+++ libvirt-0.9.11.4/tests/networkxml2argvdata/nat-network.argv
2012-08-22 12:21:24.481703184 -0400
@@ -1,4 +1,5 @@
-@DNSMASQ@ --strict-order --bind-interfaces --conf-file= \
+@DNSMASQ@ --strict-order --bind-interfaces \
+--local=// --domain-needed --filterwin2k --conf-file= \
--except-interface lo --listen-address 192.168.122.1 \
--listen-address 192.168.123.1 --listen-address 2001:db8:ac10:fe01::1 \
--listen-address 2001:db8:ac10:fd01::1 --listen-address 10.24.10.1 \
diff -uNr
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/nat-network-dns-hosts.argv
libvirt-0.9.11.4/tests/networkxml2argvdata/nat-network-dns-hosts.argv
---
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/nat-network-dns-hosts.argv
2012-06-15 14:21:54.000000000 -0400
+++
libvirt-0.9.11.4/tests/networkxml2argvdata/nat-network-dns-hosts.argv
2012-08-22 12:25:30.378218203 -0400
@@ -1,3 +1,4 @@
@DNSMASQ@ --strict-order --bind-interfaces --domain example.com \
+--local=/example.com/ --domain-needed --filterwin2k \
--conf-file= --except-interface lo --listen-address 192.168.122.1 \
--expand-hosts --addn-hosts=/var/lib/libvirt/dnsmasq/default.addnhosts\
diff -uNr
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/nat-network-dns-srv-record.argv
libvirt-0.9.11.4/tests/networkxml2argvdata/nat-network-dns-srv-record.argv
---
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/nat-network-dns-srv-record.argv
2012-06-15 14:21:54.000000000 -0400
+++
libvirt-0.9.11.4/tests/networkxml2argvdata/nat-network-dns-srv-record.argv
2012-08-22 12:22:35.471268869 -0400
@@ -1,7 +1,7 @@
@DNSMASQ@ \
--strict-order \
--bind-interfaces \
---conf-file= \
+--local=// --domain-needed --filterwin2k --conf-file= \
--except-interface lo \
--srv-host=name.tcp.test-domain-name,.,1024,10,10 \
--listen-address 192.168.122.1 \
diff -uNr
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/nat-network-dns-srv-record-minimal.argv
libvirt-0.9.11.4/tests/networkxml2argvdata/nat-network-dns-srv-record-minimal.argv
---
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/nat-network-dns-srv-record-minimal.argv
2012-06-15 14:21:54.000000000 -0400
+++
libvirt-0.9.11.4/tests/networkxml2argvdata/nat-network-dns-srv-record-minimal.argv
2012-08-22 12:22:48.422191468 -0400
@@ -1,7 +1,7 @@
@DNSMASQ@ \
--strict-order \
--bind-interfaces \
---conf-file= \
+--local=// --domain-needed --filterwin2k --conf-file= \
--except-interface lo \
--srv-host=name.tcp.,,,, \
--listen-address 192.168.122.1 \
diff -uNr
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/nat-network-dns-txt-record.argv
libvirt-0.9.11.4/tests/networkxml2argvdata/nat-network-dns-txt-record.argv
---
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/nat-network-dns-txt-record.argv
2012-06-15 14:21:54.000000000 -0400
+++
libvirt-0.9.11.4/tests/networkxml2argvdata/nat-network-dns-txt-record.argv
2012-08-22 12:23:47.642834970 -0400
@@ -1,4 +1,5 @@
-@DNSMASQ@ --strict-order --bind-interfaces --conf-file= \
+@DNSMASQ@ --strict-order --bind-interfaces \
+--local=// --domain-needed --filterwin2k --conf-file= \
--except-interface lo --txt-record=example,example value \
--listen-address 192.168.122.1 --listen-address 192.168.123.1 \
--listen-address 2001:db8:ac10:fe01::1 \
diff -uNr
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/netboot-network.argv
libvirt-0.9.11.4/tests/networkxml2argvdata/netboot-network.argv
--- libvirt-0.9.11.4.orig/tests/networkxml2argvdata/netboot-network.argv
2012-06-15 14:21:54.000000000 -0400
+++ libvirt-0.9.11.4/tests/networkxml2argvdata/netboot-network.argv
2012-08-22 12:24:31.838569611 -0400
@@ -1,5 +1,6 @@
@DNSMASQ@ --strict-order --bind-interfaces --domain example.com \
---conf-file= --except-interface lo --listen-address 192.168.122.1 \
+--local=/example.com/ --domain-needed --filterwin2k --conf-file= \
+--except-interface lo --listen-address 192.168.122.1 \
--dhcp-range 192.168.122.2,192.168.122.254 \
--dhcp-leasefile=/var/lib/libvirt/dnsmasq/netboot.leases \
--dhcp-lease-max=253 --dhcp-no-override --expand-hosts --enable-tftp \
diff -uNr
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/netboot-proxy-network.argv
libvirt-0.9.11.4/tests/networkxml2argvdata/netboot-proxy-network.argv
---
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/netboot-proxy-network.argv
2012-06-15 14:21:54.000000000 -0400
+++
libvirt-0.9.11.4/tests/networkxml2argvdata/netboot-proxy-network.argv
2012-08-22 12:27:24.586499884 -0400
@@ -1,5 +1,6 @@
@DNSMASQ@ --strict-order --bind-interfaces --domain example.com \
---conf-file= --except-interface lo --listen-address 192.168.122.1 \
+--local=/example.com/ --domain-needed --filterwin2k --conf-file= \
+--except-interface lo --listen-address 192.168.122.1 \
--dhcp-range 192.168.122.2,192.168.122.254 \
--dhcp-leasefile=/var/lib/libvirt/dnsmasq/netboot.leases \
--dhcp-lease-max=253 --dhcp-no-override --expand-hosts \
diff -uNr
libvirt-0.9.11.4.orig/tests/networkxml2argvdata/routed-network.argv
libvirt-0.9.11.4/tests/networkxml2argvdata/routed-network.argv
--- libvirt-0.9.11.4.orig/tests/networkxml2argvdata/routed-network.argv
2012-06-15 14:21:54.000000000 -0400
+++ libvirt-0.9.11.4/tests/networkxml2argvdata/routed-network.argv
2012-08-22 12:28:06.111841912 -0400
@@ -1,2 +1,3 @@
-@DNSMASQ@ --strict-order --bind-interfaces --conf-file= \
+@DNSMASQ@ --strict-order --bind-interfaces \
+--local=// --domain-needed --filterwin2k --conf-file= \
--except-interface lo --listen-address 192.168.122.1\
==========================================
Just in case, I also attached the patch.
Gene
12 years, 3 months
[libvirt] [PATCH] [trivial] Fix spelling mistake
by Philipp Hahn
provably -> probably
Signed-off-by: Philipp Hahn <hahn(a)univention.de>
---
cfg.mk | 2 +-
src/libvirt.c | 2 +-
tools/virsh.pod | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/cfg.mk b/cfg.mk
index 4cdfd1b..8fd9462 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -379,7 +379,7 @@ sc_prohibit_setuid:
halt='use virSetUIDGID, not raw set*id' \
$(_sc_search_regexp)
-# Use snprintf rather than s'printf, even if buffer is provably large enough,
+# Use snprintf rather than s'printf, even if buffer is probably large enough,
# since gnulib has more guarantees for snprintf portability
sc_prohibit_sprintf:
@prohibit='\<[s]printf\>' \
diff --git a/src/libvirt.c b/src/libvirt.c
index b034ed6..041e4a6 100644
--- a/src/libvirt.c
+++ b/src/libvirt.c
@@ -17968,7 +17968,7 @@ error:
* new hypervisor instance rather than reusing the existing hypervisor
* (since this would terminate all connections to the domain, such as
* such as VNC or Spice graphics) - this condition arises from active
- * snapshots that are provably ABI incomaptible, as well as from
+ * snapshots that are probably ABI incomaptible, as well as from
* inactive snapshots with a @flags request to start the domain after
* the revert.
*
diff --git a/tools/virsh.pod b/tools/virsh.pod
index a26c420..36b9593 100644
--- a/tools/virsh.pod
+++ b/tools/virsh.pod
@@ -2685,7 +2685,7 @@ the case of reverting from a running domain to an active state where a
new hypervisor has to be created rather than reusing the existing
hypervisor, because it implies drawbacks such as breaking any existing
VNC or Spice connections; this condition happens with an active
-snapshot that uses a provably incompatible configuration, as well as
+snapshot that uses a probably incompatible configuration, as well as
with an inactive snapshot that is combined with the I<--start> or
I<--pause> flag.
--
1.7.1
12 years, 3 months
[libvirt] [PATCHv2 0/3] Add range checking for scheduler tunables
by Peter Krempa
This series adds range checking to cpu scheduler tunables when changed using
the API. V2 contains a new patch that avoids changing all tunables from virsh
when setting just a single one.
Peter Krempa (3):
qemu: clean up qemuSetSchedulerParametersFlags()
qemu: Add range checking for scheduler tunables when changed by API
virsh: Update only changed scheduler tunables
src/qemu/qemu_driver.c | 96 ++++++++++++++++++++++++++++++--------------------
tools/virsh-domain.c | 14 ++++----
2 files changed, 66 insertions(+), 44 deletions(-)
--
1.7.12
12 years, 3 months