[Qemu-devel] [PATCH] linux-user: allows to use "--systemd ALL" with qemu-binfmt-conf.sh

Laurent Vivier posted 1 patch 6 years, 1 month ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20180308104859.3315-1-laurent@vivier.eu
Test checkpatch passed
Test docker-build@min-glib passed
Test docker-mingw@fedora passed
Test docker-quick@centos6 passed
Test ppcbe passed
Test ppcle passed
Test s390x passed
scripts/qemu-binfmt-conf.sh | 25 ++++++++++++++-----------
1 file changed, 14 insertions(+), 11 deletions(-)
[Qemu-devel] [PATCH] linux-user: allows to use "--systemd ALL" with qemu-binfmt-conf.sh
Posted by Laurent Vivier 6 years, 1 month ago
qemu-binfmt-conf.sh when it is used with systemd
needs to know for which CPU the systemd-binfmt.service
file must be created (i.e. "--systemd ppc").

But sometime, for instance for test purpose, we need to
create an entry for all known architectures.
This patch entroduce the "ALL" parameter for this purpose.

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
---
 scripts/qemu-binfmt-conf.sh | 25 ++++++++++++++-----------
 1 file changed, 14 insertions(+), 11 deletions(-)

diff --git a/scripts/qemu-binfmt-conf.sh b/scripts/qemu-binfmt-conf.sh
index ea5a748745..7c86d857a1 100755
--- a/scripts/qemu-binfmt-conf.sh
+++ b/scripts/qemu-binfmt-conf.sh
@@ -143,7 +143,8 @@ Usage: qemu-binfmt-conf.sh [--qemu-path PATH][--debian][--systemd CPU]
                      instead generate update-binfmts templates
        --systemd:    don't write into /proc,
                      instead generate file for systemd-binfmt.service
-                     for the given CPU
+                     for the given CPU. If CPU is "ALL", generate a
+                     file for all known cpus
        --exportdir:  define where to write configuration files
                      (default: $SYSTEMDDIR or $DEBIANDIR)
        --credential: if yes, credential and security tokens are
@@ -290,18 +291,20 @@ while true ; do
         EXPORTDIR=${EXPORTDIR:-$SYSTEMDDIR}
         shift
         # check given cpu is in the supported CPU list
-        for cpu in ${qemu_target_list} ; do
+        if [ "$1" != "ALL" ] ; then
+            for cpu in ${qemu_target_list} ; do
+                if [ "$cpu" = "$1" ] ; then
+                    break
+                fi
+            done
+
             if [ "$cpu" = "$1" ] ; then
-                break
+                qemu_target_list="$1"
+            else
+                echo "ERROR: unknown CPU \"$1\"" 1>&2
+                usage
+                exit 1
             fi
-        done
-
-        if [ "$cpu" = "$1" ] ; then
-            qemu_target_list="$1"
-        else
-            echo "ERROR: unknown CPU \"$1\"" 1>&2
-            usage
-            exit 1
         fi
         ;;
     -Q|--qemu-path)
-- 
2.14.3


Re: [Qemu-devel] [PATCH] linux-user: allows to use "--systemd ALL" with qemu-binfmt-conf.sh
Posted by Laurent Vivier 6 years, 1 month ago
Le 08/03/2018 à 11:48, Laurent Vivier a écrit :
> qemu-binfmt-conf.sh when it is used with systemd
> needs to know for which CPU the systemd-binfmt.service
> file must be created (i.e. "--systemd ppc").
> 
> But sometime, for instance for test purpose, we need to
> create an entry for all known architectures.
> This patch entroduce the "ALL" parameter for this purpose.
> 
> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
> ---
>  scripts/qemu-binfmt-conf.sh | 25 ++++++++++++++-----------
>  1 file changed, 14 insertions(+), 11 deletions(-)
> 

Applied to my 'linux-user-for-2.12' branch.

Thanks,
Laurent