qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v3] scripts/qemu-binfmt-conf.sh: add bFLT handle


From: Laurent Vivier
Subject: Re: [Qemu-devel] [PATCH v3] scripts/qemu-binfmt-conf.sh: add bFLT handler registration
Date: Wed, 24 Oct 2018 12:52:17 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0

On 21/10/2018 17:55, Max Filippov wrote:
> bFLT format header doesn't have enough information to register a handler
> for a specific architecture. Add switch -f / --flat that registers one
> of the qemu binaries as a handler for bFLT executable images.
> 
> Signed-off-by: Max Filippov <address@hidden>
> ---
> Changes v2->v3:
> - fix bFLT in the patch subject
> 
> Changes v1->v2:
> - drop unintended changes to dtc;
> 
>  scripts/qemu-binfmt-conf.sh | 32 ++++++++++++++++++++++++++++++--
>  1 file changed, 30 insertions(+), 2 deletions(-)
> 
> diff --git a/scripts/qemu-binfmt-conf.sh b/scripts/qemu-binfmt-conf.sh
> index b5a16742a149..39f61065c698 100755
> --- a/scripts/qemu-binfmt-conf.sh
> +++ b/scripts/qemu-binfmt-conf.sh
> @@ -132,6 +132,9 @@ 
> or1k_magic='\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\
>  
> or1k_mask='\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff'
>  or1k_family=or1k
>  
> +flat_magic='bFLT\x00\x00\x00\x04'
> +flat_mask='\xff\xff\xff\xff\xff\xff\xff\xff'
> +
>  qemu_get_family() {
>      cpu=${HOST_ARCH:-$(uname -m)}
>      case "$cpu" in
> @@ -170,6 +173,7 @@ usage() {
>  Usage: qemu-binfmt-conf.sh [--qemu-path PATH][--debian][--systemd CPU]
>                             [--help][--credential yes|no][--exportdir PATH]
>                             [--persistent yes|no][--qemu-suffix SUFFIX]
> +                           [--flat CPU]
>  
>         Configure binfmt_misc to use qemu interpreter
>  
> @@ -188,7 +192,9 @@ Usage: qemu-binfmt-conf.sh [--qemu-path 
> PATH][--debian][--systemd CPU]
>                        calculated according to the binary to interpret
>         --persistent:  if yes, the interpreter is loaded when binfmt is
>                        configured and remains in memory. All future uses
> -                      are cloned from the open file.
> +                      are cloned from the open file
> +       --flat:        register QEMU for this CPU architecture as a handler
> +                      for the bFLT executable format.
>  
>      To import templates with update-binfmts, use :
>  
> @@ -311,6 +317,13 @@ qemu_set_binfmts() {
>              $BINFMT_SET
>          fi
>      done
> +    if [ -n "$QEMU_FLAT" ] ; then
> +        cpu="${QEMU_FLAT}_bflt"

I think you don't need this, you can let the user to use "--qemu-suffix"
for that.

Thanks,
Laurent



reply via email to

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