qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [Bug 1790260] [NEW] binfmt support not working for x86 host


From: elypter
Subject: [Qemu-devel] [Bug 1790260] [NEW] binfmt support not working for x86 host and x86_64 guest
Date: Sat, 01 Sep 2018 03:20:07 -0000

Public bug reported:

this is a problem in the qemu-binfmt-conf.sh script and maybe somewhere
else. the version i checked is the current github mirror
https://github.com/qemu/qemu/blob/master/scripts/qemu-binfmt-conf.sh

i am running linux mint 19 32bit on a 32bit x86 cpu and i want to run
some applications that are only available as x86_64 packages. i use
multiarch and qemu and it works for simple applications like cacafire.
however i want to run the application natively from the shell without
having to use qemu-x86_64 <path>. i also installed the binfmt-support
package. when i run update-binfmts --display then an extry for x86_64 is
missing and transparent execution is not working.

the problem seems to be in the qemu-binfmt-conf.sh script. it disables
the creation of entries for cpus of the same family. this is not a
problem if you are using a 64bit cpu because 32bit binaries run on it
natively but it doesnt work in the opposite way. hacking line 310 from

         if [ "$host_family" != "$family" ] ; then

to

         if [ "$cpu" = "x86_64" ] || [ "$host_family" != "$family" ] ;
then

and running it with the --systemd ALL parameter causes a x86_64 config
file to be created. it still doesnt work but that might have different
causes.

** Affects: qemu
     Importance: Undecided
         Status: New

** Description changed:

  this is a problem in the qemu-binfmt-conf.sh script and maybe somewhere
  else. the version i checked is the current github mirror
  https://github.com/qemu/qemu/blob/master/scripts/qemu-binfmt-conf.sh
  
  i am running linux mint 19 32bit on a 32bit x86 cpu and i want to run
  some applications that are only available as x86_64 packages. i use
  multiarch and qemu and it works for simple applications like cacafire.
  however i want to run the application natively from the shell without
  having to use qemu-x86_64 <path>. i also installed the binfmt-support
  package. when i run update-binfmts --display then an extry for x86_64 is
  missing and transparent execution is not working.
  
  the problem seems to be in the qemu-binfmt-conf.sh script. it disables
  the creation of entries for cpus of the same family. this is not a
  problem if you are using a 64bit cpu because 32bit binaries run on it
- natively but it doesnt work in the opposite way. hacking line 310 to
+ natively but it doesnt work in the opposite way. hacking line 310 from
  
-          if [ "$cpu" = "x86_64" ] || [ "$host_family" != "$family" ] ;
+          if [ "$host_family" != "$family" ] ; then
+ 
+ to
+ 
+          if [ "$cpu" = "x86_64" ] || [ "$host_family" != "$family" ] ;
  then
  
  and running it with the --systemd ALL parameter causes a x86_64 config
  file to be created. it still doesnt work but that might have different
  causes.

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1790260

Title:
  binfmt support not working for x86 host and x86_64 guest

Status in QEMU:
  New

Bug description:
  this is a problem in the qemu-binfmt-conf.sh script and maybe
  somewhere else. the version i checked is the current github mirror
  https://github.com/qemu/qemu/blob/master/scripts/qemu-binfmt-conf.sh

  i am running linux mint 19 32bit on a 32bit x86 cpu and i want to run
  some applications that are only available as x86_64 packages. i use
  multiarch and qemu and it works for simple applications like cacafire.
  however i want to run the application natively from the shell without
  having to use qemu-x86_64 <path>. i also installed the binfmt-support
  package. when i run update-binfmts --display then an extry for x86_64
  is missing and transparent execution is not working.

  the problem seems to be in the qemu-binfmt-conf.sh script. it disables
  the creation of entries for cpus of the same family. this is not a
  problem if you are using a 64bit cpu because 32bit binaries run on it
  natively but it doesnt work in the opposite way. hacking line 310 from

           if [ "$host_family" != "$family" ] ; then

  to

           if [ "$cpu" = "x86_64" ] || [ "$host_family" != "$family" ] ;
  then

  and running it with the --systemd ALL parameter causes a x86_64 config
  file to be created. it still doesnt work but that might have different
  causes.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1790260/+subscriptions



reply via email to

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