From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id CB2DEC433EF for ; Thu, 30 Jun 2022 21:03:47 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.358705.588020 (Exim 4.92) (envelope-from ) id 1o71Jx-0003TC-I7; Thu, 30 Jun 2022 21:03:29 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 358705.588020; Thu, 30 Jun 2022 21:03:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1o71Jx-0003T5-Dk; Thu, 30 Jun 2022 21:03:29 +0000 Received: by outflank-mailman (input) for mailman id 358705; Thu, 30 Jun 2022 21:03:28 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1o71Jw-0003Sw-44 for xen-devel@lists.xenproject.org; Thu, 30 Jun 2022 21:03:28 +0000 Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 150a8efe-f8b8-11ec-bdce-3d151da133c5; Thu, 30 Jun 2022 23:03:26 +0200 (CEST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id AE37BB82D3B; Thu, 30 Jun 2022 21:03:24 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D1C71C341C7; Thu, 30 Jun 2022 21:03:22 +0000 (UTC) X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 150a8efe-f8b8-11ec-bdce-3d151da133c5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1656623003; bh=NpgX41PYo5zn4S50qz5WRQOVMLgSVQH9jPYuQuHQiuU=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=grEfmkO2WilLd1mTwB1B8FFq8FpqEtIrqrCpzsoxPBad69yojONdgIIw0fiu+FAFo KSKWzn81uXReJsZOVKJ8pg6Q0rX48A6Y4ED+rH3pRPyxXbg207a/nft+MXzyxoenbq U1Zq7E/PSaYdPfR5WMKv7RC47Wl4faqJATwqzT8yGuMRc928kDUnoA6Oe1naaKgPGU HoK447R/ndH1T1gW8TM/KZaJ41UzHhbDoV7JoPE4pn+HkGSbOvf0J6WQwycZSYQNNu +Htimb3AVBqzjX/TomaCzrlM8bgdwj3lIeHXvTh+nrzRAgdetrZnV0dgP3Am0oJBWm I0d0yUR5wMSDw== Date: Thu, 30 Jun 2022 14:03:21 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop To: Bertrand Marquis cc: Stefano Stabellini , Luca Fancellu , Anthony PERARD , Xen-devel , Wei Liu , Elena Ufimtseva , Tim Deegan , Daniel De Graaf , "Daniel P. Smith" , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= , Juergen Gross , Christian Lindig , David Scott Subject: Re: [XEN PATCH v3 25/25] tools: Remove -Werror everywhere else In-Reply-To: <6CA16D2D-8AD6-415A-A98D-00B27F91C4DA@arm.com> Message-ID: References: <20220624160422.53457-1-anthony.perard@citrix.com> <20220624160422.53457-26-anthony.perard@citrix.com> <6CA16D2D-8AD6-415A-A98D-00B27F91C4DA@arm.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: multipart/mixed; BOUNDARY="8323329-516487629-1656622670=:4389" Content-ID: This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-516487629-1656622670=:4389 Content-Type: text/plain; CHARSET=UTF-8 Content-Transfer-Encoding: 8BIT Content-ID: On Thu, 30 Jun 2022, Bertrand Marquis wrote: > > On 29 Jun 2022, at 18:22, Stefano Stabellini wrote: > > > > On Wed, 29 Jun 2022, Luca Fancellu wrote: > >> + CC: Stefano Stabellini > >> > >>> On 24 Jun 2022, at 17:04, Anthony PERARD wrote: > >>> > >>> Patch "tools: Add -Werror by default to all tools/" have added > >>> "-Werror" to CFLAGS in tools/Rules.mk, remove it from every other > >>> makefiles as it is now duplicated. > >>> > >>> Signed-off-by: Anthony PERARD > >> > >> Hi Anthony, > >> > >> I will try to review the serie when I manage to have some time, in the mean time I can say the whole > >> serie builds fine in my Yocto setup on arm64 and x86_64, I’ve tried also the tool stack to > >> create/destroy/console guests and no problem so far. > >> > >> The only problem I have is building for arm32 because, I think, this patch does a great job and it > >> discovers a problem here: > > > > That reminds me that we only have arm32 Xen hypervisor builds in > > gitlab-ci, we don't have any arm32 Xen tools builds. I'll add it to my > > TODO but if someone (not necessarily Luca) has some spare time it could > > be a nice project. It could be done with Yocto by adding a Yocto build > > container to automation/build/. > > We have now a way to build and run xen for arm32 on qemu using Yocto. > We are using this internally and also will test Xen with guests on arm32 using this soon. > > I am upstreaming to meta-virtualisation all the fixes needed for that so it should be fairly straight forward do reproduce this in Yocto build in a container. > > Please tell me what you need and I will try to provide you a set of scripts or instructions do reproduce that on gitlab. That would be great! We need two things: - a Yocto build container - a build script The build container would be something like: automation/build/debian/unstable-arm64v8.dockerfile. It is a Dockerfile to create a container with Yocto and all required dependencies. It could be based on Debian arm64. The build container is only built once and pushed to the gitlab registry, but it is executed every time a gitlab pipeline is started. We probably want the meta layers to be pulled as part of the build container build (git clone from the Dockerfile) because otherwise we would end up git cloining them every time we run a gitlab-ci pipeline, slowing everything down. The build script is the script executed in the build container for every pipeline. Imagine you have a container "yocto-arm32", basically we want to do: # docker run yocto-arm32 build.script where build.script is the script that actually triggers the Xen build and produces the binary output. The current build script is automation/scripts/build; it is used for all build containers (all of them, from Debian to Fedora and Alpine) but it is probably not suitable to be used for Yocto. It simply calls ./configure; make; make install. It is more for normal distros. I imagine that the build script for Yocto would call bitbake. With the build container Dockerfile and the build script it becomes very simple to add Yocto arm32 to gitlab-ci. I realize that the actual build could be done on both arm64 or x86. Currently the arm32 hypervisor-only cross-build is done on x86. See automation/build/debian/unstable-arm32-gcc.dockerfile. Either way is OK. --8323329-516487629-1656622670=:4389--