public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
From: Claudius Heine <claudius.heine.ext@siemens.com>
To: akihiro27.suzuki@toshiba.co.jp, jan.kiszka@siemens.com,
	isar-users@googlegroups.com, ch@denx.de
Cc: daniel.sangorrin@toshiba.co.jp, cip-dev@lists.cip-project.org
Subject: Re: debootrap error
Date: Tue, 19 Mar 2019 08:22:17 +0100	[thread overview]
Message-ID: <48868c49-3ab2-57f3-2a1e-2a7cf4ff839c@siemens.com> (raw)
In-Reply-To: <TY2PR01MB5146C28D70580735866F91FDD9400@TY2PR01MB5146.jpnprd01.prod.outlook.com>

Hi Suzuki-san,

On 19/03/2019 06.18, akihiro27.suzuki@toshiba.co.jp wrote:
> Hi,
> 
>>> That is how my qemu-arm setting looks like. Do you have a differentqemu path?
>>>
>>> $ cat /proc/sys/fs/binfmt_misc/qemu-arm
>>> enabled
>>> interpreter /usr/bin/qemu-arm-static
>>> flags: OCF
>>> offset 0
>>> magic 7f454c4601010100000000000000000002002800
>>> mask ffffffffffffff00fffffffffffffffffeffffff
> My qemu-arm setting is as follows:
> 
>      $ cat /proc/sys/fs/binfmt_misc/qemu-arm
>      enabled
>      interpreter /usr/bin/qemu-arm
>      flags: OC
>      offset 0
>      magic 7f454c4601010100000000000000000002002800
>      mask ffffffffffffff00fffffffffffffffffeffffff
> 
> According to this, the interpreter path was not same.
> My machine used /usr/bin/qemu-arm but Claudius's machine used /usr/bin/qemu-arm-static.
> 
> If the first place, my machine didn't have /usr/bin/qemu-arm-static.
> So, I installed qemu-user-static as follows:
> 
>      $ sudo aptitude install qemu-user-static
>      [sudo] password for akihiro:
>      The following NEW packages will be installed:
>        qemu-user-static{b}
>      0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
>      Need to get 10.0 MB of archives. After unpacking 101 MB will be used.
>      The following packages have unmet dependencies:
>       qemu-user-static : Conflicts: qemu-user-binfmt but 1:2.11+dfsg-1ubuntu7.10 is installed
>       qemu-user-binfmt : Conflicts: qemu-user-static but 1:2.11+dfsg-1ubuntu7.10 is to be installed
>      The following actions will resolve these dependencies:
>      
>           Remove the following packages:
>      1)     qemu-user-binfmt [1:2.11+dfsg-1ubuntu7.10 (bionic-updates, now)]
>      
>      Accept this solution? [Y/n/q/?] Y
>      The following NEW packages will be installed:
>        qemu-user-static
>      The following packages will be REMOVED:
>        qemu-user-binfmt{a}
>      0 packages upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
>      Need to get 10.0 MB of archives. After unpacking 101 MB will be used.
>      Do you want to continue? [Y/n/?] Y
>      Get: 1 http://ftp.jaist.ac.jp/pub/Linux/ubuntu bionic-updates/universe amd64 qemu-user-static amd64 1:2.11+dfsg-1ubuntu7.10 [10.0 MB]
>      Fetched 10.0 MB in 1min 5s (155 kB/s)
>      (Reading database ... 299683 files and directories currently installed.)
>      Removing qemu-user-binfmt (1:2.11+dfsg-1ubuntu7.10) ...
>      Selecting previously unselected package qemu-user-static.
>      (Reading database ... 299683 files and directories currently installed.)
>      Preparing to unpack .../qemu-user-static_1%3a2.11+dfsg-1ubuntu7.10_amd64.deb ...
>      Unpacking qemu-user-static (1:2.11+dfsg-1ubuntu7.10) ...
>      Setting up qemu-user-static (1:2.11+dfsg-1ubuntu7.10) ...
>      Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
> 
> After that, I checked my qemu-arm setting.
> The interpreter path has been changed to /usr/bin/qemu-arm-static as below:
> 
>      $ cat /proc/sys/fs/binfmt_misc/qemu-arm
>      enabled
>      interpreter /usr/bin/qemu-arm-static
>      flags: OC
>      offset 0
>      magic 7f454c4601010100000000000000000002002800
>      mask ffffffffffffff00fffffffffffffffffeffffff
> 
> After that, I built board-bbb.yml as below, and it succeeded!
> 
>      $ ./kas-docker --isar build kas.yml:board-bbb.yml
> 
> The root cause of this error is that my machine was not using
> statically linked user mode qemu binaries?

Well the docker container has the 'qemu-user-static' files installed as 
a dependency of qemu-debootstrap. The dynamic linking version would not 
work here, because qemu-deboostrap will copy just the one binary to the 
bootstrapped rootfs before chrooting into it. The binfmt_misc settings 
needs to point to the qemu static binary that was copied to the rootfs 
for this to work. The error of course is pretty misleading and stumbled 
over that very often myself.

And what your problem shows as well is that the call of 'update-binfmts 
--enable' (which happens in the docker entry point script) does not seem 
to fix the path.

kind regards,
Claudius

