All of lore.kernel.org
 help / color / mirror / Atom feed
From: Fam Zheng <famz@redhat.com>
To: "Alex Bennée" <alex.bennee@linaro.org>
Cc: cota@braap.org, berrange@redhat.com, f4bug@amsat.org,
	richard.henderson@linaro.org, balrogg@gmail.com,
	aurelien@aurel32.net, agraf@suse.de, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH RFC 00/10] docker on non-x86 hosts
Date: Fri, 27 Jul 2018 16:26:14 +0800	[thread overview]
Message-ID: <20180727082614.GD19416@lemon.usersys.redhat.com> (raw)
In-Reply-To: <20180718100505.7546-1-alex.bennee@linaro.org>

On Wed, 07/18 11:04, Alex Bennée wrote:
> Hi,
> 
> Our existing support for docker is fairly x86 centric. While docker
> itself has support for multiple architectures not all architectures
> are equal. For example Debian only packages the widest range of
> cross-compilers in it's x86 images (although for example armhf is
> available on aarch64 based images).
> 
> As the binfmt support is getting more solid we always have that fall
> back option and I've converted a number of the guests that way.
> Unfortunately I've overloaded the meaning of DOCKER_PARTIAL_IMAGES but
> I was loathed to throw in yet another magic variable without some
> discussion first. I'm not sure if my current path will end up with a
> maze of twisty if/else statements all subtly alike.

Just my two cents.  So far it looks reasonable. Though I guess we could give
DOCKER_PARTIAL_IMAGES a better name or at least better documentation.

Would a per-arch variable list look cleaner? Like

    DOCKER_IMAGES_GENERIC = debian
    DOCKER_IMAGES_X86_64 = ubuntu fedora centos7
    DOCKER_PARTIAL_IMAGES_X86_64 = ...
    DOCKER_IMAGES_AARCH64 = ...
    DOCKER_PARTIAL_IMAGES_AARCH64 = ...

Then the actual host arch can be used to expand rules:

    docker-all-images: $(DOCKER_IMAGES_GENERIC)
    docker-all-images: $(DOCKER_IMAGES_$(shell uname -m | tr '[a-z]' '[A-Z]))

Fam

> 
> Thoughts?
> 
> Alex Bennée (10):
>   docker: rename docker-amd64 to docker-host
>   docker: change docker-image to docker-all-images target
>   docker: add a placeholder for handling non-x86 hosts
>   docker: don't include docker-arm64-cross on aarch64 hosts
>   docker: fall-back to binfmt_misc debian-mips64el-user-cross on non-x86
>   docker: fall-back to binfmt_misc debian-ppc64el-user-cross on non-x86
>   docker: fall-back to binfmt_misc debian-s390x-user-cross on non-x86
>   docker: disable additional non-x86 images
>   tests: tcg skip docker images we can't build
>   tests/tcg: debian-mips64el-user-cross fallback
> 
>  Makefile                                      |  4 +-
>  tests/docker/Makefile.include                 | 58 +++++++++++++++++--
>  ...debian-amd64.docker => debian-host.docker} |  4 +-
>  .../debian-mips64el-user-cross.docker         | 16 +++++
>  .../debian-ppc64el-user-cross.docker          | 16 +++++
>  .../debian-s390x-user-cross.docker            | 16 +++++
>  tests/tcg/Makefile.include                    |  3 +
>  tests/tcg/Makefile.probe                      |  2 +-
>  tests/tcg/mips/Makefile.include               |  5 ++
>  9 files changed, 116 insertions(+), 8 deletions(-)
>  rename tests/docker/dockerfiles/{debian-amd64.docker => debian-host.docker} (91%)
>  create mode 100644 tests/docker/dockerfiles/debian-mips64el-user-cross.docker
>  create mode 100644 tests/docker/dockerfiles/debian-ppc64el-user-cross.docker
>  create mode 100644 tests/docker/dockerfiles/debian-s390x-user-cross.docker
> 
> -- 
> 2.17.1
> 

  parent reply	other threads:[~2018-07-27  8:26 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-18 10:04 [Qemu-devel] [PATCH RFC 00/10] docker on non-x86 hosts Alex Bennée
2018-07-18 10:04 ` [Qemu-devel] [PATCH RFC 01/10] docker: rename docker-amd64 to docker-host Alex Bennée
2018-07-27  7:56   ` Fam Zheng
2018-07-30  8:22     ` Alex Bennée
2018-07-18 10:04 ` [Qemu-devel] [PATCH RFC 02/10] docker: change docker-image to docker-all-images target Alex Bennée
2018-07-18 10:04 ` [Qemu-devel] [PATCH RFC 03/10] docker: add a placeholder for handling non-x86 hosts Alex Bennée
2018-07-18 10:04 ` [Qemu-devel] [PATCH RFC 04/10] docker: don't include docker-arm64-cross on aarch64 hosts Alex Bennée
2018-07-18 10:05 ` [Qemu-devel] [PATCH RFC 05/10] docker: fall-back to binfmt_misc debian-mips64el-user-cross on non-x86 Alex Bennée
2018-07-18 10:05 ` [Qemu-devel] [PATCH RFC 06/10] docker: fall-back to binfmt_misc debian-ppc64el-user-cross " Alex Bennée
2018-07-18 10:05 ` [Qemu-devel] [PATCH RFC 07/10] docker: fall-back to binfmt_misc debian-s390x-user-cross " Alex Bennée
2018-07-18 10:05 ` [Qemu-devel] [PATCH RFC 08/10] docker: disable additional non-x86 images Alex Bennée
2018-07-18 10:05 ` [Qemu-devel] [PATCH RFC 09/10] tests: tcg skip docker images we can't build Alex Bennée
2018-07-18 10:05 ` [Qemu-devel] [PATCH RFC 10/10] tests/tcg: debian-mips64el-user-cross fallback Alex Bennée
2018-07-27  8:26 ` Fam Zheng [this message]
2018-07-30  8:21   ` [Qemu-devel] [PATCH RFC 00/10] docker on non-x86 hosts 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=20180727082614.GD19416@lemon.usersys.redhat.com \
    --to=famz@redhat.com \
    --cc=agraf@suse.de \
    --cc=alex.bennee@linaro.org \
    --cc=aurelien@aurel32.net \
    --cc=balrogg@gmail.com \
    --cc=berrange@redhat.com \
    --cc=cota@braap.org \
    --cc=f4bug@amsat.org \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.