qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v10 0/10] qemu-binfmt-conf.sh


From: Unai Martinez Corral
Subject: Re: [PATCH v10 0/10] qemu-binfmt-conf.sh
Date: Wed, 22 Apr 2020 16:09:55 +0200

Hi,

I'd like to request this patchset to be kept on hold. As discussed in https://github.com/dbhi/qus/issues/4, the current "family-based" logic of 'qemu-binfmt-conf.sh' does not work for aarch64-only hosts. It is assumed that all aarch64 hosts can natively execute arm or armhf binaries. However, this is not true anymore. Some high end devices, such as ThunderX or ThunderX2, are 64-bit only.

It was tested that splitting family 'arm' to 'arm' and 'arm64' does work: https://github.com/umarcor/qemu/commit/699f972f665bb6dfd05e1c89ff83adb9834a1bb2. However, such solution breaks backwards compatibility and it will register unnecessary interpreters on hosts which do support both 32-bit and 64-bit. Hence, I'd like to add some option for users to tell that a host is 64-bit only. Alternatively, we might have an automatic test to detect it. I'd be glad to hear any suggestion.

Regards

Unai

El lun., 9 mar. 2020 a las 20:01, Unai Martinez-Corral (<address@hidden>) escribió:
Hi,

This series reworks qemu-binfmt-conf.sh:

* Argument <CPU> from option '--systemd' is generalized to <TARGETS>, and it is
  accepted for any mode (default, debian or systemd). It can be a single target
  arch or a list of them.
* Option '-r|--clear' is added, which allows to remove an already registered
  target interpreter or a list of them. The implementation is functional but
  partial. Please, see the corresponding commit.
* Option '-t|--test' is added, which allows to execute the CHECK according
  to the provided arguments, but no interpreter is configured.
* Support to set options through environment variables: QEMU_TARGETS, QEMU_PATH,
  QEMU_SUFFIX, QEMU_PERSISTENT, QEMU_CREDENTIAL, QEMU_CLEAR and QEMU_TEST.

The following changes are not backward compatible:

* Option '--persistent' no longer requires/accepts an argument.
* Option '--credential' no longer requires/accepts an argument.
* Option '--systemd' no longer requires/accepts an argument.
* Option '--qemu-path' is renamed to '--path'.
* Option '--qemu-suffix' is renamed to '--suffix'.

The functionality of all of them is untouched. Changes are related to syntax only.

v10

* Split style related commit

v9

* Make style coherent with the dominant pattern

v8:

* Fix typos and address review comments

v7:

* Check that a interpreter exists before trying to remove it.

v6:

* Don't need to use "find".
* Put the ";;" at the same position.
* Set BINFMT_CLEAR to ':', to allow --test to work with --clear.
* Do not show DEBIANDIR and SYSTEMDDIR in the Env-variable column.

Based on:

* [PATCH v5 0/10] qemu-binfmt-conf.sh
   * should have been [PATCH v5 0/9] qemu-binfmt-conf.sh
* [PATCH v4 0/10] qemu-binfmt-conf.sh
* [PATCH v3 0/10] qemu-binfmt-conf.sh
* [PATCH v2] qemu-binfmt-conf.sh: add CPUS, add --reset, make -p and -c boolean (no arg)
* [PATCH] qemu-binfmt-conf.sh: add CPUS, add --reset, make -p and -c boolean (no arg)
* scripts/qemu-binfmt-conf.sh: allow clearing of entries

Regards

Unai Martinez-Corral (10):
      qemu-binfmt-conf.sh: enforce style consistency
      qemu-binfmt-conf.sh: enforce safe tests
      qemu-binfmt-conf.sh: make opts -p and -c boolean
      qemu-binfmt-conf.sh: add QEMU_CREDENTIAL and QEMU_PERSISTENT
      qemu-binfmt-conf.sh: use the same presentation format as for qemu-*
      qemu-binfmt-conf.sh: remove 'qemu' prefix from cli options
      qemu-binfmt-conf.sh: honour QEMU_PATH and/or QEMU_SUFFIX
      qemu-binfmt-conf.sh: generalize <CPU> to positional TARGETS
      qemu-binfmt-conf.sh: add option --clear
      qemu-binfmt-conf.sh: add --test

scripts/qemu-binfmt-conf.sh | 221
1 file changed, 138 insertions(+), 83 deletions(-i)

reply via email to

[Prev in Thread] Current Thread [Next in Thread]