> 
> Best regards,
> Suzuki
> 
>> -----Original Message-----
>> From: Jan Kiszka [mailto:jan.kiszka@siemens.com]
>> Sent: Monday, March 18, 2019 7:19 PM
>> To: Claudius Heine <claudius.heine.ext@siemens.com>; suzuki akihiro(鈴
>> 木 章浩 ○SWC□OST) <akihiro27.suzuki@toshiba.co.jp>;
>> isar-users@googlegroups.com; ch@denx.de
>> Cc: sangorrin daniel(サンゴリン ダニエル ○SWC□OST)
>> <daniel.sangorrin@toshiba.co.jp>; cip-dev@lists.cip-project.org
>> Subject: Re: debootrap error
>>
>> On 18.03.19 11:17, Claudius Heine wrote:
>>> Hi,,
>>>
>>> On 18/03/2019 11.14, akihiro27.suzuki@toshiba.co.jp wrote:
>>>> Hi,
>>>>
>>>>> That's a good hint: Suzuki-san, could you check if binfmt_misc is
>>>>> available as
>>>>> kernel feature/module on that machine? There may also be some warning
>>>>> during the
>>>>> container startup.
>>>> I checked it and maybe it is available.
>>>>
>>>>       $ mount | grep binfmt
>>>>       systemd-1 on /proc/sys/fs/binfmt_misc type autofs
>>>>
>> (rw,relatime,fd=31,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pip
>> e_ino=18804)
>>>>       binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc
>> (rw,relatime)
>>>>       $ lsmod | grep binfmt
>>>>       binfmt_misc            20480  1
>>>>       $ cat /boot/config-4.15.0-46-generic  | grep BINFMT
>>>>       CONFIG_BINFMT_ELF=y
>>>>       CONFIG_COMPAT_BINFMT_ELF=y
>>>>       CONFIG_BINFMT_SCRIPT=y
>>>>       CONFIG_BINFMT_MISC=m
>>>>       $ ls /proc/sys/fs/binfmt_misc/
>>>>       python2.7     qemu-armeb       qemu-mips64      qemu-ppc64
>> le
>>>> qemu-sparc        status
>>>>       python3.5     qemu-cris        qemu-mips64el    qemu-riscv
>> 32
>>>> qemu-sparc32plus
>>>>       python3.6     qemu-hppa        qemu-mipsel      qemu-riscv
>> 64  qemu-sparc64
>>>>       qemu-aarch64  qemu-m68k        qemu-ppc         qemu-s390x
>>      qemu-xtensa
>>>>       qemu-alpha    qemu-microblaze  qemu-ppc64       qemu-sh4
>>      qemu-xtensaeb
>>>>       qemu-arm      qemu-mips        qemu-ppc64abi32  qemu-sh4eb
>>      register
>>>>       $ cat /proc/sys/fs/binfmt_misc/status
>>>>       enabled
>>>
>>> That is how my qemu-arm setting looks like. Do you have a different
>> qemu path?
>>
>> Even if, it shouldn't be after starting the container: We allow it to
>> adjust the
>> system-wide binfmt configuration (one reason for --privileged).
>>
>> Jan
>>
>>>
>>> $ cat /proc/sys/fs/binfmt_misc/qemu-arm
>>> enabled
>>> interpreter /usr/bin/qemu-arm-static
>>> flags: OCF
>>> offset 0
>>> magic 7f454c4601010100000000000000000002002800
>>> mask ffffffffffffff00fffffffffffffffffeffffff
>>>
>>> regards,
>>> Claudius
>>
>> --
>> Siemens AG, Corporate Technology, CT RDA IOT SES-DE
>> Corporate Competence Center Embedded Linux
> 

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-54 Fax: (+49)-8142-66989-80 Email: ch@denx.de

  reply	other threads:[~2019-03-19  7:22 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <HK0PR01MB297958B4B49D80F30DD800D9E24B0@HK0PR01MB2979.apcprd01.prod.exchangelabs.com>
     [not found] ` <OSAPR01MB37633BA45B40D16877229C51D04B0@OSAPR01MB3763.jpnprd01.prod.outlook.com>
     [not found]   ` <375b3b16-8688-6fb2-4d4b-fc130c501c7e@siemens.com>
     [not found]     ` <TY2PR01MB5146389CBF352FDC6F104262D9440@TY2PR01MB5146.jpnprd01.prod.outlook.com>
     [not found]       ` <cc3ea2e6-79d9-ed10-f1a3-cf615c3e6ec8@siemens.com>
     [not found]         ` <TY2PR01MB514615FB285AF43385A49493D9470@TY2PR01MB5146.jpnprd01.prod.outlook.com>
2019-03-18  9:05           ` debootrap error (was: Re: [cip-dev] CIP IRC weekly meeting today) Jan Kiszka
2019-03-18  9:11             ` Claudius Heine
2019-03-18  9:39               ` debootrap error Jan Kiszka
2019-03-18 10:14                 ` akihiro27.suzuki
2019-03-18 10:17                   ` Claudius Heine
2019-03-18 10:18                     ` Jan Kiszka
2019-03-19  5:18                       ` akihiro27.suzuki
2019-03-19  7:22                         ` Claudius Heine [this message]
2019-03-19  7:51                           ` Jan Kiszka
2019-03-19  8:01                             ` Claudius Heine
2019-03-19  9:09                               ` Jan Kiszka
2019-03-19  9:26                                 ` Claudius Heine
2019-03-19  9:45                                   ` Jan Kiszka
2019-03-19 10:14                       ` Henning Schild
2019-03-19 10:27                         ` Jan Kiszka

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=48868c49-3ab2-57f3-2a1e-2a7cf4ff839c@siemens.com \
    --to=claudius.heine.ext@siemens.com \
    --cc=akihiro27.suzuki@toshiba.co.jp \
    --cc=ch@denx.de \
    --cc=cip-dev@lists.cip-project.org \
    --cc=daniel.sangorrin@toshiba.co.jp \
    --cc=isar-users@googlegroups.com \
    --cc=jan.kiszka@siemens.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox