From nobody Thu Sep 19 00:57:26 2024 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 Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1538044306555796.3557594594772; Thu, 27 Sep 2018 03:31:46 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.26]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 00EF5307D867; Thu, 27 Sep 2018 10:31:44 +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 BB5053091390; Thu, 27 Sep 2018 10:31:43 +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 565D74A460; Thu, 27 Sep 2018 10:31:43 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w8RAVHwI005147 for ; Thu, 27 Sep 2018 06:31:17 -0400 Received: by smtp.corp.redhat.com (Postfix) id D02BB600D4; Thu, 27 Sep 2018 10:31:17 +0000 (UTC) Received: from antique-work.brq.redhat.com (unknown [10.43.2.181]) by smtp.corp.redhat.com (Postfix) with ESMTP id 55A14600D1 for ; Thu, 27 Sep 2018 10:31:17 +0000 (UTC) From: Pavel Hrdina To: libvir-list@redhat.com Date: Thu, 27 Sep 2018 12:31:11 +0200 Message-Id: In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v3 3/3] vircgroupv1: fix build on non-linux OSes 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: , MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.26 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.48]); Thu, 27 Sep 2018 10:31:45 +0000 (UTC) X-ZohoMail: RDMRC_0 RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Cgroups are linux specific and we need to make sure that the code is compiled only on linux. On different OSes it fails the compilation: ../../src/util/vircgroupv1.c:65:19: error: variable has incomplete type 'st= ruct mntent' struct mntent entry; ^ ../../src/util/vircgroupv1.c:65:12: note: forward declaration of 'struct mn= tent' struct mntent entry; ^ ../../src/util/vircgroupv1.c:74:12: error: implicit declaration of function= 'getmntent_r' is invalid in C99 [-Werror,-Wimplicit-function-declaration] while (getmntent_r(mounts, &entry, buf, sizeof(buf)) !=3D NULL) { ^ ../../src/util/vircgroupv1.c:814:39: error: use of undeclared identifier 'M= S_NOSUID' if (mount("tmpfs", root, "tmpfs", MS_NOSUID|MS_NODEV|MS_NOEXEC, opts) <= 0) { ^ ../../src/util/vircgroupv1.c:814:49: error: use of undeclared identifier 'M= S_NODEV' if (mount("tmpfs", root, "tmpfs", MS_NOSUID|MS_NODEV|MS_NOEXEC, opts) <= 0) { ^ ../../src/util/vircgroupv1.c:814:58: error: use of undeclared identifier 'M= S_NOEXEC' if (mount("tmpfs", root, "tmpfs", MS_NOSUID|MS_NODEV|MS_NOEXEC, opts) <= 0) { ^ ../../src/util/vircgroupv1.c:841:65: error: use of undeclared identifier 'M= S_BIND' if (mount(src, group->legacy[i].mountPoint, "none", MS_BIND, ^ Signed-off-by: Pavel Hrdina --- src/util/vircgroupv1.c | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/util/vircgroupv1.c b/src/util/vircgroupv1.c index 62a6e5c448..28a74474ee 100644 --- a/src/util/vircgroupv1.c +++ b/src/util/vircgroupv1.c @@ -20,13 +20,11 @@ */ #include =20 -#if defined HAVE_MNTENT_H && defined HAVE_GETMNTENT_R +#ifdef __linux__ # include -#endif -#include -#if defined HAVE_SYS_MOUNT_H +# include # include -#endif +#endif /* __linux__ */ =20 #include "internal.h" =20 @@ -55,6 +53,8 @@ VIR_ENUM_IMPL(virCgroupV1Controller, VIR_CGROUP_CONTROLLE= R_LAST, "name=3Dsystemd"); =20 =20 +#ifdef __linux__ + /* We're looking for at least one 'cgroup' fs mount, * which is *not* a named mount. */ static bool @@ -2099,3 +2099,13 @@ virCgroupV1Register(void) { virCgroupBackendRegister(&virCgroupV1Backend); } + +#else /* !__linux__ */ + +void +virCgroupV1Register(void) +{ + VIR_INFO("Control groups not supported on this platform"); +} + +#endif /* !__linux__ */ --=20 2.17.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list