From nobody Sun Feb 8 06:53:47 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1563897918; cv=none; d=zoho.com; s=zohoarc; b=D7hLyFAB5mleDAeKBSn/368MwEQCDyrzsGcECYRYQo3n2JF0u0cVUrp2Q8sH3UAAisAmk1gYrmPf1eaCNNOwymJLCy5ctvs7caL59ObnY6m2SCDZglksW6KFbpOxiRNts9QPTrWGsw2WuD1MtZVYXK0m8/P0IIllPc5jTGwN0zY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1563897918; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To:ARC-Authentication-Results; bh=uhLIEx3ERMLeMcpCgtIYpbU4jTSy7+RGnCgQtDZPP8E=; b=caKs3bjfnzcdLQdT0WfXSide2MCpkFwvTq14laxGRDB/cySA5WMymwC1/MrQ3RCPSKj6Xe9bDGyGmczjOEUDflkpUCdcORfWpiEJgAvskgmfXvYDU/tuwY2p24kHozn+DLX9HnsAAjCTmvn0vTdpxsVmQTkEaT0jGuQN0JtK/oE= ARC-Authentication-Results: i=1; mx.zoho.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1563897918688679.8263559402168; Tue, 23 Jul 2019 09:05:18 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 68BE9309264D; Tue, 23 Jul 2019 16:05:17 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 3C15460BEC; Tue, 23 Jul 2019 16:05:17 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 013D31972D; Tue, 23 Jul 2019 16:05:16 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x6NG5FnY025196 for ; Tue, 23 Jul 2019 12:05:15 -0400 Received: by smtp.corp.redhat.com (Postfix) id 39EF05C69A; Tue, 23 Jul 2019 16:05:15 +0000 (UTC) Received: from localhost.localdomain.com (unknown [10.36.112.10]) by smtp.corp.redhat.com (Postfix) with ESMTP id E12DE5C652; Tue, 23 Jul 2019 16:05:13 +0000 (UTC) From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= To: libvir-list@redhat.com Date: Tue, 23 Jul 2019 17:03:04 +0100 Message-Id: <20190723160319.18153-27-berrange@redhat.com> In-Reply-To: <20190723160319.18153-1-berrange@redhat.com> References: <20190723160319.18153-1-berrange@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 26/41] libxl: introduce virtxend daemon X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.43]); Tue, 23 Jul 2019 16:05:18 +0000 (UTC) The virtxend daemon will be responsible for providing the libxl API driver functionality. The libxl driver is still loaded by the main libvirtd daemon at this stage, so virtxend must not be running at the same time. This naming is slightly different than other drivers. With the libxl driver, the user still has a 'xen:///system' URI, and we provide it in a libvirt-daemon-xen RPM, which pulls in a libvirt-daemon-driver-libxl RPM. Arguably we could rename the libxl driver to "xen" since it is the only xen driver we have these days, and that matches how we expose it to users in the URI naming. Signed-off-by: Daniel P. Berrang=C3=A9 --- .gitignore | 4 +++ libvirt.spec.in | 8 +++++ src/libxl/Makefile.inc.am | 61 +++++++++++++++++++++++++++++++++++ src/libxl/virtxend.service.in | 24 ++++++++++++++ 4 files changed, 97 insertions(+) create mode 100644 src/libxl/virtxend.service.in diff --git a/.gitignore b/.gitignore index b93fd1b044..1c746cec44 100644 --- a/.gitignore +++ b/.gitignore @@ -139,6 +139,9 @@ /src/libvirtd /src/libvirtd*.logrotate /src/libxl/test_libvirtd_libxl.aug +/src/libxl/test_virtxend.aug +/src/libxl/virtxend.aug +/src/libxl/virtxend.conf /src/locking/libxl-lockd.conf /src/locking/libxl-sanlock.conf /src/locking/lock_daemon_dispatch_stubs.h @@ -188,6 +191,7 @@ /src/util/virkeynametable*.h /src/virt-aa-helper /src/virtinterfaced +/src/virtxend /src/virtlockd /src/virtlogd /src/virtnetworkd diff --git a/libvirt.spec.in b/libvirt.spec.in index ae1a278152..06e8666bc5 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -1765,6 +1765,14 @@ exit 0 =20 %if %{with_libxl} %files daemon-driver-libxl +%config(noreplace) %{_sysconfdir}/libvirt/virtxend.conf +%{_datadir}/augeas/lenses/virtxend.aug +%{_datadir}/augeas/lenses/tests/test_virtxend.aug +%{_unitdir}/virtxend.service +%{_unitdir}/virtxend.socket +%{_unitdir}/virtxend-ro.socket +%{_unitdir}/virtxend-admin.socket +%attr(0755, root, root) %{_sbindir}/virtxend %config(noreplace) %{_sysconfdir}/libvirt/libxl.conf %config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd.libxl %config(noreplace) %{_sysconfdir}/libvirt/libxl-lockd.conf diff --git a/src/libxl/Makefile.inc.am b/src/libxl/Makefile.inc.am index 467c2720b2..0079760488 100644 --- a/src/libxl/Makefile.inc.am +++ b/src/libxl/Makefile.inc.am @@ -65,6 +65,67 @@ libvirt_driver_libxl_impl_la_LIBADD =3D \ $(NULL) libvirt_driver_libxl_impl_la_SOURCES =3D $(LIBXL_DRIVER_SOURCES) =20 +sbin_PROGRAMS +=3D virtxend + +nodist_conf_DATA +=3D libxl/virtxend.conf +augeas_DATA +=3D libxl/virtxend.aug +augeastest_DATA +=3D libxl/test_virtxend.aug +CLEANFILES +=3D libxl/virtxend.aug + +virtxend_SOURCES =3D $(REMOTE_DAEMON_SOURCES) +virtxend_CFLAGS =3D \ + $(REMOTE_DAEMON_CFLAGS) \ + -DDAEMON_NAME=3D"\"virtxend\"" \ + -DMODULE_NAME=3D"\"libxl\"" \ + $(NULL) +virtxend_LDFLAGS =3D $(REMOTE_DAEMON_LD_FLAGS) +virtxend_LDADD =3D $(REMOTE_DAEMON_LD_ADD) + +SYSTEMD_UNIT_FILES +=3D \ + virtxend.service \ + virtxend.socket \ + virtxend-ro.socket \ + virtxend-admin.socket \ + $(NULL) +SYSTEMD_UNIT_FILES_IN +=3D \ + libxl/virtxend.service.in \ + $(NULL) + +VIRTXEND_UNIT_VARS =3D \ + $(VIRTD_UNIT_VARS) \ + -e 's|[@]name[@]|Libvirt libxl|g' \ + -e 's|[@]service[@]|virtxend|g' \ + -e 's|[@]sockprefix[@]|virtxend|g' \ + $(NULL) + +virtxend.service: libxl/virtxend.service.in $(top_builddir)/config.status + $(AM_V_GEN)sed $(VIRTXEND_UNIT_VARS) < $< > $@-t && mv $@-t $@ + +virtxen%.socket: remote/libvirt%.socket.in $(top_builddir)/config.status + $(AM_V_GEN)sed $(VIRTXEND_UNIT_VARS) < $< > $@-t && mv $@-t $@ + +libxl/virtxend.conf: remote/libvirtd.conf.in + $(AM_V_GEN)sed \ + -e '/:: CUT ENABLE_IP ::/,/:: END ::/d' \ + -e 's/:: DAEMON_NAME ::/virtxend/' \ + < $^ > $@ + +libxl/virtxend.aug: remote/libvirtd.aug.in + $(AM_V_GEN)$(SED) \ + -e '/:: CUT ENABLE_IP ::/,/:: END ::/d' \ + -e 's/:: DAEMON_NAME ::/virtxend/' \ + -e 's/:: DAEMON_NAME_UC ::/Virtxend/' \ + $< > $@ + +libxl/test_virtxend.aug: remote/test_libvirtd.aug.in \ + libxl/virtxend.conf $(AUG_GENTEST) + $(AM_V_GEN)$(AUG_GENTEST) libxl/virtxend.conf \ + $(srcdir)/remote/test_libvirtd.aug.in | \ + $(SED) -e '/:: CUT ENABLE_IP ::/,/:: END ::/d' \ + -e 's/:: DAEMON_NAME ::/virtxend/' \ + -e 's/:: DAEMON_NAME_UC ::/Virtxend/' \ + > $@ || rm -f $@ + conf_DATA +=3D libxl/libxl.conf augeas_DATA +=3D libxl/libvirtd_libxl.aug augeastest_DATA +=3D libxl/test_libvirtd_libxl.aug diff --git a/src/libxl/virtxend.service.in b/src/libxl/virtxend.service.in new file mode 100644 index 0000000000..fdb0ccd312 --- /dev/null +++ b/src/libxl/virtxend.service.in @@ -0,0 +1,24 @@ +[Unit] +Description=3DVirtualization xen daemon +Conflicts=3Dlibvirtd.service +Requires=3Dvirtxend.socket +Requires=3Dvirtxend-ro.socket +Requires=3Dvirtxend-admin.socket +After=3Dnetwork.target +After=3Ddbus.service +After=3Dapparmor.service +After=3Dlocal-fs.target +Documentation=3Dman:libvirtd(8) +Documentation=3Dhttps://libvirt.org + +[Service] +Type=3Dnotify +ExecStart=3D@sbindir@/virtxend --timeout 120 +ExecReload=3D/bin/kill -HUP $MAINPID +Restart=3Don-failure + +[Install] +WantedBy=3Dmulti-user.target +Also=3Dvirtxend.socket +Also=3Dvirtxend-ro.socket +Also=3Dvirtxend-admin.socket --=20 2.21.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list