qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Alex Bennée" <alex.bennee@linaro.org>
To: Ilya Leoshkevich <iii@linux.ibm.com>
Cc: "Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	"Philippe Mathieu-Daudé" <philmd@linaro.org>,
	"Thomas Huth" <thuth@redhat.com>,
	"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
	qemu-devel@nongnu.org, "Peter Maydell" <peter.maydell@linaro.org>,
	"Mahesh Bodapati" <mbodapat@xilinx.com>
Subject: Re: [PATCH] tests/docker: Fix microblaze atomics
Date: Tue, 24 Sep 2024 12:54:46 +0100	[thread overview]
Message-ID: <87wmj1clmh.fsf@draig.linaro.org> (raw)
In-Reply-To: <20240919152308.10440-1-iii@linux.ibm.com> (Ilya Leoshkevich's message of "Thu, 19 Sep 2024 17:23:04 +0200")

Ilya Leoshkevich <iii@linux.ibm.com> writes:

(add Mahesh to CC)

> GCC produces invalid code for microblaze atomics.
>
> The fix is unfortunately not upstream, so fetch it from an external
> location and apply it locally.

Queued to testing/next, thanks.

However I didn't see any tests failing so I'm curious where you saw the
problem? Would it be worth adding an atomics test (microblaze or
generic) to catch this?

Also for the Microblaze guys is there any push to upstream the patches
you have into GCC or have an easily distributively binary build we could
convert our dockerfiles to?

>
> Suggested-by: Peter Maydell <peter.maydell@linaro.org>
> Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
> ---
>  .../debian-microblaze-cross.d/build-toolchain.sh          | 8 ++++++++
>  tests/docker/dockerfiles/debian-toolchain.docker          | 7 +++++++
>  2 files changed, 15 insertions(+)
>
> diff --git a/tests/docker/dockerfiles/debian-microblaze-cross.d/build-toolchain.sh b/tests/docker/dockerfiles/debian-microblaze-cross.d/build-toolchain.sh
> index 23ec0aa9a72..c5cd0aa931c 100755
> --- a/tests/docker/dockerfiles/debian-microblaze-cross.d/build-toolchain.sh
> +++ b/tests/docker/dockerfiles/debian-microblaze-cross.d/build-toolchain.sh
> @@ -10,6 +10,8 @@ TOOLCHAIN_INSTALL=/usr/local
>  TOOLCHAIN_BIN=${TOOLCHAIN_INSTALL}/bin
>  CROSS_SYSROOT=${TOOLCHAIN_INSTALL}/$TARGET/sys-root
>  
> +GCC_PATCH0_URL=https://raw.githubusercontent.com/Xilinx/meta-xilinx/refs/tags/xlnx-rel-v2024.1/meta-microblaze/recipes-devtools/gcc/gcc-12/0009-Patch-microblaze-Fix-atomic-boolean-return-value.patch
> +
>  export PATH=${TOOLCHAIN_BIN}:$PATH
>  
>  #
> @@ -31,6 +33,12 @@ mv gcc-11.2.0 src-gcc
>  mv musl-1.2.2 src-musl
>  mv linux-5.10.70 src-linux
>  
> +#
> +# Patch gcc
> +#
> +
> +wget -O - ${GCC_PATCH0_URL} | patch -d src-gcc -p1
> +
>  mkdir -p bld-hdr bld-binu bld-gcc bld-musl
>  mkdir -p ${CROSS_SYSROOT}/usr/include
>  
> diff --git a/tests/docker/dockerfiles/debian-toolchain.docker b/tests/docker/dockerfiles/debian-toolchain.docker
> index 687a97fec4a..ab4ce29533d 100644
> --- a/tests/docker/dockerfiles/debian-toolchain.docker
> +++ b/tests/docker/dockerfiles/debian-toolchain.docker
> @@ -10,6 +10,8 @@ FROM docker.io/library/debian:11-slim
>  # ??? The build-dep isn't working, missing a number of
>  # minimal build dependiencies, e.g. libmpc.
>  
> +RUN sed 's/^deb /deb-src /' </etc/apt/sources.list >/etc/apt/sources.list.d/deb-src.list
> +
>  RUN apt update && \
>      DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
>      DEBIAN_FRONTEND=noninteractive eatmydata \
> @@ -33,6 +35,11 @@ RUN cd /root && ./build-toolchain.sh
>  # and the build trees by restoring the original image,
>  # then copying the built toolchain from stage 0.
>  FROM docker.io/library/debian:11-slim
> +RUN apt update && \
> +    DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
> +    DEBIAN_FRONTEND=noninteractive eatmydata \
> +    apt install -y --no-install-recommends \
> +        libmpc3
>  COPY --from=0 /usr/local /usr/local
>  # As a final step configure the user (if env is defined)
>  ARG USER

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro


  reply	other threads:[~2024-09-24 11:55 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-19 15:23 [PATCH] tests/docker: Fix microblaze atomics Ilya Leoshkevich
2024-09-24 11:54 ` Alex Bennée [this message]
2024-09-24 12:22   ` Ilya Leoshkevich
2024-09-24 18:02     ` Alex Bennée

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87wmj1clmh.fsf@draig.linaro.org \
    --to=alex.bennee@linaro.org \
    --cc=edgar.iglesias@gmail.com \
    --cc=iii@linux.ibm.com \
    --cc=mbodapat@xilinx.com \
    --cc=peter.maydell@linaro.org \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=thuth@redhat.com \
    --cc=wainersm@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).