public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
* [PATCH 0/8] Assorted patches
@ 2018-02-16  8:52 Jan Kiszka
  2018-02-16  8:52 ` [PATCH 1/8] Mount devtmpfs read-only into chroot Jan Kiszka
                   ` (9 more replies)
  0 siblings, 10 replies; 28+ messages in thread
From: Jan Kiszka @ 2018-02-16  8:52 UTC (permalink / raw)
  To: isar-users

Flush of my remaining queue:
 - improvements for mount and umount
 - arm64 target
 - copyright and credit enhancements

Jan

Jan Kiszka (8):
  Mount devtmpfs read-only into chroot
  isar-events: Wait for failing umounts
  isar-events: Do not match on distro and arch
  Add Debian arm64 support to the core
  Add qemuarm64-stretch multiconfig
  Add qemuarm64-stretch to CI
  build-kernel.sh: Add copyright header
  Enhance credits

 README.md                                          |  2 +-
 meta-isar/conf/local.conf.sample                   |  1 +
 meta-isar/conf/machine/qemuarm64.conf              |  7 +++++
 meta-isar/conf/multiconfig/qemuarm64-stretch.conf  | 20 +++++++++++++
 meta-isar/recipes-core/images/files/setup.sh       | 18 +++++++++---
 meta/classes/dpkg-base.bbclass                     |  2 +-
 meta/classes/isar-events.bbclass                   | 34 +++++++++++++---------
 meta/recipes-devtools/buildchroot/buildchroot.bb   |  2 +-
 meta/recipes-devtools/buildchroot/files/setup.sh   | 18 +++++++++---
 .../isar-apt/files/distributions.in                |  2 +-
 meta/recipes-kernel/linux/files/build-kernel.sh    |  8 +++++
 scripts/ci_build.sh                                |  1 +
 12 files changed, 90 insertions(+), 25 deletions(-)
 create mode 100644 meta-isar/conf/machine/qemuarm64.conf
 create mode 100644 meta-isar/conf/multiconfig/qemuarm64-stretch.conf

-- 
2.13.6


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH 1/8] Mount devtmpfs read-only into chroot
  2018-02-16  8:52 [PATCH 0/8] Assorted patches Jan Kiszka
@ 2018-02-16  8:52 ` Jan Kiszka
  2018-02-19 10:09   ` Consolidate mounting in tasks (was Re: [PATCH 1/8] Mount devtmpfs read-only into chroot) Claudius Heine
  2018-02-20  6:38   ` [PATCH 1/8] Mount devtmpfs read-only into chroot Alexander Smirnov
  2018-02-16  8:52 ` [PATCH 2/8] isar-events: Wait for failing umounts Jan Kiszka
                   ` (8 subsequent siblings)
  9 siblings, 2 replies; 28+ messages in thread
From: Jan Kiszka @ 2018-02-16  8:52 UTC (permalink / raw)
  To: isar-users

From: Jan Kiszka <jan.kiszka@siemens.com>

It's too easy to destroy the content of devtmpfs, which is shared with
the host (including privileged container setups), by calling rm -rf on
an output dir that still has devtmpfs mounted.

To achieve write protection for device nodes, we can't mount devtmpfs
directly in read-only mode as that will change all mounts to that mode.
Luckily, doing a read-only bind-mount does the trick.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 meta/classes/dpkg-base.bbclass                   | 2 +-
 meta/recipes-devtools/buildchroot/buildchroot.bb | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/classes/dpkg-base.bbclass b/meta/classes/dpkg-base.bbclass
index 5eef11b..78709f9 100644
--- a/meta/classes/dpkg-base.bbclass
+++ b/meta/classes/dpkg-base.bbclass
@@ -41,7 +41,7 @@ do_build() {
         if ! grep -q ${BUILDCHROOT_DIR}/isar-apt /proc/mounts; then \
             mount --bind ${DEPLOY_DIR_APT}/${DISTRO} ${BUILDCHROOT_DIR}/isar-apt; \
             mount --bind ${DL_DIR} ${BUILDCHROOT_DIR}/downloads; \
-            mount -t devtmpfs -o mode=0755,nosuid devtmpfs ${BUILDCHROOT_DIR}/dev; \
+            mount --bind -o ro /dev ${BUILDCHROOT_DIR}/dev; \
             mount -t proc none ${BUILDCHROOT_DIR}/proc; \
         fi'
 
diff --git a/meta/recipes-devtools/buildchroot/buildchroot.bb b/meta/recipes-devtools/buildchroot/buildchroot.bb
index 520daf9..1eca035 100644
--- a/meta/recipes-devtools/buildchroot/buildchroot.bb
+++ b/meta/recipes-devtools/buildchroot/buildchroot.bb
@@ -66,7 +66,7 @@ do_build() {
            "${WORKDIR}/multistrap.conf.in" > "${WORKDIR}/multistrap.conf"
 
     sudo mount --bind ${DEPLOY_DIR_APT}/${DISTRO} ${BUILDCHROOT_DIR}/isar-apt
-    sudo mount -t devtmpfs -o mode=0755,nosuid devtmpfs ${BUILDCHROOT_DIR}/dev
+    sudo mount --bind -o ro /dev ${BUILDCHROOT_DIR}/dev
     sudo mount -t proc none ${BUILDCHROOT_DIR}/proc
 
     # Create root filesystem
-- 
2.13.6


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH 2/8] isar-events: Wait for failing umounts
  2018-02-16  8:52 [PATCH 0/8] Assorted patches Jan Kiszka
  2018-02-16  8:52 ` [PATCH 1/8] Mount devtmpfs read-only into chroot Jan Kiszka
@ 2018-02-16  8:52 ` Jan Kiszka
  2018-02-19  9:45   ` Alexander Smirnov
  2018-02-16  8:52 ` [PATCH 3/8] isar-events: Do not match on distro and arch Jan Kiszka
                   ` (7 subsequent siblings)
  9 siblings, 1 reply; 28+ messages in thread
From: Jan Kiszka @ 2018-02-16  8:52 UTC (permalink / raw)
  To: isar-users

From: Jan Kiszka <jan.kiszka@siemens.com>

The BuildCompleted event may come prior to all running build processes
being terminated. In that case, some mount might be busy, and we will
leave them dangling behind. Wait in that case.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 meta/classes/isar-events.bbclass | 28 +++++++++++++++++++---------
 1 file changed, 19 insertions(+), 9 deletions(-)

diff --git a/meta/classes/isar-events.bbclass b/meta/classes/isar-events.bbclass
index 4b5e97e..68208f1 100644
--- a/meta/classes/isar-events.bbclass
+++ b/meta/classes/isar-events.bbclass
@@ -2,11 +2,26 @@
 #
 # This software is a part of ISAR.
 # Copyright (C) 2015-2017 ilbers GmbH
+# Copyright (c) Siemens AG, 2018
 
 addhandler isar_handler
 
 python isar_handler () {
     import subprocess
+    import time
+
+    def umount_all(basepath):
+        # '/proc/mounts' contains all the active mounts, so knowing basepath
+        # we can get the list of mounts for the specific multiconfig and
+        # clean them.
+        with open('/proc/mounts', 'rU') as f:
+            for line in f:
+                if basepath in line:
+                    if subprocess.call('sudo umount ' + line.split()[1],
+                                       stdout=devnull, stderr=devnull,
+                                       shell=True) != 0:
+                        return False
+        return True
 
     devnull = open(os.devnull, 'w')
 
@@ -16,15 +31,10 @@ python isar_handler () {
         arch = d.getVar('DISTRO_ARCH', True)
 
         if tmpdir and distro and arch:
-            w = tmpdir + '/work/' + distro + '-' + arch
-
-            # '/proc/mounts' contains all the active mounts, so knowing 'w' we
-            # could get the list of mounts for the specific multiconfig and
-            # clean them.
-            with open('/proc/mounts', 'rU') as f:
-                for line in f:
-                    if w in line:
-                        subprocess.call('sudo umount -f ' + line.split()[1], stdout=devnull, stderr=devnull, shell=True)
+            basepath = tmpdir + '/work/' + distro + '-' + arch
+
+            while not umount_all(basepath):
+                time.sleep(1)
 
     devnull.close()
 }
-- 
2.13.6


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH 3/8] isar-events: Do not match on distro and arch
  2018-02-16  8:52 [PATCH 0/8] Assorted patches Jan Kiszka
  2018-02-16  8:52 ` [PATCH 1/8] Mount devtmpfs read-only into chroot Jan Kiszka
  2018-02-16  8:52 ` [PATCH 2/8] isar-events: Wait for failing umounts Jan Kiszka
@ 2018-02-16  8:52 ` Jan Kiszka
  2018-02-19  9:54   ` Alexander Smirnov
  2018-02-16  8:52 ` [PATCH 4/8] Add Debian arm64 support to the core Jan Kiszka
                   ` (6 subsequent siblings)
  9 siblings, 1 reply; 28+ messages in thread
From: Jan Kiszka @ 2018-02-16  8:52 UTC (permalink / raw)
  To: isar-users

From: Jan Kiszka <jan.kiszka@siemens.com>

There might be operations in flight that are mounting more for a
particular $distro-$arch when the completion event arrives. Simply
trying to umount everything under the TMPDIR increases the chance to
catch them later, e.g. because we have to wait for some mount point to
become free.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 meta/classes/isar-events.bbclass | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/meta/classes/isar-events.bbclass b/meta/classes/isar-events.bbclass
index 68208f1..29c7437 100644
--- a/meta/classes/isar-events.bbclass
+++ b/meta/classes/isar-events.bbclass
@@ -27,11 +27,9 @@ python isar_handler () {
 
     if isinstance(e, bb.event.BuildCompleted):
         tmpdir = d.getVar('TMPDIR', True)
-        distro = d.getVar('DISTRO', True)
-        arch = d.getVar('DISTRO_ARCH', True)
 
-        if tmpdir and distro and arch:
-            basepath = tmpdir + '/work/' + distro + '-' + arch
+        if tmpdir:
+            basepath = tmpdir + '/work/'
 
             while not umount_all(basepath):
                 time.sleep(1)
-- 
2.13.6


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH 4/8] Add Debian arm64 support to the core
  2018-02-16  8:52 [PATCH 0/8] Assorted patches Jan Kiszka
                   ` (2 preceding siblings ...)
  2018-02-16  8:52 ` [PATCH 3/8] isar-events: Do not match on distro and arch Jan Kiszka
@ 2018-02-16  8:52 ` Jan Kiszka
  2018-02-16  8:52 ` [PATCH 5/8] Add qemuarm64-stretch multiconfig Jan Kiszka
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 28+ messages in thread
From: Jan Kiszka @ 2018-02-16  8:52 UTC (permalink / raw)
  To: isar-users

From: Jan Kiszka <jan.kiszka@siemens.com>

Required changes for the meta layer to build arm64 targets.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 meta/recipes-devtools/buildchroot/files/setup.sh      | 18 ++++++++++++++----
 meta/recipes-devtools/isar-apt/files/distributions.in |  2 +-
 2 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/meta/recipes-devtools/buildchroot/files/setup.sh b/meta/recipes-devtools/buildchroot/files/setup.sh
index 21c004e..1257739 100755
--- a/meta/recipes-devtools/buildchroot/files/setup.sh
+++ b/meta/recipes-devtools/buildchroot/files/setup.sh
@@ -14,6 +14,7 @@ set -e
 # setup.sh needs to be executable.
 
 TARGET=$1
+ARCH=$2
 
 # Prevent daemons from starting in buildchroot
 if [ -x "$TARGET/sbin/start-stop-daemon" ]; then
@@ -54,11 +55,20 @@ EOF
     chmod a+x $TARGET/usr/sbin/policy-rc.d
 fi
 
-# Install QEMU emulator to execute ARM binaries
-if [ ! -x /usr/bin/qemu-arm-static ]; then
-    echo "qemu-arm-static binary not present, unable to execute ARM binaries"
+case $ARCH in
+    armel|armhf)
+        qemu_arch=arm
+        ;;
+    arm64)
+        qemu_arch=aarch64
+        ;;
+esac
+
+# Install QEMU emulator to execute foreign binaries
+if [ ! -x /usr/bin/qemu-${qemu_arch}-static ]; then
+    echo "qemu-${qemu_arch}-static binary not present, unable to execute target binaries"
 else
-    sudo cp /usr/bin/qemu-arm-static ${TARGET}/usr/bin
+    sudo cp /usr/bin/qemu-${qemu_arch}-static ${TARGET}/usr/bin
 fi
 
 # Set hostname
diff --git a/meta/recipes-devtools/isar-apt/files/distributions.in b/meta/recipes-devtools/isar-apt/files/distributions.in
index cd214c6..cc82c57 100644
--- a/meta/recipes-devtools/isar-apt/files/distributions.in
+++ b/meta/recipes-devtools/isar-apt/files/distributions.in
@@ -1,3 +1,3 @@
 Codename: {DISTRO_NAME}
-Architectures: i386 armhf amd64 source
+Architectures: i386 armhf arm64 amd64 source
 Components: main
-- 
2.13.6


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH 5/8] Add qemuarm64-stretch multiconfig
  2018-02-16  8:52 [PATCH 0/8] Assorted patches Jan Kiszka
                   ` (3 preceding siblings ...)
  2018-02-16  8:52 ` [PATCH 4/8] Add Debian arm64 support to the core Jan Kiszka
@ 2018-02-16  8:52 ` Jan Kiszka
  2018-02-19 10:23   ` Alexander Smirnov
  2018-02-16  8:52 ` [PATCH 6/8] Add qemuarm64-stretch to CI Jan Kiszka
                   ` (4 subsequent siblings)
  9 siblings, 1 reply; 28+ messages in thread
From: Jan Kiszka @ 2018-02-16  8:52 UTC (permalink / raw)
  To: isar-users

From: Jan Kiszka <jan.kiszka@siemens.com>

Extend the image build script as needed and add a multiconfig that
allows to build a qemuarm64 target using stretch. Also add a machine
config for QEMU.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 meta-isar/conf/local.conf.sample                  |  1 +
 meta-isar/conf/machine/qemuarm64.conf             |  7 +++++++
 meta-isar/conf/multiconfig/qemuarm64-stretch.conf | 20 ++++++++++++++++++++
 meta-isar/recipes-core/images/files/setup.sh      | 18 ++++++++++++++----
 4 files changed, 42 insertions(+), 4 deletions(-)
 create mode 100644 meta-isar/conf/machine/qemuarm64.conf
 create mode 100644 meta-isar/conf/multiconfig/qemuarm64-stretch.conf

diff --git a/meta-isar/conf/local.conf.sample b/meta-isar/conf/local.conf.sample
index 09c0e25..46bfae0 100644
--- a/meta-isar/conf/local.conf.sample
+++ b/meta-isar/conf/local.conf.sample
@@ -41,6 +41,7 @@ BBMULTICONFIG = " \
     qemuarm-wheezy \
     qemuarm-jessie \
     qemuarm-stretch \
+    qemuarm64-stretch \
     qemui386-jessie \
     qemui386-stretch \
     qemuamd64-jessie \
diff --git a/meta-isar/conf/machine/qemuarm64.conf b/meta-isar/conf/machine/qemuarm64.conf
new file mode 100644
index 0000000..70dd941
--- /dev/null
+++ b/meta-isar/conf/machine/qemuarm64.conf
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2015-2017 ilbers GmbH
+
+MACHINE_SERIAL ?= "ttyAMA0"
+BAUDRATE_TTY ?= "115200"
+
+IMAGE_TYPE ?= "ext4-img"
diff --git a/meta-isar/conf/multiconfig/qemuarm64-stretch.conf b/meta-isar/conf/multiconfig/qemuarm64-stretch.conf
new file mode 100644
index 0000000..cffdcdb
--- /dev/null
+++ b/meta-isar/conf/multiconfig/qemuarm64-stretch.conf
@@ -0,0 +1,20 @@
+# This software is a part of ISAR.
+# Copyright (C) 2017 ilbers GmbH
+# Copyright (c) Siemens AG, 2018
+
+MACHINE ?= "qemuarm64"
+
+DISTRO ?= "debian-stretch"
+DISTRO_ARCH ?= "arm64"
+
+KERNEL_NAME ?= "arm64"
+
+IMAGE_PREINSTALL += "init"
+
+ROOTFS_DEV ?= "vda"
+
+QEMU_ARCH ?= "aarch64"
+QEMU_MACHINE ?= "virt"
+QEMU_CPU ?= "cortex-a57"
+# TODO: start_vm doesn't support multiline vars
+QEMU_ROOTFS_DEV ?= "-drive file=##ROOTFS_IMAGE##,if=none,format=raw,id=hd0 -device virtio-blk-device,drive=hd0"
diff --git a/meta-isar/recipes-core/images/files/setup.sh b/meta-isar/recipes-core/images/files/setup.sh
index 39b828c..86c065c 100755
--- a/meta-isar/recipes-core/images/files/setup.sh
+++ b/meta-isar/recipes-core/images/files/setup.sh
@@ -14,6 +14,7 @@ set -e
 # setup.sh needs to be executable.
 
 TARGET=$1
+ARCH=$2
 
 # Prevent daemons from starting in postinstall during the initial "dpkg
 # --configure -a" under QEMU on the build host
@@ -56,11 +57,20 @@ EOF
     chmod a+x $TARGET/usr/sbin/policy-rc.d
 fi
 
-# Install QEMU emulator to execute ARM binaries
-if [ ! -x /usr/bin/qemu-arm-static ]; then
-    echo "qemu-arm-static binary not present, unable to execute ARM binaries"
+case $ARCH in
+    armel|armhf)
+        qemu_arch=arm
+        ;;
+    arm64)
+        qemu_arch=aarch64
+        ;;
+esac
+
+# Install QEMU emulator to execute foreign binaries
+if [ ! -x /usr/bin/qemu-${qemu_arch}-static ]; then
+    echo "qemu-${qemu_arch}-static binary not present, unable to execute target binaries"
 else
-    sudo cp /usr/bin/qemu-arm-static ${TARGET}/usr/bin
+    sudo cp /usr/bin/qemu-${qemu_arch}-static ${TARGET}/usr/bin
 fi
 
 # Set hostname
-- 
2.13.6


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH 6/8] Add qemuarm64-stretch to CI
  2018-02-16  8:52 [PATCH 0/8] Assorted patches Jan Kiszka
                   ` (4 preceding siblings ...)
  2018-02-16  8:52 ` [PATCH 5/8] Add qemuarm64-stretch multiconfig Jan Kiszka
@ 2018-02-16  8:52 ` Jan Kiszka
  2018-02-16  8:52 ` [PATCH 7/8] build-kernel.sh: Add copyright header Jan Kiszka
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 28+ messages in thread
From: Jan Kiszka @ 2018-02-16  8:52 UTC (permalink / raw)
  To: isar-users

From: Jan Kiszka <jan.kiszka@siemens.com>

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 scripts/ci_build.sh | 1 +
 1 file changed, 1 insertion(+)

diff --git a/scripts/ci_build.sh b/scripts/ci_build.sh
index 2cacdf1..f84fdcf 100755
--- a/scripts/ci_build.sh
+++ b/scripts/ci_build.sh
@@ -26,6 +26,7 @@ bitbake \
         multiconfig:qemuarm-wheezy:isar-image-base \
         multiconfig:qemuarm-jessie:isar-image-base \
         multiconfig:qemuarm-stretch:isar-image-base \
+        multiconfig:qemuarm64-stretch:isar-image-base \
         multiconfig:qemui386-jessie:isar-image-base \
         multiconfig:qemui386-stretch:isar-image-base \
         multiconfig:qemuamd64-jessie:isar-image-base \
-- 
2.13.6


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH 7/8] build-kernel.sh: Add copyright header
  2018-02-16  8:52 [PATCH 0/8] Assorted patches Jan Kiszka
                   ` (5 preceding siblings ...)
  2018-02-16  8:52 ` [PATCH 6/8] Add qemuarm64-stretch to CI Jan Kiszka
@ 2018-02-16  8:52 ` Jan Kiszka
  2018-02-16  8:52 ` [PATCH 8/8] Enhance credits Jan Kiszka
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 28+ messages in thread
From: Jan Kiszka @ 2018-02-16  8:52 UTC (permalink / raw)
  To: isar-users

From: Jan Kiszka <jan.kiszka@siemens.com>

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 meta/recipes-kernel/linux/files/build-kernel.sh | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/meta/recipes-kernel/linux/files/build-kernel.sh b/meta/recipes-kernel/linux/files/build-kernel.sh
index e64ab7b..94897ec 100644
--- a/meta/recipes-kernel/linux/files/build-kernel.sh
+++ b/meta/recipes-kernel/linux/files/build-kernel.sh
@@ -1,4 +1,12 @@
 #!/bin/sh
+#
+# Custom kernel build
+#
+# This software is a part of ISAR.
+# Copyright (c) Siemens AG, 2018
+#
+# SPDX-License-Identifier: MIT
+
 set -e
 
 REPACK_DIR="$1/../repack"
-- 
2.13.6


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH 8/8] Enhance credits
  2018-02-16  8:52 [PATCH 0/8] Assorted patches Jan Kiszka
                   ` (6 preceding siblings ...)
  2018-02-16  8:52 ` [PATCH 7/8] build-kernel.sh: Add copyright header Jan Kiszka
@ 2018-02-16  8:52 ` Jan Kiszka
  2018-02-19 13:56 ` [PATCH 0/8] Assorted patches Alexander Smirnov
  2018-02-20 11:19 ` Alexander Smirnov
  9 siblings, 0 replies; 28+ messages in thread
From: Jan Kiszka @ 2018-02-16  8:52 UTC (permalink / raw)
  To: isar-users

From: Jan Kiszka <jan.kiszka@siemens.com>

About 1/3 of the commits are already by Siemens, more to come.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.md b/README.md
index 810001c..8c345fc 100644
--- a/README.md
+++ b/README.md
@@ -50,5 +50,5 @@ Tested on:
 
 # Credits
 
-* Developed by ilbers GmbH
+* Developed by ilbers GmbH & Siemens AG
 * Sponsored by Siemens AG
-- 
2.13.6


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/8] isar-events: Wait for failing umounts
  2018-02-16  8:52 ` [PATCH 2/8] isar-events: Wait for failing umounts Jan Kiszka
@ 2018-02-19  9:45   ` Alexander Smirnov
  2018-02-19  9:48     ` Jan Kiszka
  0 siblings, 1 reply; 28+ messages in thread
From: Alexander Smirnov @ 2018-02-19  9:45 UTC (permalink / raw)
  To: Jan Kiszka, isar-users

On 02/16/2018 11:52 AM, Jan Kiszka wrote:
> From: Jan Kiszka <jan.kiszka@siemens.com>
> 
> The BuildCompleted event may come prior to all running build processes
> being terminated. In that case, some mount might be busy, and we will
> leave them dangling behind. Wait in that case.

How long we should wait? For example there was a bug with apt-get which 
results as hanging of 'http' process. So in this case Isar never returns 
to command prompt until second ^C pressed.

Alex

> 
> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
> ---
>   meta/classes/isar-events.bbclass | 28 +++++++++++++++++++---------
>   1 file changed, 19 insertions(+), 9 deletions(-)
> 
> diff --git a/meta/classes/isar-events.bbclass b/meta/classes/isar-events.bbclass
> index 4b5e97e..68208f1 100644
> --- a/meta/classes/isar-events.bbclass
> +++ b/meta/classes/isar-events.bbclass
> @@ -2,11 +2,26 @@
>   #
>   # This software is a part of ISAR.
>   # Copyright (C) 2015-2017 ilbers GmbH
> +# Copyright (c) Siemens AG, 2018
>   
>   addhandler isar_handler
>   
>   python isar_handler () {
>       import subprocess
> +    import time
> +
> +    def umount_all(basepath):
> +        # '/proc/mounts' contains all the active mounts, so knowing basepath
> +        # we can get the list of mounts for the specific multiconfig and
> +        # clean them.
> +        with open('/proc/mounts', 'rU') as f:
> +            for line in f:
> +                if basepath in line:
> +                    if subprocess.call('sudo umount ' + line.split()[1],
> +                                       stdout=devnull, stderr=devnull,
> +                                       shell=True) != 0:
> +                        return False
> +        return True
>   
>       devnull = open(os.devnull, 'w')
>   
> @@ -16,15 +31,10 @@ python isar_handler () {
>           arch = d.getVar('DISTRO_ARCH', True)
>   
>           if tmpdir and distro and arch:
> -            w = tmpdir + '/work/' + distro + '-' + arch
> -
> -            # '/proc/mounts' contains all the active mounts, so knowing 'w' we
> -            # could get the list of mounts for the specific multiconfig and
> -            # clean them.
> -            with open('/proc/mounts', 'rU') as f:
> -                for line in f:
> -                    if w in line:
> -                        subprocess.call('sudo umount -f ' + line.split()[1], stdout=devnull, stderr=devnull, shell=True)
> +            basepath = tmpdir + '/work/' + distro + '-' + arch
> +
> +            while not umount_all(basepath):
> +                time.sleep(1)
>   
>       devnull.close()
>   }
> 

-- 
With best regards,
Alexander Smirnov

ilbers GmbH
Baierbrunner Str. 28c
D-81379 Munich
+49 (89) 122 67 24-0
http://ilbers.de/
Commercial register Munich, HRB 214197
General manager: Baurzhan Ismagulov

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/8] isar-events: Wait for failing umounts
  2018-02-19  9:45   ` Alexander Smirnov
@ 2018-02-19  9:48     ` Jan Kiszka
  2018-02-19 10:03       ` Alexander Smirnov
  0 siblings, 1 reply; 28+ messages in thread
From: Jan Kiszka @ 2018-02-19  9:48 UTC (permalink / raw)
  To: Alexander Smirnov, isar-users

On 2018-02-19 10:45, Alexander Smirnov wrote:
> On 02/16/2018 11:52 AM, Jan Kiszka wrote:
>> From: Jan Kiszka <jan.kiszka@siemens.com>
>>
>> The BuildCompleted event may come prior to all running build processes
>> being terminated. In that case, some mount might be busy, and we will
>> leave them dangling behind. Wait in that case.
> 
> How long we should wait? 

Until it's done.

> For example there was a bug with apt-get which
> results as hanging of 'http' process. So in this case Isar never returns
> to command prompt until second ^C pressed.

In that case, you need to run around killing processes anyway.

Jan

> 
> Alex
> 
>>
>> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>> ---
>>   meta/classes/isar-events.bbclass | 28 +++++++++++++++++++---------
>>   1 file changed, 19 insertions(+), 9 deletions(-)
>>
>> diff --git a/meta/classes/isar-events.bbclass
>> b/meta/classes/isar-events.bbclass
>> index 4b5e97e..68208f1 100644
>> --- a/meta/classes/isar-events.bbclass
>> +++ b/meta/classes/isar-events.bbclass
>> @@ -2,11 +2,26 @@
>>   #
>>   # This software is a part of ISAR.
>>   # Copyright (C) 2015-2017 ilbers GmbH
>> +# Copyright (c) Siemens AG, 2018
>>     addhandler isar_handler
>>     python isar_handler () {
>>       import subprocess
>> +    import time
>> +
>> +    def umount_all(basepath):
>> +        # '/proc/mounts' contains all the active mounts, so knowing
>> basepath
>> +        # we can get the list of mounts for the specific multiconfig and
>> +        # clean them.
>> +        with open('/proc/mounts', 'rU') as f:
>> +            for line in f:
>> +                if basepath in line:
>> +                    if subprocess.call('sudo umount ' + line.split()[1],
>> +                                       stdout=devnull, stderr=devnull,
>> +                                       shell=True) != 0:
>> +                        return False
>> +        return True
>>         devnull = open(os.devnull, 'w')
>>   @@ -16,15 +31,10 @@ python isar_handler () {
>>           arch = d.getVar('DISTRO_ARCH', True)
>>             if tmpdir and distro and arch:
>> -            w = tmpdir + '/work/' + distro + '-' + arch
>> -
>> -            # '/proc/mounts' contains all the active mounts, so
>> knowing 'w' we
>> -            # could get the list of mounts for the specific
>> multiconfig and
>> -            # clean them.
>> -            with open('/proc/mounts', 'rU') as f:
>> -                for line in f:
>> -                    if w in line:
>> -                        subprocess.call('sudo umount -f ' +
>> line.split()[1], stdout=devnull, stderr=devnull, shell=True)
>> +            basepath = tmpdir + '/work/' + distro + '-' + arch
>> +
>> +            while not umount_all(basepath):
>> +                time.sleep(1)
>>         devnull.close()
>>   }
>>
> 


-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 3/8] isar-events: Do not match on distro and arch
  2018-02-16  8:52 ` [PATCH 3/8] isar-events: Do not match on distro and arch Jan Kiszka
@ 2018-02-19  9:54   ` Alexander Smirnov
  2018-02-19 11:08     ` Jan Kiszka
  0 siblings, 1 reply; 28+ messages in thread
From: Alexander Smirnov @ 2018-02-19  9:54 UTC (permalink / raw)
  To: Jan Kiszka, isar-users

On 02/16/2018 11:52 AM, Jan Kiszka wrote:
> From: Jan Kiszka <jan.kiszka@siemens.com>
> 
> There might be operations in flight that are mounting more for a
> particular $distro-$arch when the completion event arrives. Simply
> trying to umount everything under the TMPDIR increases the chance to
> catch them later, e.g. because we have to wait for some mount point to
> become free.
> 
> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
> ---
>   meta/classes/isar-events.bbclass | 6 ++----
>   1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/meta/classes/isar-events.bbclass b/meta/classes/isar-events.bbclass
> index 68208f1..29c7437 100644
> --- a/meta/classes/isar-events.bbclass
> +++ b/meta/classes/isar-events.bbclass
> @@ -27,11 +27,9 @@ python isar_handler () {
>   
>       if isinstance(e, bb.event.BuildCompleted):
>           tmpdir = d.getVar('TMPDIR', True)
> -        distro = d.getVar('DISTRO', True)
> -        arch = d.getVar('DISTRO_ARCH', True)
>   
> -        if tmpdir and distro and arch:
> -            basepath = tmpdir + '/work/' + distro + '-' + arch
> +        if tmpdir:
> +            basepath = tmpdir + '/work/'

It would be nice to comment your idea inline here.

In general commit message already contains the description, but I assume 
that there could be lots of new commits for this file in the future. So 
it will be unnecessary complication to find these clues. :-)

Alex

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/8] isar-events: Wait for failing umounts
  2018-02-19  9:48     ` Jan Kiszka
@ 2018-02-19 10:03       ` Alexander Smirnov
  2018-02-19 11:10         ` Jan Kiszka
  0 siblings, 1 reply; 28+ messages in thread
From: Alexander Smirnov @ 2018-02-19 10:03 UTC (permalink / raw)
  To: Jan Kiszka, isar-users

On 02/19/2018 12:48 PM, Jan Kiszka wrote:
> On 2018-02-19 10:45, Alexander Smirnov wrote:
>> On 02/16/2018 11:52 AM, Jan Kiszka wrote:
>>> From: Jan Kiszka <jan.kiszka@siemens.com>
>>>
>>> The BuildCompleted event may come prior to all running build processes
>>> being terminated. In that case, some mount might be busy, and we will
>>> leave them dangling behind. Wait in that case.
>>
>> How long we should wait?
> 
> Until it's done.
> 
>> For example there was a bug with apt-get which
>> results as hanging of 'http' process. So in this case Isar never returns
>> to command prompt until second ^C pressed.
> 
> In that case, you need to run around killing processes anyway.
> 

Yes, for sure. Just thinking in voice, how this could affect CI. You 
send kill signal to Isar build, but it could stay running forever... So 
pipeline will be blocked until you notice this.

Alex

> Jan
> 
>>
>> Alex
>>
>>>
>>> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>>> ---
>>>    meta/classes/isar-events.bbclass | 28 +++++++++++++++++++---------
>>>    1 file changed, 19 insertions(+), 9 deletions(-)
>>>
>>> diff --git a/meta/classes/isar-events.bbclass
>>> b/meta/classes/isar-events.bbclass
>>> index 4b5e97e..68208f1 100644
>>> --- a/meta/classes/isar-events.bbclass
>>> +++ b/meta/classes/isar-events.bbclass
>>> @@ -2,11 +2,26 @@
>>>    #
>>>    # This software is a part of ISAR.
>>>    # Copyright (C) 2015-2017 ilbers GmbH
>>> +# Copyright (c) Siemens AG, 2018
>>>      addhandler isar_handler
>>>      python isar_handler () {
>>>        import subprocess
>>> +    import time
>>> +
>>> +    def umount_all(basepath):
>>> +        # '/proc/mounts' contains all the active mounts, so knowing
>>> basepath
>>> +        # we can get the list of mounts for the specific multiconfig and
>>> +        # clean them.
>>> +        with open('/proc/mounts', 'rU') as f:
>>> +            for line in f:
>>> +                if basepath in line:
>>> +                    if subprocess.call('sudo umount ' + line.split()[1],
>>> +                                       stdout=devnull, stderr=devnull,
>>> +                                       shell=True) != 0:
>>> +                        return False
>>> +        return True
>>>          devnull = open(os.devnull, 'w')
>>>    @@ -16,15 +31,10 @@ python isar_handler () {
>>>            arch = d.getVar('DISTRO_ARCH', True)
>>>              if tmpdir and distro and arch:
>>> -            w = tmpdir + '/work/' + distro + '-' + arch
>>> -
>>> -            # '/proc/mounts' contains all the active mounts, so
>>> knowing 'w' we
>>> -            # could get the list of mounts for the specific
>>> multiconfig and
>>> -            # clean them.
>>> -            with open('/proc/mounts', 'rU') as f:
>>> -                for line in f:
>>> -                    if w in line:
>>> -                        subprocess.call('sudo umount -f ' +
>>> line.split()[1], stdout=devnull, stderr=devnull, shell=True)
>>> +            basepath = tmpdir + '/work/' + distro + '-' + arch
>>> +
>>> +            while not umount_all(basepath):
>>> +                time.sleep(1)
>>>          devnull.close()
>>>    }
>>>
>>
> 
> 

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Consolidate mounting in tasks (was Re: [PATCH 1/8] Mount devtmpfs read-only into chroot)
  2018-02-16  8:52 ` [PATCH 1/8] Mount devtmpfs read-only into chroot Jan Kiszka
@ 2018-02-19 10:09   ` Claudius Heine
  2018-02-20  6:38   ` [PATCH 1/8] Mount devtmpfs read-only into chroot Alexander Smirnov
  1 sibling, 0 replies; 28+ messages in thread
From: Claudius Heine @ 2018-02-19 10:09 UTC (permalink / raw)
  To: [ext] Jan Kiszka, isar-users

Hi,

On 02/16/2018 09:52 AM, [ext] Jan Kiszka wrote:
> diff --git a/meta/classes/dpkg-base.bbclass b/meta/classes/dpkg-base.bbclass
> index 5eef11b..78709f9 100644
> --- a/meta/classes/dpkg-base.bbclass
> +++ b/meta/classes/dpkg-base.bbclass
> @@ -41,7 +41,7 @@ do_build() {
>           if ! grep -q ${BUILDCHROOT_DIR}/isar-apt /proc/mounts; then \
>               mount --bind ${DEPLOY_DIR_APT}/${DISTRO} ${BUILDCHROOT_DIR}/isar-apt; \
>               mount --bind ${DL_DIR} ${BUILDCHROOT_DIR}/downloads; \
> -            mount -t devtmpfs -o mode=0755,nosuid devtmpfs ${BUILDCHROOT_DIR}/dev; \
> +            mount --bind -o ro /dev ${BUILDCHROOT_DIR}/dev; \
>               mount -t proc none ${BUILDCHROOT_DIR}/proc; \
>           fi'
>   
> diff --git a/meta/recipes-devtools/buildchroot/buildchroot.bb b/meta/recipes-devtools/buildchroot/buildchroot.bb
> index 520daf9..1eca035 100644
> --- a/meta/recipes-devtools/buildchroot/buildchroot.bb
> +++ b/meta/recipes-devtools/buildchroot/buildchroot.bb
> @@ -66,7 +66,7 @@ do_build() {
>              "${WORKDIR}/multistrap.conf.in" > "${WORKDIR}/multistrap.conf"
>   
>       sudo mount --bind ${DEPLOY_DIR_APT}/${DISTRO} ${BUILDCHROOT_DIR}/isar-apt
> -    sudo mount -t devtmpfs -o mode=0755,nosuid devtmpfs ${BUILDCHROOT_DIR}/dev
> +    sudo mount --bind -o ro /dev ${BUILDCHROOT_DIR}/dev
>       sudo mount -t proc none ${BUILDCHROOT_DIR}/proc
>   
>       # Create root filesystem
> 

Would it make sense to try to consolidate the default mounts into a bbclass?

Maybe implement it via a task flag that hooks into TaskStarted, 
TaskFailed and TaskSucceeded events and handles mounting/unmounting 
there. If I read the bitbake documentation correctly, those events are 
triggered within the worker context, so they should be synchronous to 
the task code.

Cheers,
Claudius

-- 
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

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 5/8] Add qemuarm64-stretch multiconfig
  2018-02-16  8:52 ` [PATCH 5/8] Add qemuarm64-stretch multiconfig Jan Kiszka
@ 2018-02-19 10:23   ` Alexander Smirnov
  2018-02-19 11:15     ` Jan Kiszka
  0 siblings, 1 reply; 28+ messages in thread
From: Alexander Smirnov @ 2018-02-19 10:23 UTC (permalink / raw)
  To: Jan Kiszka, isar-users

On 02/16/2018 11:52 AM, Jan Kiszka wrote:
> From: Jan Kiszka <jan.kiszka@siemens.com>
> 
> Extend the image build script as needed and add a multiconfig that
> allows to build a qemuarm64 target using stretch. Also add a machine
> config for QEMU.

This patch makes the documentation out-dated:

https://github.com/ilbers/isar/blob/master/doc/user_manual.md#getting-started

Should I expect updated for user_manual?

Alex

> 
> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
> ---
>   meta-isar/conf/local.conf.sample                  |  1 +
>   meta-isar/conf/machine/qemuarm64.conf             |  7 +++++++
>   meta-isar/conf/multiconfig/qemuarm64-stretch.conf | 20 ++++++++++++++++++++
>   meta-isar/recipes-core/images/files/setup.sh      | 18 ++++++++++++++----
>   4 files changed, 42 insertions(+), 4 deletions(-)
>   create mode 100644 meta-isar/conf/machine/qemuarm64.conf
>   create mode 100644 meta-isar/conf/multiconfig/qemuarm64-stretch.conf
> 
> diff --git a/meta-isar/conf/local.conf.sample b/meta-isar/conf/local.conf.sample
> index 09c0e25..46bfae0 100644
> --- a/meta-isar/conf/local.conf.sample
> +++ b/meta-isar/conf/local.conf.sample
> @@ -41,6 +41,7 @@ BBMULTICONFIG = " \
>       qemuarm-wheezy \
>       qemuarm-jessie \
>       qemuarm-stretch \
> +    qemuarm64-stretch \
>       qemui386-jessie \
>       qemui386-stretch \
>       qemuamd64-jessie \
> diff --git a/meta-isar/conf/machine/qemuarm64.conf b/meta-isar/conf/machine/qemuarm64.conf
> new file mode 100644
> index 0000000..70dd941
> --- /dev/null
> +++ b/meta-isar/conf/machine/qemuarm64.conf
> @@ -0,0 +1,7 @@
> +# This software is a part of ISAR.
> +# Copyright (C) 2015-2017 ilbers GmbH
> +
> +MACHINE_SERIAL ?= "ttyAMA0"
> +BAUDRATE_TTY ?= "115200"
> +
> +IMAGE_TYPE ?= "ext4-img"
> diff --git a/meta-isar/conf/multiconfig/qemuarm64-stretch.conf b/meta-isar/conf/multiconfig/qemuarm64-stretch.conf
> new file mode 100644
> index 0000000..cffdcdb
> --- /dev/null
> +++ b/meta-isar/conf/multiconfig/qemuarm64-stretch.conf
> @@ -0,0 +1,20 @@
> +# This software is a part of ISAR.
> +# Copyright (C) 2017 ilbers GmbH
> +# Copyright (c) Siemens AG, 2018
> +
> +MACHINE ?= "qemuarm64"
> +
> +DISTRO ?= "debian-stretch"
> +DISTRO_ARCH ?= "arm64"
> +
> +KERNEL_NAME ?= "arm64"
> +
> +IMAGE_PREINSTALL += "init"
> +
> +ROOTFS_DEV ?= "vda"
> +
> +QEMU_ARCH ?= "aarch64"
> +QEMU_MACHINE ?= "virt"
> +QEMU_CPU ?= "cortex-a57"
> +# TODO: start_vm doesn't support multiline vars
> +QEMU_ROOTFS_DEV ?= "-drive file=##ROOTFS_IMAGE##,if=none,format=raw,id=hd0 -device virtio-blk-device,drive=hd0"
> diff --git a/meta-isar/recipes-core/images/files/setup.sh b/meta-isar/recipes-core/images/files/setup.sh
> index 39b828c..86c065c 100755
> --- a/meta-isar/recipes-core/images/files/setup.sh
> +++ b/meta-isar/recipes-core/images/files/setup.sh
> @@ -14,6 +14,7 @@ set -e
>   # setup.sh needs to be executable.
>   
>   TARGET=$1
> +ARCH=$2
>   
>   # Prevent daemons from starting in postinstall during the initial "dpkg
>   # --configure -a" under QEMU on the build host
> @@ -56,11 +57,20 @@ EOF
>       chmod a+x $TARGET/usr/sbin/policy-rc.d
>   fi
>   
> -# Install QEMU emulator to execute ARM binaries
> -if [ ! -x /usr/bin/qemu-arm-static ]; then
> -    echo "qemu-arm-static binary not present, unable to execute ARM binaries"
> +case $ARCH in
> +    armel|armhf)
> +        qemu_arch=arm
> +        ;;
> +    arm64)
> +        qemu_arch=aarch64
> +        ;;
> +esac
> +
> +# Install QEMU emulator to execute foreign binaries
> +if [ ! -x /usr/bin/qemu-${qemu_arch}-static ]; then
> +    echo "qemu-${qemu_arch}-static binary not present, unable to execute target binaries"
>   else
> -    sudo cp /usr/bin/qemu-arm-static ${TARGET}/usr/bin
> +    sudo cp /usr/bin/qemu-${qemu_arch}-static ${TARGET}/usr/bin
>   fi
>   
>   # Set hostname
> 

-- 
With best regards,
Alexander Smirnov

ilbers GmbH
Baierbrunner Str. 28c
D-81379 Munich
+49 (89) 122 67 24-0
http://ilbers.de/
Commercial register Munich, HRB 214197
General manager: Baurzhan Ismagulov

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 3/8] isar-events: Do not match on distro and arch
  2018-02-19  9:54   ` Alexander Smirnov
@ 2018-02-19 11:08     ` Jan Kiszka
  0 siblings, 0 replies; 28+ messages in thread
From: Jan Kiszka @ 2018-02-19 11:08 UTC (permalink / raw)
  To: Alexander Smirnov, isar-users

On 2018-02-19 10:54, Alexander Smirnov wrote:
> On 02/16/2018 11:52 AM, Jan Kiszka wrote:
>> From: Jan Kiszka <jan.kiszka@siemens.com>
>>
>> There might be operations in flight that are mounting more for a
>> particular $distro-$arch when the completion event arrives. Simply
>> trying to umount everything under the TMPDIR increases the chance to
>> catch them later, e.g. because we have to wait for some mount point to
>> become free.
>>
>> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>> ---
>>   meta/classes/isar-events.bbclass | 6 ++----
>>   1 file changed, 2 insertions(+), 4 deletions(-)
>>
>> diff --git a/meta/classes/isar-events.bbclass
>> b/meta/classes/isar-events.bbclass
>> index 68208f1..29c7437 100644
>> --- a/meta/classes/isar-events.bbclass
>> +++ b/meta/classes/isar-events.bbclass
>> @@ -27,11 +27,9 @@ python isar_handler () {
>>         if isinstance(e, bb.event.BuildCompleted):
>>           tmpdir = d.getVar('TMPDIR', True)
>> -        distro = d.getVar('DISTRO', True)
>> -        arch = d.getVar('DISTRO_ARCH', True)
>>   -        if tmpdir and distro and arch:
>> -            basepath = tmpdir + '/work/' + distro + '-' + arch
>> +        if tmpdir:
>> +            basepath = tmpdir + '/work/'
> 
> It would be nice to comment your idea inline here.
> 
> In general commit message already contains the description, but I assume
> that there could be lots of new commits for this file in the future. So
> it will be unnecessary complication to find these clues. :-)

I agree when comments help explaining non-obvious parts of the code. I
disagree in this case. Morever, there is git blame.

Jan

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/8] isar-events: Wait for failing umounts
  2018-02-19 10:03       ` Alexander Smirnov
@ 2018-02-19 11:10         ` Jan Kiszka
  0 siblings, 0 replies; 28+ messages in thread
From: Jan Kiszka @ 2018-02-19 11:10 UTC (permalink / raw)
  To: Alexander Smirnov, isar-users

On 2018-02-19 11:03, Alexander Smirnov wrote:
> On 02/19/2018 12:48 PM, Jan Kiszka wrote:
>> On 2018-02-19 10:45, Alexander Smirnov wrote:
>>> On 02/16/2018 11:52 AM, Jan Kiszka wrote:
>>>> From: Jan Kiszka <jan.kiszka@siemens.com>
>>>>
>>>> The BuildCompleted event may come prior to all running build processes
>>>> being terminated. In that case, some mount might be busy, and we will
>>>> leave them dangling behind. Wait in that case.
>>>
>>> How long we should wait?
>>
>> Until it's done.
>>
>>> For example there was a bug with apt-get which
>>> results as hanging of 'http' process. So in this case Isar never returns
>>> to command prompt until second ^C pressed.
>>
>> In that case, you need to run around killing processes anyway.
>>
> 
> Yes, for sure. Just thinking in voice, how this could affect CI. You
> send kill signal to Isar build, but it could stay running forever... So
> pipeline will be blocked until you notice this.

That's why

a) you set a completion timeout for build jobs
b) you clean up the environment of a build afterwards

If you aren't using a VM or at last a container for b) yet, you are
already in troubles. ;)

Jan

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 5/8] Add qemuarm64-stretch multiconfig
  2018-02-19 10:23   ` Alexander Smirnov
@ 2018-02-19 11:15     ` Jan Kiszka
  2018-02-19 12:19       ` Alexander Smirnov
  0 siblings, 1 reply; 28+ messages in thread
From: Jan Kiszka @ 2018-02-19 11:15 UTC (permalink / raw)
  To: Alexander Smirnov, isar-users

On 2018-02-19 11:23, Alexander Smirnov wrote:
> On 02/16/2018 11:52 AM, Jan Kiszka wrote:
>> From: Jan Kiszka <jan.kiszka@siemens.com>
>>
>> Extend the image build script as needed and add a multiconfig that
>> allows to build a qemuarm64 target using stretch. Also add a machine
>> config for QEMU.
> 
> This patch makes the documentation out-dated:
> 
> https://github.com/ilbers/isar/blob/master/doc/user_manual.md#getting-started
> 
> 
> Should I expect updated for user_manual?

The user manual is widely outdated already, and we are about to change
further fundamental aspects of Isar (proper wic integration, multistrap
removal, ...). Let's wait for that to finish, then rewrite the manual.

Jan

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 5/8] Add qemuarm64-stretch multiconfig
  2018-02-19 11:15     ` Jan Kiszka
@ 2018-02-19 12:19       ` Alexander Smirnov
  2018-02-19 12:36         ` Jan Kiszka
  0 siblings, 1 reply; 28+ messages in thread
From: Alexander Smirnov @ 2018-02-19 12:19 UTC (permalink / raw)
  To: Jan Kiszka, isar-users

On 02/19/2018 02:15 PM, Jan Kiszka wrote:
> On 2018-02-19 11:23, Alexander Smirnov wrote:
>> On 02/16/2018 11:52 AM, Jan Kiszka wrote:
>>> From: Jan Kiszka <jan.kiszka@siemens.com>
>>>
>>> Extend the image build script as needed and add a multiconfig that
>>> allows to build a qemuarm64 target using stretch. Also add a machine
>>> config for QEMU.
>>
>> This patch makes the documentation out-dated:
>>
>> https://github.com/ilbers/isar/blob/master/doc/user_manual.md#getting-started
>>
>>
>> Should I expect updated for user_manual?
> 
> The user manual is widely outdated already, and we are about to change
> further fundamental aspects of Isar (proper wic integration, multistrap
> removal, ...). Let's wait for that to finish, then rewrite the manual.
> 

I couldn't agree with such approach. Isar is the community project, so 
at anytime new users could appear, keeping out-dated documentation or 
even invalid one, makes the whole project unusable. Also I suppose in 
near future we will be in permanent "about to change fundamentals".
It would be nice to define who and when will document new features, so 
the new official release could be announced.

Alex

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 5/8] Add qemuarm64-stretch multiconfig
  2018-02-19 12:19       ` Alexander Smirnov
@ 2018-02-19 12:36         ` Jan Kiszka
  0 siblings, 0 replies; 28+ messages in thread
From: Jan Kiszka @ 2018-02-19 12:36 UTC (permalink / raw)
  To: Alexander Smirnov, isar-users

On 2018-02-19 13:19, Alexander Smirnov wrote:
> On 02/19/2018 02:15 PM, Jan Kiszka wrote:
>> On 2018-02-19 11:23, Alexander Smirnov wrote:
>>> On 02/16/2018 11:52 AM, Jan Kiszka wrote:
>>>> From: Jan Kiszka <jan.kiszka@siemens.com>
>>>>
>>>> Extend the image build script as needed and add a multiconfig that
>>>> allows to build a qemuarm64 target using stretch. Also add a machine
>>>> config for QEMU.
>>>
>>> This patch makes the documentation out-dated:
>>>
>>> https://github.com/ilbers/isar/blob/master/doc/user_manual.md#getting-started
>>>
>>>
>>>
>>> Should I expect updated for user_manual?
>>
>> The user manual is widely outdated already, and we are about to change
>> further fundamental aspects of Isar (proper wic integration, multistrap
>> removal, ...). Let's wait for that to finish, then rewrite the manual.
>>
> 
> I couldn't agree with such approach. Isar is the community project, so
> at anytime new users could appear, keeping out-dated documentation or
> even invalid one, makes the whole project unusable. Also I suppose in
> near future we will be in permanent "about to change fundamentals".
> It would be nice to define who and when will document new features, so
> the new official release could be announced.

I generally agree, but - as I said - the manual was already outdated
prior to all the recent changes. That was the reason I didn't care
updating it.

Again, it would be best to redesign the manual once all the upcoming key
user-visible changes have been send and merged. And those are IMHO

- wic
- image generation (internally via debootstrap, externally via some
  bbclass or include)
- refactoring of meta-isar to meta-isar-example

Jan

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 0/8] Assorted patches
  2018-02-16  8:52 [PATCH 0/8] Assorted patches Jan Kiszka
                   ` (7 preceding siblings ...)
  2018-02-16  8:52 ` [PATCH 8/8] Enhance credits Jan Kiszka
@ 2018-02-19 13:56 ` Alexander Smirnov
  2018-02-19 14:08   ` Jan Kiszka
  2018-02-20 11:19 ` Alexander Smirnov
  9 siblings, 1 reply; 28+ messages in thread
From: Alexander Smirnov @ 2018-02-19 13:56 UTC (permalink / raw)
  To: Jan Kiszka, isar-users

[-- Attachment #1: Type: text/plain, Size: 1625 bytes --]

On 02/16/2018 11:52 AM, Jan Kiszka wrote:
> Flush of my remaining queue:
>   - improvements for mount and umount
>   - arm64 target
>   - copyright and credit enhancements
> 

CI failed on wheezy, log is attached. I saw the same problem when mount 
sys/dev via '--bind'.

Alex

> Jan
> 
> Jan Kiszka (8):
>    Mount devtmpfs read-only into chroot
>    isar-events: Wait for failing umounts
>    isar-events: Do not match on distro and arch
>    Add Debian arm64 support to the core
>    Add qemuarm64-stretch multiconfig
>    Add qemuarm64-stretch to CI
>    build-kernel.sh: Add copyright header
>    Enhance credits
> 
>   README.md                                          |  2 +-
>   meta-isar/conf/local.conf.sample                   |  1 +
>   meta-isar/conf/machine/qemuarm64.conf              |  7 +++++
>   meta-isar/conf/multiconfig/qemuarm64-stretch.conf  | 20 +++++++++++++
>   meta-isar/recipes-core/images/files/setup.sh       | 18 +++++++++---
>   meta/classes/dpkg-base.bbclass                     |  2 +-
>   meta/classes/isar-events.bbclass                   | 34 +++++++++++++---------
>   meta/recipes-devtools/buildchroot/buildchroot.bb   |  2 +-
>   meta/recipes-devtools/buildchroot/files/setup.sh   | 18 +++++++++---
>   .../isar-apt/files/distributions.in                |  2 +-
>   meta/recipes-kernel/linux/files/build-kernel.sh    |  8 +++++
>   scripts/ci_build.sh                                |  1 +
>   12 files changed, 90 insertions(+), 25 deletions(-)
>   create mode 100644 meta-isar/conf/machine/qemuarm64.conf
>   create mode 100644 meta-isar/conf/multiconfig/qemuarm64-stretch.conf
> 

[-- Attachment #2: log.do_build --]
[-- Type: text/plain, Size: 59381 bytes --]

DEBUG: Executing shell function do_build
Use of uninitialized value in join or string at /usr/sbin/multistrap line 1280.
Use of uninitialized value in join or string at /usr/sbin/multistrap line 1280.
Use of uninitialized value in join or string at /usr/sbin/multistrap line 1280.
multistrap 2.2.0 using /workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/multistrap.conf
multistrap 2.2.0 using /workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/multistrap.conf
Using foreign architecture: armhf
multistrap building armhf multistrap on 'i386'
I: Setting /workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/lib64 -> /workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/lib symbolic link.
Getting package lists: apt-get  -o Apt::Architecture=armhf -o Dir::Etc::TrustedParts=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/etc/apt/trusted.gpg.d -o Dir::Etc::Trusted=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/etc/apt/trusted.gpg.d/trusted.gpg -o Apt::Get::AllowUnauthenticated=true -o Apt::Get::Download-Only=true -o Apt::Install-Recommends=false -o Dir=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/ -o Dir::Etc=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/etc/apt/ -o Dir::Etc::Parts=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/etc/apt/apt.conf.d/ -o Dir::Etc::PreferencesParts=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/etc/apt/preferences.d/ -o APT::Default-Release=* -o Dir::State=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/var/lib/apt/ -o Dir::State::Status=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/var/lib/dpkg/status -o Dir::Cache=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/var/cache/apt/ update
Ign http://ftp.debian.org wheezy InRelease
Get:1 http://ftp.debian.org wheezy-updates InRelease [157 kB]
Get:2 http://security.debian.org wheezy/updates InRelease [40.6 kB]
No keyring installed in /workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/etc/apt/trusted.gpg.d/.Ign http://security.debian.org wheezy/updates InRelease
No keyring installed in /workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/etc/apt/trusted.gpg.d/.Ign http://ftp.debian.org wheezy-updates InRelease
Get:3 http://ftp.debian.org wheezy Release.gpg [2,373 B]
Get:4 http://security.debian.org wheezy/updates/main armhf Packages [597 kB]
Get:5 http://ftp.debian.org wheezy-updates/main armhf Packages [6,248 B]
Get:6 http://security.debian.org wheezy/updates/contrib armhf Packages [14 B]
Get:7 http://ftp.debian.org wheezy-updates/contrib armhf Packages [14 B]
Get:8 http://security.debian.org wheezy/updates/non-free armhf Packages [14 B]
Get:9 http://ftp.debian.org wheezy-updates/non-free armhf Packages [488 B]
Get:10 http://ftp.debian.org wheezy-updates/contrib Translation-en [14 B]
Get:11 http://security.debian.org wheezy/updates/contrib Translation-en [14 B]
Get:12 http://ftp.debian.org wheezy-updates/main Translation-en [4,879 B]
Get:13 http://ftp.debian.org wheezy-updates/non-free Translation-en [496 B]
Get:14 http://security.debian.org wheezy/updates/main Translation-en [334 kB]
Get:15 http://ftp.debian.org wheezy Release [191 kB]
No keyring installed in /workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/etc/apt/trusted.gpg.d/.Ign http://ftp.debian.org wheezy Release
Get:16 http://security.debian.org wheezy/updates/non-free Translation-en [593 B]
Get:17 http://ftp.debian.org wheezy/main armhf Packages [5,685 kB]
Ign http://security.debian.org wheezy/updates/contrib Translation-en_US
Ign http://security.debian.org wheezy/updates/main Translation-en_US
Ign http://security.debian.org wheezy/updates/non-free Translation-en_US
Get:18 http://ftp.debian.org wheezy/contrib armhf Packages [33.1 kB]
Get:19 http://ftp.debian.org wheezy/non-free armhf Packages [55.8 kB]
Get:20 http://ftp.debian.org wheezy/contrib Translation-en [34.8 kB]
Get:21 http://ftp.debian.org wheezy/main Translation-en [3,846 kB]
Get:22 http://ftp.debian.org wheezy/non-free Translation-en [66.1 kB]
Ign http://ftp.debian.org wheezy-updates/contrib Translation-en_US
Ign http://ftp.debian.org wheezy-updates/main Translation-en_US
Ign http://ftp.debian.org wheezy-updates/non-free Translation-en_US
Ign http://ftp.debian.org wheezy/contrib Translation-en_US
Ign http://ftp.debian.org wheezy/main Translation-en_US
Ign http://ftp.debian.org wheezy/non-free Translation-en_US
Fetched 11.1 MB in 9s (1,143 kB/s)
Reading package lists...
W: GPG error: http://security.debian.org wheezy/updates InRelease: Could not execute 'gpgv' to verify signature (is gpgv installed?)
W: GPG error: http://ftp.debian.org wheezy-updates InRelease: Could not execute 'gpgv' to verify signature (is gpgv installed?)
W: GPG error: http://ftp.debian.org wheezy Release: Could not execute 'gpgv' to verify signature (is gpgv installed?)
I: Calculating required packages.
apt-get -y  -o Apt::Architecture=armhf -o Dir::Etc::TrustedParts=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/etc/apt/trusted.gpg.d -o Dir::Etc::Trusted=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/etc/apt/trusted.gpg.d/trusted.gpg -o Apt::Get::AllowUnauthenticated=true -o Apt::Get::Download-Only=true -o Apt::Install-Recommends=false -o Dir=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/ -o Dir::Etc=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/etc/apt/ -o Dir::Etc::Parts=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/etc/apt/apt.conf.d/ -o Dir::Etc::PreferencesParts=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/etc/apt/preferences.d/ -o APT::Default-Release=* -o Dir::State=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/var/lib/apt/ -o Dir::State::Status=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/var/lib/dpkg/status -o Dir::Cache=/workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/var/cache/apt/ install  apt automake autotools-dev base-files base-passwd bash bsdutils build-essential coreutils dash debconf debconf-i18n debhelper debianutils devscripts diffutils docbook-to-man dpkg dselect e2fslibs e2fsprogs equivs findutils gcc gcc-4.7-base grep gzip hostname initscripts libacl1 libattr1 libblkid1 libc-bin libc6 libcomerr2 libgcc1 liblocale-gettext-perl liblzma5 libmount1 libncurses5 libpam-modules libpam-modules-bin libpam-runtime libpam0g libselinux1 libsepol1 libss2 libtext-charwidth-perl libtext-iconv-perl libtext-wrapi18n-perl libtinfo5 libuuid1 locales login lsb-base make mawk mount multiarch-support ncurses-base ncurses-bin passwd perl-base sed sensible-utils sysv-rc sysvinit sysvinit-utils tar tzdata util-linux xz-utils zlib1g
Reading package lists...
Building dependency tree...
The following extra packages will be installed:
  autoconf binutils bsdmainutils bzip2 cpp cpp-4.6 debian-archive-keyring
  docbook dpkg-dev fakeroot file g++ g++-4.6 gcc-4.6 gcc-4.6-base gettext
  gettext-base gnupg gpgv groff-base html2text insserv intltool-debian
  libapt-pkg4.12 libasprintf0c2 libbz2-1.0 libc-dev-bin libc6-dev
  libclass-isa-perl libcroco3 libdb5.1 libdpkg-perl libexpat1 libffi5 libgdbm3
  libgettextpo0 libglib2.0-0 libgmp10 libgomp1 libmagic1 libmpc2 libmpfr4
  libncursesw5 libpcre3 libpipeline1 libreadline6 libsemanage-common
  libsemanage1 libslang2 libsp1c2 libsqlite3-0 libssl1.0.0 libstdc++6
  libstdc++6-4.6-dev libswitch-perl libtimedate-perl libunistring0
  libusb-0.1-4 libustr-1.0-1 libxml2 linux-libc-dev m4 man-db mime-support
  patch perl perl-modules po-debconf python python-minimal python2.7
  python2.7-minimal readline-common sgml-base sgml-data sp xml-core
Suggested packages:
  aptitude synaptic wajig apt-doc python-apt autoconf2.13 autoconf-archive
  gnu-standards autoconf-doc libtool bash-doc binutils-doc wamerican wordlist
  whois vacation bzip2-doc cpp-doc gcc-4.6-locales debconf-doc debconf-utils
  whiptail dialog gnome-utils libterm-readline-gnu-perl libgtk2-perl
  libnet-ldap-perl libqtgui4-perl libqtcore4-perl dh-make bsd-mailx mailx
  cvs-buildpackage devscripts-el gnuplot libauthen-sasl-perl
  libfile-desktopentry-perl libnet-smtp-ssl-perl libterm-size-perl
  libyaml-syck-perl mutt ssh-client svn-buildpackage w3m diffutils-doc
  docbook-defguide docbook-dsssl docbook-xml psgml gpart parted e2fsck-static
  mlocate locate gcc-4.6-doc libstdc++6-4.6-dbg gcc-multilib manpages-dev
  automake1.9 flex bison gdb gcc-doc libmudflap0-4.6-dev libgcc1-dbg
  libgomp1-dbg libquadmath-dbg libmudflap0-dbg binutils-gold gettext-doc
  gnupg-doc xloadimage imagemagick eog libpcsclite1 groff less bootchart2
  glibc-doc libpam-doc libstdc++6-4.6-doc make-doc www-browser nfs-common
  perl-doc libpod-plainer-perl libmail-box-perl python-doc python-tk
  python2.7-doc binfmt-support sgml-base-doc perlsgml w3-recs opensp
  libxml2-utils doc-base sysv-rc-conf bum bootlogd sash ncompress
  util-linux-locales kbd console-tools dosfstools
Recommended packages:
  bash-completion apt-utils at curl wget dctrl-tools dput dupload
  libdistro-info-perl libjson-perl libparse-debcontrol-perl liburi-perl
  libwww-perl lintian patchutils python-debian python-magic strace unzip wdiff
  debian-keyring libcrypt-ssleay-perl libsoap-lite-perl
  libalgorithm-merge-perl autopoint libldap-2.4-2 gnupg-curl psmisc
  libfile-fcntllock-perl libglib2.0-data shared-mime-info libgpm2 libpng12-0
  uuid-runtime netbase libmail-sendmail-perl libcompress-zlib-perl
The following NEW packages will be installed:
  apt autoconf automake autotools-dev base-files base-passwd bash binutils
  bsdmainutils bsdutils build-essential bzip2 coreutils cpp cpp-4.6 dash
  debconf debconf-i18n debhelper debian-archive-keyring debianutils devscripts
  diffutils docbook docbook-to-man dpkg dpkg-dev dselect e2fslibs e2fsprogs
  equivs fakeroot file findutils g++ g++-4.6 gcc gcc-4.6 gcc-4.6-base
  gcc-4.7-base gettext gettext-base gnupg gpgv grep groff-base gzip hostname
  html2text initscripts insserv intltool-debian libacl1 libapt-pkg4.12
  libasprintf0c2 libattr1 libblkid1 libbz2-1.0 libc-bin libc-dev-bin libc6
  libc6-dev libclass-isa-perl libcomerr2 libcroco3 libdb5.1 libdpkg-perl
  libexpat1 libffi5 libgcc1 libgdbm3 libgettextpo0 libglib2.0-0 libgmp10
  libgomp1 liblocale-gettext-perl liblzma5 libmagic1 libmount1 libmpc2
  libmpfr4 libncurses5 libncursesw5 libpam-modules libpam-modules-bin
  libpam-runtime libpam0g libpcre3 libpipeline1 libreadline6 libselinux1
  libsemanage-common libsemanage1 libsepol1 libslang2 libsp1c2 libsqlite3-0
  libss2 libssl1.0.0 libstdc++6 libstdc++6-4.6-dev libswitch-perl
  libtext-charwidth-perl libtext-iconv-perl libtext-wrapi18n-perl
  libtimedate-perl libtinfo5 libunistring0 libusb-0.1-4 libustr-1.0-1 libuuid1
  libxml2 linux-libc-dev locales login lsb-base m4 make man-db mawk
  mime-support mount multiarch-support ncurses-base ncurses-bin passwd patch
  perl perl-base perl-modules po-debconf python python-minimal python2.7
  python2.7-minimal readline-common sed sensible-utils sgml-base sgml-data sp
  sysv-rc sysvinit sysvinit-utils tar tzdata util-linux xml-core xz-utils
  zlib1g
0 upgraded, 150 newly installed, 0 to remove and 0 not upgraded.
Need to get 93.8 MB of archives.
After this operation, 240 MB of additional disk space will be used.
WARNING: The following packages cannot be authenticated!
  libc-bin gcc-4.7-base multiarch-support libgcc1 libc6 mawk base-files
  sensible-utils debianutils libbz2-1.0 liblzma5 libselinux1 zlib1g tar dpkg
  dash libtinfo5 bash libattr1 libacl1 coreutils diffutils e2fslibs perl-base
  debconf libpam0g libsemanage-common libsepol1 libustr-1.0-1 libsemanage1
  libdb5.1 libpam-modules-bin libpam-modules passwd libuuid1 libblkid1
  libcomerr2 libss2 lsb-base tzdata sysvinit-utils insserv sysv-rc initscripts
  libncurses5 libslang2 util-linux e2fsprogs findutils grep gzip hostname
  libpam-runtime login libmount1 mount ncurses-bin sed sysvinit libstdc++6
  libapt-pkg4.12 gpgv debian-archive-keyring readline-common libreadline6
  libusb-0.1-4 gnupg apt base-passwd bsdutils ncurses-base libgdbm3
  libncursesw5 libpipeline1 libssl1.0.0 liblocale-gettext-perl libasprintf0c2
  libmagic1 libpcre3 libffi5 libglib2.0-0 libxml2 libcroco3 libexpat1
  libunistring0 libgettextpo0 libgmp10 libgomp1 libmpfr4 libsqlite3-0
  libswitch-perl libclass-isa-perl perl-modules perl sgml-base libmpc2
  bsdmainutils groff-base man-db libtext-iconv-perl libtext-charwidth-perl
  libtext-wrapi18n-perl debconf-i18n xz-utils bzip2 file gettext-base locales
  m4 mime-support patch python2.7-minimal python2.7 python-minimal python
  autoconf autotools-dev automake binutils libc-dev-bin linux-libc-dev
  libc6-dev gcc-4.6-base cpp-4.6 cpp gcc-4.6 gcc libstdc++6-4.6-dev g++-4.6
  g++ make libtimedate-perl libdpkg-perl dpkg-dev build-essential html2text
  gettext intltool-debian po-debconf debhelper devscripts xml-core sgml-data
  docbook libsp1c2 sp docbook-to-man dselect fakeroot equivs
Authentication warning overridden.
Get:1 http://security.debian.org/debian-security/ wheezy/updates/main libc-bin armhf 2.13-38+deb7u12 [1,169 kB]
Get:2 http://ftp.debian.org/debian/ wheezy/main gcc-4.7-base armhf 4.7.2-5 [144 kB]
Get:3 http://ftp.debian.org/debian/ wheezy/main libgcc1 armhf 1:4.7.2-5 [52.5 kB]
Get:4 http://ftp.debian.org/debian/ wheezy/main mawk armhf 1.3.3-17 [78.3 kB]
Get:5 http://ftp.debian.org/debian/ wheezy/main base-files armhf 7.1wheezy11 [67.1 kB]
Get:6 http://security.debian.org/debian-security/ wheezy/updates/main multiarch-support armhf 2.13-38+deb7u12 [152 kB]
Get:7 http://ftp.debian.org/debian/ wheezy/main debianutils armhf 4.3.2 [77.1 kB]
Get:8 http://security.debian.org/debian-security/ wheezy/updates/main libc6 armhf 2.13-38+deb7u12 [3,904 kB]
Get:9 http://ftp.debian.org/debian/ wheezy/main libbz2-1.0 armhf 1.0.6-4 [46.6 kB]
Get:10 http://ftp.debian.org/debian/ wheezy/main liblzma5 armhf 5.1.1alpha+20120614-2 [193 kB]
Get:11 http://ftp.debian.org/debian/ wheezy/main libselinux1 armhf 2.1.9-5 [79.6 kB]
Get:12 http://ftp.debian.org/debian/ wheezy/main zlib1g armhf 1:1.2.7.dfsg-13 [84.2 kB]
Get:13 http://ftp.debian.org/debian/ wheezy/main dpkg armhf 1.16.18 [2,578 kB]
Get:14 http://security.debian.org/debian-security/ wheezy/updates/main sensible-utils all 0.0.7+deb7u1 [9,000 B]
Get:15 http://security.debian.org/debian-security/ wheezy/updates/main tar armhf 1.26+dfsg-0.1+deb7u1 [955 kB]
Get:16 http://security.debian.org/debian-security/ wheezy/updates/main bash armhf 4.2+dfsg-0.1+deb7u4 [1,416 kB]
Get:17 http://ftp.debian.org/debian/ wheezy/main dash armhf 0.5.7-3 [101 kB]
Get:18 http://ftp.debian.org/debian/ wheezy/main libtinfo5 armhf 5.9-10 [260 kB]
Get:19 http://security.debian.org/debian-security/ wheezy/updates/main perl-base armhf 5.14.2-21+deb7u5 [1,404 kB]
Get:20 http://ftp.debian.org/debian/ wheezy/main libattr1 armhf 1:2.4.46-8 [17.8 kB]
Get:21 http://ftp.debian.org/debian/ wheezy/main libacl1 armhf 2.2.51-8 [26.5 kB]
Get:22 http://security.debian.org/debian-security/ wheezy/updates/main libdb5.1 armhf 5.1.29-5+deb7u1 [610 kB]
Get:23 http://ftp.debian.org/debian/ wheezy/main coreutils armhf 8.13-3.5 [4,990 kB]
Get:24 http://security.debian.org/debian-security/ wheezy/updates/main passwd armhf 1:4.1.5.1-1+deb7u1 [1,105 kB]
Get:25 http://security.debian.org/debian-security/ wheezy/updates/main tzdata all 2017c-0+deb7u1 [493 kB]
Get:26 http://security.debian.org/debian-security/ wheezy/updates/main login armhf 1:4.1.5.1-1+deb7u1 [970 kB]
Get:27 http://security.debian.org/debian-security/ wheezy/updates/main gpgv armhf 1.4.12-7+deb7u9 [196 kB]
Get:28 http://security.debian.org/debian-security/ wheezy/updates/main gnupg armhf 1.4.12-7+deb7u9 [1,867 kB]
Get:29 http://security.debian.org/debian-security/ wheezy/updates/main libssl1.0.0 armhf 1.0.1t-1+deb7u3 [1,022 kB]
Get:30 http://ftp.debian.org/debian/ wheezy/main diffutils armhf 1:3.2-6 [341 kB]
Get:31 http://security.debian.org/debian-security/ wheezy/updates/main libmagic1 armhf 5.11-2+deb7u9 [202 kB]
Get:32 http://ftp.debian.org/debian/ wheezy/main e2fslibs armhf 1.42.5-1.1+deb7u1 [179 kB]
Get:33 http://security.debian.org/debian-security/ wheezy/updates/main libffi5 armhf 3.0.10-3+deb7u2 [22.5 kB]
Get:34 http://security.debian.org/debian-security/ wheezy/updates/main libxml2 armhf 2.8.0+dfsg1-7+wheezy12 [790 kB]
Get:35 http://ftp.debian.org/debian/ wheezy/main debconf all 1.5.49 [171 kB]
Get:36 http://ftp.debian.org/debian/ wheezy/main libpam0g armhf 1.1.3-7.1 [119 kB]
Get:37 http://ftp.debian.org/debian/ wheezy/main libsemanage-common all 2.1.6-6 [23.2 kB]
Get:38 http://security.debian.org/debian-security/ wheezy/updates/main libcroco3 armhf 0.6.6-2+deb7u1 [121 kB]
Get:39 http://ftp.debian.org/debian/ wheezy/main libsepol1 armhf 2.1.4-3 [120 kB]
Get:40 http://security.debian.org/debian-security/ wheezy/updates/main libexpat1 armhf 2.1.0-1+deb7u5 [110 kB]
Get:41 http://ftp.debian.org/debian/ wheezy/main libustr-1.0-1 armhf 1.0.4-3 [68.5 kB]
Get:42 http://security.debian.org/debian-security/ wheezy/updates/main libsqlite3-0 armhf 3.7.13-1+deb7u4 [386 kB]
Get:43 http://ftp.debian.org/debian/ wheezy/main libsemanage1 armhf 2.1.6-6 [84.5 kB]
Get:44 http://ftp.debian.org/debian/ wheezy/main libpam-modules-bin armhf 1.1.3-7.1 [99.5 kB]
Get:45 http://ftp.debian.org/debian/ wheezy/main libpam-modules armhf 1.1.3-7.1 [312 kB]
Get:46 http://security.debian.org/debian-security/ wheezy/updates/main perl-modules all 5.14.2-21+deb7u5 [3,441 kB]
Get:47 http://ftp.debian.org/debian/ wheezy/main libuuid1 armhf 2.20.1-5.3 [57.2 kB]
Get:48 http://ftp.debian.org/debian/ wheezy/main libblkid1 armhf 2.20.1-5.3 [115 kB]
Get:49 http://ftp.debian.org/debian/ wheezy/main libcomerr2 armhf 1.42.5-1.1+deb7u1 [54.7 kB]
Get:50 http://ftp.debian.org/debian/ wheezy/main libss2 armhf 1.42.5-1.1+deb7u1 [58.8 kB]
Get:51 http://ftp.debian.org/debian/ wheezy/main lsb-base all 4.1+Debian8+deb7u1 [26.8 kB]
Get:52 http://ftp.debian.org/debian/ wheezy/main sysvinit-utils armhf 2.88dsf-41+deb7u1 [94.9 kB]
Get:53 http://ftp.debian.org/debian/ wheezy/main insserv armhf 1.14.0-5 [62.2 kB]
Get:54 http://security.debian.org/debian-security/ wheezy/updates/main perl armhf 5.14.2-21+deb7u5 [3,622 kB]
Get:55 http://ftp.debian.org/debian/ wheezy/main sysv-rc all 2.88dsf-41+deb7u1 [81.8 kB]
Get:56 http://ftp.debian.org/debian/ wheezy/main initscripts armhf 2.88dsf-41+deb7u1 [91.9 kB]
Get:57 http://ftp.debian.org/debian/ wheezy/main libncurses5 armhf 5.9-10 [87.9 kB]
Get:58 http://ftp.debian.org/debian/ wheezy/main libslang2 armhf 2.2.4-15 [500 kB]
Get:59 http://ftp.debian.org/debian/ wheezy/main util-linux armhf 2.20.1-5.3 [635 kB]
Get:60 http://security.debian.org/debian-security/ wheezy/updates/main file armhf 5.11-2+deb7u9 [53.1 kB]
Get:61 http://security.debian.org/debian-security/ wheezy/updates/main locales all 2.13-38+deb7u12 [5,717 kB]
Get:62 http://ftp.debian.org/debian/ wheezy/main e2fsprogs armhf 1.42.5-1.1+deb7u1 [969 kB]
Get:63 http://ftp.debian.org/debian/ wheezy/main findutils armhf 4.4.2-4 [597 kB]
Get:64 http://ftp.debian.org/debian/ wheezy/main grep armhf 2.12-2 [415 kB]
Get:65 http://ftp.debian.org/debian/ wheezy/main gzip armhf 1.5-1.1 [113 kB]
Get:66 http://ftp.debian.org/debian/ wheezy/main hostname armhf 3.11 [14.1 kB]
Get:67 http://ftp.debian.org/debian/ wheezy/main libpam-runtime all 1.1.3-7.1 [228 kB]
Get:68 http://security.debian.org/debian-security/ wheezy/updates/main python2.7-minimal armhf 2.7.3-6+deb7u4 [1,603 kB]
Get:69 http://ftp.debian.org/debian/ wheezy/main libmount1 armhf 2.20.1-5.3 [109 kB]
Get:70 http://ftp.debian.org/debian/ wheezy/main mount armhf 2.20.1-5.3 [206 kB]
Get:71 http://security.debian.org/debian-security/ wheezy/updates/main python2.7 armhf 2.7.3-6+deb7u4 [2,623 kB]
Get:72 http://ftp.debian.org/debian/ wheezy/main ncurses-bin armhf 5.9-10 [329 kB]
Get:73 http://ftp.debian.org/debian/ wheezy/main sed armhf 4.2.1-10 [246 kB]
Get:74 http://ftp.debian.org/debian/ wheezy/main sysvinit armhf 2.88dsf-41+deb7u1 [129 kB]
Get:75 http://security.debian.org/debian-security/ wheezy/updates/main binutils armhf 2.22-8+deb7u3 [4,479 kB]
Get:76 http://ftp.debian.org/debian/ wheezy/main libstdc++6 armhf 4.7.2-5 [279 kB]
Get:77 http://ftp.debian.org/debian/ wheezy/main libapt-pkg4.12 armhf 0.9.7.9+deb7u7 [842 kB]
Get:78 http://ftp.debian.org/debian/ wheezy/main debian-archive-keyring all 2014.3~deb7u1 [60.7 kB]
Get:79 http://ftp.debian.org/debian/ wheezy/main readline-common all 6.2+dfsg-0.1 [31.9 kB]
Get:80 http://ftp.debian.org/debian/ wheezy/main libreadline6 armhf 6.2+dfsg-0.1 [139 kB]
Get:81 http://security.debian.org/debian-security/ wheezy/updates/main libc-dev-bin armhf 2.13-38+deb7u12 [221 kB]
Get:82 http://ftp.debian.org/debian/ wheezy/main libusb-0.1-4 armhf 2:0.1.12-20+nmu1 [20.9 kB]
Get:83 http://ftp.debian.org/debian/ wheezy/main apt armhf 0.9.7.9+deb7u7 [1,226 kB]
Get:84 http://security.debian.org/debian-security/ wheezy/updates/main libc6-dev armhf 2.13-38+deb7u12 [2,353 kB]
Get:85 http://ftp.debian.org/debian/ wheezy/main base-passwd armhf 3.5.26 [45.3 kB]
Get:86 http://ftp.debian.org/debian/ wheezy/main bsdutils armhf 1:2.20.1-5.3 [83.8 kB]
Get:87 http://security.debian.org/debian-security/ wheezy/updates/main linux-libc-dev armhf 3.2.96-3 [856 kB]
Get:88 http://ftp.debian.org/debian/ wheezy/main ncurses-base all 5.9-10 [198 kB]
Get:89 http://ftp.debian.org/debian/ wheezy/main libgdbm3 armhf 1.8.3-11 [43.7 kB]
Get:90 http://ftp.debian.org/debian/ wheezy/main libncursesw5 armhf 5.9-10 [111 kB]
Get:91 http://ftp.debian.org/debian/ wheezy/main libpipeline1 armhf 1.2.1-1 [33.2 kB]
Get:92 http://ftp.debian.org/debian/ wheezy/main liblocale-gettext-perl armhf 1.05-7+b3 [19.7 kB]
Get:93 http://ftp.debian.org/debian/ wheezy/main libasprintf0c2 armhf 0.18.1.1-9 [26.4 kB]
Get:94 http://ftp.debian.org/debian/ wheezy/main libpcre3 armhf 1:8.30-5 [240 kB]
Get:95 http://ftp.debian.org/debian/ wheezy/main libglib2.0-0 armhf 2.33.12+really2.32.4-5 [1,709 kB]
Get:96 http://ftp.debian.org/debian/ wheezy/main libunistring0 armhf 0.9.3-5+b1 [404 kB]
Get:97 http://ftp.debian.org/debian/ wheezy/main libgettextpo0 armhf 0.18.1.1-9 [122 kB]
Get:98 http://ftp.debian.org/debian/ wheezy/main libgmp10 armhf 2:5.0.5+dfsg-2 [198 kB]
Get:99 http://ftp.debian.org/debian/ wheezy/main libgomp1 armhf 4.7.2-5 [25.7 kB]
Get:100 http://ftp.debian.org/debian/ wheezy/main libmpfr4 armhf 3.1.0-5 [516 kB]
Get:101 http://ftp.debian.org/debian/ wheezy/main libswitch-perl all 2.16-2 [21.0 kB]
Get:102 http://ftp.debian.org/debian/ wheezy/main libclass-isa-perl all 0.36-3 [12.3 kB]
Get:103 http://ftp.debian.org/debian/ wheezy/main sgml-base all 1.26+nmu4 [14.6 kB]
Get:104 http://ftp.debian.org/debian/ wheezy/main libmpc2 armhf 0.9-4+b1 [31.9 kB]
Get:105 http://ftp.debian.org/debian/ wheezy/main bsdmainutils armhf 9.0.3 [204 kB]
Get:106 http://ftp.debian.org/debian/ wheezy/main groff-base armhf 1.21-9 [1,031 kB]
Get:107 http://ftp.debian.org/debian/ wheezy/main man-db armhf 2.6.2-1 [1,014 kB]
Get:108 http://ftp.debian.org/debian/ wheezy/main libtext-iconv-perl armhf 1.7-5 [16.5 kB]
Get:109 http://ftp.debian.org/debian/ wheezy/main libtext-charwidth-perl armhf 0.04-7+b2 [10.7 kB]
Get:110 http://ftp.debian.org/debian/ wheezy/main libtext-wrapi18n-perl all 0.06-7 [9,004 B]
Get:111 http://ftp.debian.org/debian/ wheezy/main debconf-i18n all 1.5.49 [237 kB]
Get:112 http://ftp.debian.org/debian/ wheezy/main xz-utils armhf 5.1.1alpha+20120614-2 [233 kB]
Get:113 http://ftp.debian.org/debian/ wheezy/main bzip2 armhf 1.0.6-4 [48.6 kB]
Get:114 http://ftp.debian.org/debian/ wheezy/main gettext-base armhf 0.18.1.1-9 [130 kB]
Get:115 http://ftp.debian.org/debian/ wheezy/main m4 armhf 1.4.16-3 [241 kB]
Get:116 http://ftp.debian.org/debian/ wheezy/main mime-support all 3.52-1+deb7u1 [35.5 kB]
Get:117 http://ftp.debian.org/debian/ wheezy/main patch armhf 2.6.1-3 [119 kB]
Get:118 http://ftp.debian.org/debian/ wheezy/main python-minimal all 2.7.3-4+deb7u1 [42.8 kB]
Get:119 http://ftp.debian.org/debian/ wheezy/main python all 2.7.3-4+deb7u1 [181 kB]
Get:120 http://ftp.debian.org/debian/ wheezy/main autoconf all 2.69-1 [589 kB]
Get:121 http://ftp.debian.org/debian/ wheezy/main autotools-dev all 20120608.1 [73.0 kB]
Get:122 http://ftp.debian.org/debian/ wheezy/main automake all 1:1.11.6-1 [607 kB]
Get:123 http://ftp.debian.org/debian/ wheezy/main gcc-4.6-base armhf 4.6.3-14 [141 kB]
Get:124 http://ftp.debian.org/debian/ wheezy/main cpp-4.6 armhf 4.6.3-14 [4,065 kB]
Get:125 http://ftp.debian.org/debian/ wheezy/main cpp armhf 4:4.6.3-8 [16.7 kB]
Get:126 http://ftp.debian.org/debian/ wheezy/main gcc-4.6 armhf 4.6.3-14 [4,290 kB]
Get:127 http://ftp.debian.org/debian/ wheezy/main gcc armhf 4:4.6.3-8 [5,012 B]
Get:128 http://ftp.debian.org/debian/ wheezy/main libstdc++6-4.6-dev armhf 4.6.3-14 [1,676 kB]
Get:129 http://ftp.debian.org/debian/ wheezy/main g++-4.6 armhf 4.6.3-14 [4,957 kB]
Get:130 http://ftp.debian.org/debian/ wheezy/main g++ armhf 4:4.6.3-8 [1,358 B]
Get:131 http://ftp.debian.org/debian/ wheezy/main make armhf 3.81-8.2 [382 kB]
Get:132 http://ftp.debian.org/debian/ wheezy/main libtimedate-perl all 1.2000-1 [41.2 kB]
Get:133 http://ftp.debian.org/debian/ wheezy/main libdpkg-perl all 1.16.18 [966 kB]
Get:134 http://ftp.debian.org/debian/ wheezy/main dpkg-dev all 1.16.18 [1,366 kB]
Get:135 http://ftp.debian.org/debian/ wheezy/main build-essential armhf 11.5+b1 [7,140 B]
Get:136 http://ftp.debian.org/debian/ wheezy/main html2text armhf 1.3.2a-15+b1 [94.6 kB]
Get:137 http://ftp.debian.org/debian/ wheezy/main gettext armhf 0.18.1.1-9 [1,828 kB]
Get:138 http://ftp.debian.org/debian/ wheezy/main intltool-debian all 0.35.0+20060710.1 [30.8 kB]
Get:139 http://ftp.debian.org/debian/ wheezy/main po-debconf all 1.0.16+nmu2 [224 kB]
Get:140 http://ftp.debian.org/debian/ wheezy/main debhelper all 9.20120909 [705 kB]
Get:141 http://ftp.debian.org/debian/ wheezy/main devscripts armhf 2.12.6+deb7u2 [878 kB]
Get:142 http://ftp.debian.org/debian/ wheezy/main xml-core all 0.13+nmu2 [24.2 kB]
Get:143 http://ftp.debian.org/debian/ wheezy/main sgml-data all 2.0.8 [284 kB]
Get:144 http://ftp.debian.org/debian/ wheezy/main docbook all 4.5-5.1 [453 kB]
Get:145 http://ftp.debian.org/debian/ wheezy/main libsp1c2 armhf 1.3.4-1.2.1-47.1+b1 [1,204 kB]
Get:146 http://ftp.debian.org/debian/ wheezy/main sp armhf 1.3.4-1.2.1-47.1+b1 [159 kB]
Get:147 http://ftp.debian.org/debian/ wheezy/main docbook-to-man armhf 1:2.0.0-31 [77.4 kB]
Get:148 http://ftp.debian.org/debian/ wheezy/main dselect armhf 1.16.18 [1,141 kB]
Get:149 http://ftp.debian.org/debian/ wheezy/main fakeroot armhf 1.18.4-2 [99.7 kB]
Get:150 http://ftp.debian.org/debian/ wheezy/main equivs all 2.0.9 [20.7 kB]
Fetched 93.8 MB in 11s (8,387 kB/s)
Download complete and in download only mode
I: Calculating obsolete packages
Using directory /workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/ for unpacking operations
I: Extracting apt_0.9.7.9+deb7u7_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in apt_0.9.7.9+deb7u7_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for apt
I: Extracting autoconf_2.69-1_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in autoconf_2.69-1_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for autoconf
I: Extracting automake_1%3a1.11.6-1_all.deb...
I: Extracting autotools-dev_20120608.1_all.deb...
I: Extracting base-files_7.1wheezy11_armhf.deb...
 -> Processing conffiles for base-files
I: Extracting base-passwd_3.5.26_armhf.deb...
I: Extracting bash_4.2+dfsg-0.1+deb7u4_armhf.deb...
 -> Processing conffiles for bash
I: Extracting binutils_2.22-8+deb7u3_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in binutils_2.22-8+deb7u3_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting bsdmainutils_9.0.3_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in bsdmainutils_9.0.3_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for bsdmainutils
I: Extracting bsdutils_1%3a2.20.1-5.3_armhf.deb...
I: Extracting build-essential_11.5+b1_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in build-essential_11.5+b1_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting bzip2_1.0.6-4_armhf.deb...
I: Extracting coreutils_8.13-3.5_armhf.deb...
I: Extracting cpp-4.6_4.6.3-14_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in cpp-4.6_4.6.3-14_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting cpp_4%3a4.6.3-8_armhf.deb...
I: Extracting dash_0.5.7-3_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in dash_0.5.7-3_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting debconf-i18n_1.5.49_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in debconf-i18n_1.5.49_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting debconf_1.5.49_all.deb...
 -> Processing conffiles for debconf
I: Extracting debhelper_9.20120909_all.deb...
I: Extracting debian-archive-keyring_2014.3~deb7u1_all.deb...
 -> Processing conffiles for debian-archive-keyring
I: Extracting debianutils_4.3.2_armhf.deb...
I: Extracting devscripts_2.12.6+deb7u2_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in devscripts_2.12.6+deb7u2_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for devscripts
I: Extracting diffutils_1%3a3.2-6_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in diffutils_1%3a3.2-6_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting docbook-to-man_1%3a2.0.0-31_armhf.deb...
I: Extracting docbook_4.5-5.1_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in docbook_4.5-5.1_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for docbook
I: Extracting dpkg-dev_1.16.18_all.deb...
 -> Processing conffiles for dpkg-dev
I: Extracting dpkg_1.16.18_armhf.deb...
 -> Processing conffiles for dpkg
I: Extracting dselect_1.16.18_armhf.deb...
 -> Processing conffiles for dselect
I: Extracting e2fslibs_1.42.5-1.1+deb7u1_armhf.deb...
I: Extracting e2fsprogs_1.42.5-1.1+deb7u1_armhf.deb...
 -> Processing conffiles for e2fsprogs
I: Extracting equivs_2.0.9_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in equivs_2.0.9_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting fakeroot_1.18.4-2_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in fakeroot_1.18.4-2_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting file_5.11-2+deb7u9_armhf.deb...
I: Extracting findutils_4.4.2-4_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in findutils_4.4.2-4_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting g++-4.6_4.6.3-14_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in g++-4.6_4.6.3-14_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting g++_4%3a4.6.3-8_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in g++_4%3a4.6.3-8_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting gcc-4.6-base_4.6.3-14_armhf.deb...
I: Extracting gcc-4.6_4.6.3-14_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in gcc-4.6_4.6.3-14_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting gcc-4.7-base_4.7.2-5_armhf.deb...
I: Extracting gcc_4%3a4.6.3-8_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in gcc_4%3a4.6.3-8_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting gettext-base_0.18.1.1-9_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in gettext-base_0.18.1.1-9_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting gettext_0.18.1.1-9_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in gettext_0.18.1.1-9_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting gnupg_1.4.12-7+deb7u9_armhf.deb...
I: Extracting gpgv_1.4.12-7+deb7u9_armhf.deb...
I: Extracting grep_2.12-2_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in grep_2.12-2_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting groff-base_1.21-9_armhf.deb...
 -> Processing conffiles for groff-base
I: Extracting gzip_1.5-1.1_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in gzip_1.5-1.1_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting hostname_3.11_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in hostname_3.11_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting html2text_1.3.2a-15+b1_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in html2text_1.3.2a-15+b1_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting initscripts_2.88dsf-41+deb7u1_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in initscripts_2.88dsf-41+deb7u1_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for initscripts
I: Extracting insserv_1.14.0-5_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in insserv_1.14.0-5_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for insserv
I: Extracting intltool-debian_0.35.0+20060710.1_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in intltool-debian_0.35.0+20060710.1_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting libacl1_2.2.51-8_armhf.deb...
I: Extracting libapt-pkg4.12_0.9.7.9+deb7u7_armhf.deb...
I: Extracting libasprintf0c2_0.18.1.1-9_armhf.deb...
I: Extracting libattr1_1%3a2.4.46-8_armhf.deb...
I: Extracting libblkid1_2.20.1-5.3_armhf.deb...
I: Extracting libbz2-1.0_1.0.6-4_armhf.deb...
I: Extracting libc-bin_2.13-38+deb7u12_armhf.deb...
 -> Processing conffiles for libc-bin
I: Extracting libc-dev-bin_2.13-38+deb7u12_armhf.deb...
I: Extracting libc6-dev_2.13-38+deb7u12_armhf.deb...
I: Extracting libc6_2.13-38+deb7u12_armhf.deb...
 -> Processing conffiles for libc6
I: Extracting libclass-isa-perl_0.36-3_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in libclass-isa-perl_0.36-3_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting libcomerr2_1.42.5-1.1+deb7u1_armhf.deb...
I: Extracting libcroco3_0.6.6-2+deb7u1_armhf.deb...
I: Extracting libdb5.1_5.1.29-5+deb7u1_armhf.deb...
I: Extracting libdpkg-perl_1.16.18_all.deb...
I: Extracting libexpat1_2.1.0-1+deb7u5_armhf.deb...
I: Extracting libffi5_3.0.10-3+deb7u2_armhf.deb...
I: Extracting libgcc1_1%3a4.7.2-5_armhf.deb...
I: Extracting libgdbm3_1.8.3-11_armhf.deb...
I: Extracting libgettextpo0_0.18.1.1-9_armhf.deb...
I: Extracting libglib2.0-0_2.33.12+really2.32.4-5_armhf.deb...
I: Extracting libgmp10_2%3a5.0.5+dfsg-2_armhf.deb...
I: Extracting libgomp1_4.7.2-5_armhf.deb...
I: Extracting liblocale-gettext-perl_1.05-7+b3_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in liblocale-gettext-perl_1.05-7+b3_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting liblzma5_5.1.1alpha+20120614-2_armhf.deb...
I: Extracting libmagic1_5.11-2+deb7u9_armhf.deb...
 -> Processing conffiles for libmagic1
I: Extracting libmount1_2.20.1-5.3_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in libmount1_2.20.1-5.3_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting libmpc2_0.9-4+b1_armhf.deb...
I: Extracting libmpfr4_3.1.0-5_armhf.deb...
I: Extracting libncurses5_5.9-10_armhf.deb...
I: Extracting libncursesw5_5.9-10_armhf.deb...
I: Extracting libpam-modules-bin_1.1.3-7.1_armhf.deb...
I: Extracting libpam-modules_1.1.3-7.1_armhf.deb...
 -> Processing conffiles for libpam-modules
I: Extracting libpam-runtime_1.1.3-7.1_all.deb...
 -> Processing conffiles for libpam-runtime
I: Extracting libpam0g_1.1.3-7.1_armhf.deb...
I: Extracting libpcre3_1%3a8.30-5_armhf.deb...
I: Extracting libpipeline1_1.2.1-1_armhf.deb...
I: Extracting libreadline6_6.2+dfsg-0.1_armhf.deb...
I: Extracting libselinux1_2.1.9-5_armhf.deb...
I: Extracting libsemanage-common_2.1.6-6_all.deb...
 -> Processing conffiles for libsemanage-common
I: Extracting libsemanage1_2.1.6-6_armhf.deb...
I: Extracting libsepol1_2.1.4-3_armhf.deb...
I: Extracting libslang2_2.2.4-15_armhf.deb...
I: Extracting libsp1c2_1.3.4-1.2.1-47.1+b1_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in libsp1c2_1.3.4-1.2.1-47.1+b1_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting libsqlite3-0_3.7.13-1+deb7u4_armhf.deb...
I: Extracting libss2_1.42.5-1.1+deb7u1_armhf.deb...
I: Extracting libssl1.0.0_1.0.1t-1+deb7u3_armhf.deb...
I: Extracting libstdc++6-4.6-dev_4.6.3-14_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in libstdc++6-4.6-dev_4.6.3-14_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting libstdc++6_4.7.2-5_armhf.deb...
I: Extracting libswitch-perl_2.16-2_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in libswitch-perl_2.16-2_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting libtext-charwidth-perl_0.04-7+b2_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in libtext-charwidth-perl_0.04-7+b2_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting libtext-iconv-perl_1.7-5_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in libtext-iconv-perl_1.7-5_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting libtext-wrapi18n-perl_0.06-7_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in libtext-wrapi18n-perl_0.06-7_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting libtimedate-perl_1.2000-1_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in libtimedate-perl_1.2000-1_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting libtinfo5_5.9-10_armhf.deb...
I: Extracting libunistring0_0.9.3-5+b1_armhf.deb...
I: Extracting libusb-0.1-4_2%3a0.1.12-20+nmu1_armhf.deb...
I: Extracting libustr-1.0-1_1.0.4-3_armhf.deb...
I: Extracting libuuid1_2.20.1-5.3_armhf.deb...
I: Extracting libxml2_2.8.0+dfsg1-7+wheezy12_armhf.deb...
I: Extracting linux-libc-dev_3.2.96-3_armhf.deb...
I: Extracting locales_2.13-38+deb7u12_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in locales_2.13-38+deb7u12_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for locales
I: Extracting login_1%3a4.1.5.1-1+deb7u1_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in login_1%3a4.1.5.1-1+deb7u1_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for login
I: Extracting lsb-base_4.1+Debian8+deb7u1_all.deb...
I: Extracting m4_1.4.16-3_armhf.deb...
I: Extracting make_3.81-8.2_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in make_3.81-8.2_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting man-db_2.6.2-1_armhf.deb...
 -> Processing conffiles for man-db
I: Extracting mawk_1.3.3-17_armhf.deb...
I: Extracting mime-support_3.52-1+deb7u1_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in mime-support_3.52-1+deb7u1_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for mime-support
I: Extracting mount_2.20.1-5.3_armhf.deb...
I: Extracting multiarch-support_2.13-38+deb7u12_armhf.deb...
I: Extracting ncurses-base_5.9-10_all.deb...
 -> Processing conffiles for ncurses-base
I: Extracting ncurses-bin_5.9-10_armhf.deb...
I: Extracting passwd_1%3a4.1.5.1-1+deb7u1_armhf.deb...
 -> Processing conffiles for passwd
I: Extracting patch_2.6.1-3_armhf.deb...
I: Extracting perl-base_5.14.2-21+deb7u5_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in perl-base_5.14.2-21+deb7u5_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting perl-modules_5.14.2-21+deb7u5_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in perl-modules_5.14.2-21+deb7u5_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for perl-modules
I: Extracting perl_5.14.2-21+deb7u5_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in perl_5.14.2-21+deb7u5_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting po-debconf_1.0.16+nmu2_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in po-debconf_1.0.16+nmu2_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting python-minimal_2.7.3-4+deb7u1_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in python-minimal_2.7.3-4+deb7u1_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting python2.7-minimal_2.7.3-6+deb7u4_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in python2.7-minimal_2.7.3-6+deb7u4_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for python2.7-minimal
I: Extracting python2.7_2.7.3-6+deb7u4_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in python2.7_2.7.3-6+deb7u4_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting python_2.7.3-4+deb7u1_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in python_2.7.3-4+deb7u1_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting readline-common_6.2+dfsg-0.1_all.deb...
I: Extracting sed_4.2.1-10_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in sed_4.2.1-10_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting sensible-utils_0.0.7+deb7u1_all.deb...
I: Extracting sgml-base_1.26+nmu4_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in sgml-base_1.26+nmu4_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting sgml-data_2.0.8_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in sgml-data_2.0.8_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for sgml-data
I: Extracting sp_1.3.4-1.2.1-47.1+b1_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in sp_1.3.4-1.2.1-47.1+b1_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting sysv-rc_2.88dsf-41+deb7u1_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in sysv-rc_2.88dsf-41+deb7u1_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting sysvinit-utils_2.88dsf-41+deb7u1_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in sysvinit-utils_2.88dsf-41+deb7u1_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for sysvinit-utils
I: Extracting sysvinit_2.88dsf-41+deb7u1_armhf.deb...
Warning: unrecognised value 'no' for Multi-Arch field in sysvinit_2.88dsf-41+deb7u1_armhf.deb. (Expecting 'same', 'foreign' or 'allowed'.)
I: Extracting tar_1.26+dfsg-0.1+deb7u1_armhf.deb...
 -> Processing conffiles for tar
I: Extracting tzdata_2017c-0+deb7u1_all.deb...
I: Extracting util-linux_2.20.1-5.3_armhf.deb...
 -> Processing conffiles for util-linux
I: Extracting xml-core_0.13+nmu2_all.deb...
Warning: unrecognised value 'no' for Multi-Arch field in xml-core_0.13+nmu2_all.deb. (Expecting 'same', 'foreign' or 'allowed'.)
 -> Processing conffiles for xml-core
I: Extracting xz-utils_5.1.1alpha+20120614-2_armhf.deb...
I: Extracting zlib1g_1%3a1.2.7.dfsg-13_armhf.deb...
I: Unpacking complete.
initctl: Trying to prevent daemons from starting in /workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/
sysvinit: Using policy-rc.d to prevent daemons from starting in /workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/
Ign http://ftp.debian.org wheezy InRelease
Get:1 http://ftp.debian.org wheezy-updates InRelease [157 kB]
Get:2 http://security.debian.org wheezy/updates InRelease [40.6 kB]
Get:3 http://ftp.debian.org wheezy Release.gpg [2,373 B]
Hit http://ftp.debian.org wheezy Release
Get:4 http://ftp.debian.org wheezy-updates/main armhf Packages [6,248 B]
Get:5 http://ftp.debian.org wheezy-updates/contrib armhf Packages [14 B]
Get:6 http://security.debian.org wheezy/updates/main armhf Packages [597 kB]
Get:7 http://ftp.debian.org wheezy-updates/non-free armhf Packages [488 B]
Get:8 http://ftp.debian.org wheezy-updates/contrib Translation-en [14 B]
Get:9 http://ftp.debian.org wheezy-updates/main Translation-en [4,879 B]
Get:10 http://ftp.debian.org wheezy-updates/non-free Translation-en [496 B]
Hit http://ftp.debian.org wheezy/main armhf Packages
Hit http://ftp.debian.org wheezy/contrib armhf Packages
Hit http://ftp.debian.org wheezy/non-free armhf Packages
Hit http://ftp.debian.org wheezy/contrib Translation-en
Hit http://ftp.debian.org wheezy/main Translation-en
Hit http://ftp.debian.org wheezy/non-free Translation-en
Get:11 http://security.debian.org wheezy/updates/contrib armhf Packages [14 B]
Get:12 http://security.debian.org wheezy/updates/non-free armhf Packages [14 B]
Get:13 http://security.debian.org wheezy/updates/contrib Translation-en [14 B]
Get:14 http://security.debian.org wheezy/updates/main Translation-en [334 kB]
Get:15 http://security.debian.org wheezy/updates/non-free Translation-en [593 B]
Fetched 1,144 kB in 6s (179 kB/s)
Reading package lists...
Ign file: isar InRelease
Ign file: isar Release.gpg
Ign file: isar Release
Err file: isar/main armhf Packages
  File not found
Ign file: isar/main Translation-en_US
Ign file: isar/main Translation-en
Ign http://ftp.debian.org wheezy InRelease
Hit http://security.debian.org wheezy/updates InRelease
Hit http://ftp.debian.org wheezy-updates InRelease
Hit http://ftp.debian.org wheezy Release.gpg
Hit http://ftp.debian.org wheezy Release
Hit http://security.debian.org wheezy/updates/main armhf Packages
Hit http://security.debian.org wheezy/updates/contrib armhf Packages
Get:1 http://ftp.debian.org wheezy-updates/main armhf Packages/DiffIndex [2,488 B]
Hit http://security.debian.org wheezy/updates/non-free armhf Packages
Hit http://security.debian.org wheezy/updates/contrib Translation-en
Hit http://security.debian.org wheezy/updates/main Translation-en
Hit http://security.debian.org wheezy/updates/non-free Translation-en
Hit http://ftp.debian.org wheezy-updates/contrib armhf Packages
Get:2 http://ftp.debian.org wheezy-updates/non-free armhf Packages/DiffIndex [736 B]
Hit http://ftp.debian.org wheezy-updates/contrib Translation-en
Get:3 http://ftp.debian.org wheezy-updates/main Translation-en/DiffIndex [736 B]
Get:4 http://ftp.debian.org wheezy-updates/non-free Translation-en/DiffIndex [736 B]
Hit http://ftp.debian.org wheezy/main armhf Packages
Hit http://ftp.debian.org wheezy/contrib armhf Packages
Hit http://ftp.debian.org wheezy/non-free armhf Packages
Hit http://ftp.debian.org wheezy/contrib Translation-en
Hit http://ftp.debian.org wheezy/main Translation-en
Hit http://ftp.debian.org wheezy/non-free Translation-en
Fetched 4,696 B in 5s (913 B/s)
W: Failed to fetch file:/isar-apt/dists/isar/main/binary-armhf/Packages  File not found

E: Some index files failed to download. They have been ignored, or old ones used instead.

Multistrap system installed successfully in /workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/rootfs/.

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = "en_US.UTF-8",
	LANG = (unset)
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
/usr/bin/locale: Cannot set LC_CTYPE to default locale: No such file or directory
/usr/bin/locale: Cannot set LC_MESSAGES to default locale: No such file or directory
/usr/bin/locale: Cannot set LC_ALL to default locale: No such file or directory
Adding 'diversion of /bin/sh to /bin/sh.distrib by dash'
Adding 'diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by dash'
Setting up lsb-base (4.1+Debian8+deb7u1) ...
Setting up ncurses-base (5.9-10) ...
Setting up autotools-dev (20120608.1) ...
Setting up sensible-utils (0.0.7+deb7u1) ...
Setting up linux-libc-dev:armhf (3.2.96-3) ...
Setting up libclass-isa-perl (0.36-3) ...
Setting up libsemanage-common (2.1.6-6) ...
Setting up gcc-4.7-base:armhf (4.7.2-5) ...
Setting up libc-bin (2.13-38+deb7u12) ...
Setting up mime-support (3.52-1+deb7u1) ...
update-alternatives: using /usr/bin/see to provide /usr/bin/view (view) in auto mode
Setting up gcc-4.6-base:armhf (4.6.3-14) ...
Setting up libswitch-perl (2.16-2) ...
Setting up multiarch-support (2.13-38+deb7u12) ...
Setting up libc6:armhf (2.13-38+deb7u12) ...
Use of uninitialized value in concatenation (.) or string at /usr/share/perl5/Debconf/Config.pm line 22.
Setting up make (3.81-8.2) ...
Setting up libgmp10:armhf (2:5.0.5+dfsg-2) ...
Setting up libmpfr4:armhf (3.1.0-5) ...
Setting up debianutils (4.3.2) ...
Setting up libusb-0.1-4:armhf (2:0.1.12-20+nmu1) ...
Setting up perl-modules (5.14.2-21+deb7u5) ...
Setting up libunistring0:armhf (0.9.3-5+b1) ...
Setting up libsepol1:armhf (2.1.4-3) ...
Setting up libc-dev-bin (2.13-38+deb7u12) ...
Setting up libgettextpo0:armhf (0.18.1.1-9) ...
Setting up libgcc1:armhf (1:4.7.2-5) ...
Setting up libsqlite3-0:armhf (3.7.13-1+deb7u4) ...
Setting up libexpat1:armhf (2.1.0-1+deb7u5) ...
Setting up patch (2.6.1-3) ...
Setting up libattr1:armhf (1:2.4.46-8) ...
Setting up libmpc2:armhf (0.9-4+b1) ...
Setting up e2fslibs:armhf (1.42.5-1.1+deb7u1) ...
Setting up base-passwd (3.5.26) ...
Setting up libcomerr2:armhf (1.42.5-1.1+deb7u1) ...
Setting up mawk (1.3.3-17) ...
Setting up libpipeline1:armhf (1.2.1-1) ...
Setting up hostname (3.11) ...
Setting up fakeroot (1.18.4-2) ...
update-alternatives: using /usr/bin/fakeroot-sysv to provide /usr/bin/fakeroot (fakeroot) in auto mode
Setting up libacl1:armhf (2.2.51-8) ...
Setting up libslang2:armhf (2.2.4-15) ...
Setting up libss2:armhf (1.42.5-1.1+deb7u1) ...
Setting up liblzma5:armhf (5.1.1alpha+20120614-2) ...
Setting up libdb5.1:armhf (5.1.29-5+deb7u1) ...
Setting up insserv (1.14.0-5) ...
Setting up libpcre3:armhf (1:8.30-5) ...
Setting up libbz2-1.0:armhf (1.0.6-4) ...
Setting up libtinfo5:armhf (5.9-10) ...
Setting up libselinux1:armhf (2.1.9-5) ...
Setting up libstdc++6:armhf (4.7.2-5) ...
Setting up libgomp1:armhf (4.7.2-5) ...
Setting up libustr-1.0-1:armhf (1.0.4-3) ...
Setting up libasprintf0c2:armhf (0.18.1.1-9) ...
Setting up gettext-base (0.18.1.1-9) ...
Setting up libffi5:armhf (3.0.10-3+deb7u2) ...
Setting up bsdutils (1:2.20.1-5.3) ...
Setting up libc6-dev:armhf (2.13-38+deb7u12) ...
Setting up bzip2 (1.0.6-4) ...
Setting up ncurses-bin (5.9-10) ...
Setting up libsp1c2 (1.3.4-1.2.1-47.1+b1) ...
Setting up libstdc++6-4.6-dev (4.6.3-14) ...
Setting up libsemanage1:armhf (2.1.6-6) ...
Setting up tar (1.26+dfsg-0.1+deb7u1) ...
update-alternatives: using /usr/sbin/rmt-tar to provide /usr/sbin/rmt (rmt) in auto mode
Setting up zlib1g:armhf (1:1.2.7.dfsg-13) ...
Setting up html2text (1.3.2a-15+b1) ...
Setting up base-files (7.1wheezy11) ...
Setting up libncurses5:armhf (5.9-10) ...
Setting up groff-base (1.21-9) ...
Setting up bsdmainutils (9.0.3) ...
update-alternatives: using /usr/bin/bsd-write to provide /usr/bin/write (write) in auto mode
update-alternatives: using /usr/bin/bsd-from to provide /usr/bin/from (from) in auto mode
Setting up xz-utils (5.1.1alpha+20120614-2) ...
update-alternatives: using /usr/bin/xz to provide /usr/bin/lzma (lzma) in auto mode
Setting up dpkg (1.16.18) ...
Setting up libncursesw5:armhf (5.9-10) ...
Setting up dselect (1.16.18) ...
Setting up sysvinit-utils (2.88dsf-41+deb7u1) ...
Setting up m4 (1.4.16-3) ...
Setting up binutils (2.22-8+deb7u3) ...
Setting up libglib2.0-0:armhf (2.33.12+really2.32.4-5) ...
No schema files found: doing nothing.
Setting up readline-common (6.2+dfsg-0.1) ...
Setting up dash (0.5.7-3) ...
Setting up coreutils (8.13-3.5) ...
Setting up libxml2:armhf (2.8.0+dfsg1-7+wheezy12) ...
Setting up gpgv (1.4.12-7+deb7u9) ...
Setting up libgdbm3:armhf (1.8.3-11) ...
Setting up cpp-4.6 (4.6.3-14) ...
Setting up sp (1.3.4-1.2.1-47.1+b1) ...
Setting up perl-base (5.14.2-21+deb7u5) ...
Setting up libmagic1:armhf (5.11-2+deb7u9) ...
Setting up libapt-pkg4.12:armhf (0.9.7.9+deb7u7) ...
Setting up diffutils (1:3.2-6) ...
Setting up file (5.11-2+deb7u9) ...
Setting up gcc-4.6 (4.6.3-14) ...
Setting up libtext-iconv-perl (1.7-5) ...
Setting up libreadline6:armhf (6.2+dfsg-0.1) ...
Setting up sed (4.2.1-10) ...
Setting up gnupg (1.4.12-7+deb7u9) ...
Setting up grep (2.12-2) ...
Setting up findutils (4.4.2-4) ...
Setting up libcroco3:armhf (0.6.6-2+deb7u1) ...
Setting up cpp (4:4.6.3-8) ...
Setting up debian-archive-keyring (2014.3~deb7u1) ...
Setting up gzip (1.5-1.1) ...
Setting up liblocale-gettext-perl (1.05-7+b3) ...
Setting up gcc (4:4.6.3-8) ...
Setting up perl (5.14.2-21+deb7u5) ...
update-alternatives: using /usr/bin/prename to provide /usr/bin/rename (rename) in auto mode
Setting up bash (4.2+dfsg-0.1+deb7u4) ...
update-alternatives: using /usr/share/man/man7/bash-builtins.7.gz to provide /usr/share/man/man7/builtins.7.gz (builtins.7.gz) in auto mode
Setting up libtext-charwidth-perl (0.04-7+b2) ...
Setting up libtext-wrapi18n-perl (0.06-7) ...
Setting up debconf (1.5.49) ...
Setting up libssl1.0.0:armhf (1.0.1t-1+deb7u3) ...
Setting up man-db (2.6.2-1) ...
Building database of manual pages ...
Setting up g++-4.6 (4.6.3-14) ...
Setting up libpam0g:armhf (1.1.3-7.1) ...
Setting up sysv-rc (2.88dsf-41+deb7u1) ...
Setting up libtimedate-perl (1.2000-1) ...
Setting up apt (0.9.7.9+deb7u7) ...
gpg: keyring `/etc/apt/trusted.gpg' created
gpg: key B98321F9: "Squeeze Stable Release Key <debian-release@lists.debian.org>" not changed
gpg: key 473041FA: "Debian Archive Automatic Signing Key (6.0/squeeze) <ftpmaster@debian.org>" not changed
gpg: key 65FFB764: "Wheezy Stable Release Key <debian-release@lists.debian.org>" not changed
gpg: key 46925553: "Debian Archive Automatic Signing Key (7.0/wheezy) <ftpmaster@debian.org>" not changed
gpg: key 518E17E1: "Jessie Stable Release Key <debian-release@lists.debian.org>" not changed
gpg: key 2B90D010: "Debian Archive Automatic Signing Key (8/jessie) <ftpmaster@debian.org>" not changed
gpg: key C857C906: "Debian Security Archive Automatic Signing Key (8/jessie) <ftpmaster@debian.org>" not changed
gpg: Total number processed: 7
gpg:              unchanged: 7
gpg: /etc/apt//trustdb.gpg: trustdb created
Setting up sgml-base (1.26+nmu4) ...
Setting up tzdata (2017c-0+deb7u1) ...

Current default time zone: 'Etc/UTC'
Local time is now:      Mon Feb 19 13:42:27 UTC 2018.
Universal Time is now:  Mon Feb 19 13:42:27 UTC 2018.
Run 'dpkg-reconfigure tzdata' if you wish to change it.

Setting up gettext (0.18.1.1-9) ...
Setting up libdpkg-perl (1.16.18) ...
Setting up locales (2.13-38+deb7u12) ...
Generating locales (this might take a while)...
  en_US.UTF-8... done
Generation complete.
Setting up intltool-debian (0.35.0+20060710.1) ...
Setting up python2.7-minimal (2.7.3-6+deb7u4) ...
Setting up g++ (4:4.6.3-8) ...
update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode
Setting up debconf-i18n (1.5.49) ...
Setting up autoconf (2.69-1) ...
Setting up initscripts (2.88dsf-41+deb7u1) ...
/bin/rm: cannot remove `/dev/shm': Device or resource busy
dpkg: error processing initscripts (--configure):
 subprocess installed post-installation script returned error exit status 1
Setting up libpam-modules-bin (1.1.3-7.1) ...
Setting up automake (1:1.11.6-1) ...
update-alternatives: using /usr/bin/automake-1.11 to provide /usr/bin/automake (automake) in auto mode
Setting up xml-core (0.13+nmu2) ...
dpkg: dependency problems prevent configuration of util-linux:
 util-linux depends on initscripts; however:
  Package initscripts is not configured yet.

dpkg: error processing util-linux (--configure):
 dependency problems - leaving unconfigured
Setting up po-debconf (1.0.16+nmu2) ...
Setting up python-minimal (2.7.3-4+deb7u1) ...
Setting up dpkg-dev (1.16.18) ...
Setting up libpam-modules:armhf (1.1.3-7.1) ...
Setting up python2.7 (2.7.3-6+deb7u4) ...
Setting up sgml-data (2.0.8) ...
Setting up passwd (1:4.1.5.1-1+deb7u1) ...
Shadow passwords are now on.
Setting up libpam-runtime (1.1.3-7.1) ...
dpkg: dependency problems prevent configuration of sysvinit:
 sysvinit depends on initscripts (>= 2.88dsf-13.3); however:
  Package initscripts is not configured yet.

dpkg: error processing sysvinit (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of e2fsprogs:
 e2fsprogs depends on util-linux (>= 2.15~rc1-1); however:
  Package util-linux is not configured yet.

dpkg: error processing e2fsprogs (--configure):
 dependency problems - leaving unconfigured
Setting up build-essential (11.5+b1) ...
Setting up login (1:4.1.5.1-1+deb7u1) ...
Setting up libuuid1:armhf (2.20.1-5.3) ...
Setting up debhelper (9.20120909) ...
Setting up python (2.7.3-4+deb7u1) ...
Setting up docbook (4.5-5.1) ...
Setting up docbook-to-man (1:2.0.0-31) ...
Setting up equivs (2.0.9) ...
Setting up libblkid1:armhf (2.20.1-5.3) ...
Setting up devscripts (2.12.6+deb7u2) ...
Setting up libmount1 (2.20.1-5.3) ...
Setting up mount (2.20.1-5.3) ...
Errors were encountered while processing:
 initscripts
 util-linux
 sysvinit
 e2fsprogs
WARNING: exit code 1 from a shell command.
ERROR: Function failed: do_build (log file is located at /workspace/build/isar_asmirnov_devel/11/ad554bddddcddd0161b82ad302d0d7f9d8b1d38a/tmp/work/debian-wheezy-armhf/buildchroot/temp/log.do_build.8906)

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 0/8] Assorted patches
  2018-02-19 13:56 ` [PATCH 0/8] Assorted patches Alexander Smirnov
@ 2018-02-19 14:08   ` Jan Kiszka
  2018-02-19 14:19     ` Alexander Smirnov
  0 siblings, 1 reply; 28+ messages in thread
From: Jan Kiszka @ 2018-02-19 14:08 UTC (permalink / raw)
  To: Alexander Smirnov, isar-users

On 2018-02-19 14:56, Alexander Smirnov wrote:
> On 02/16/2018 11:52 AM, Jan Kiszka wrote:
>> Flush of my remaining queue:
>>   - improvements for mount and umount
>>   - arm64 target
>>   - copyright and credit enhancements
>>
> 
> CI failed on wheezy, log is attached. I saw the same problem when mount
> sys/dev via '--bind'.
> 

Is that the error?

> Setting up initscripts (2.88dsf-41+deb7u1) ...
> /bin/rm: cannot remove `/dev/shm': Device or resource busy

Hmm, seems someone would like to wipe /dev content here. That's a
warning sign that we definitely should not expose a host /dev to the chroot.

What else can we do here? Copy /dev over?

Jan

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 0/8] Assorted patches
  2018-02-19 14:08   ` Jan Kiszka
@ 2018-02-19 14:19     ` Alexander Smirnov
  0 siblings, 0 replies; 28+ messages in thread
From: Alexander Smirnov @ 2018-02-19 14:19 UTC (permalink / raw)
  To: Jan Kiszka, isar-users

On 02/19/2018 05:08 PM, Jan Kiszka wrote:
> On 2018-02-19 14:56, Alexander Smirnov wrote:
>> On 02/16/2018 11:52 AM, Jan Kiszka wrote:
>>> Flush of my remaining queue:
>>>    - improvements for mount and umount
>>>    - arm64 target
>>>    - copyright and credit enhancements
>>>
>>
>> CI failed on wheezy, log is attached. I saw the same problem when mount
>> sys/dev via '--bind'.
>>
> 
> Is that the error?
> 
>> Setting up initscripts (2.88dsf-41+deb7u1) ...
>> /bin/rm: cannot remove `/dev/shm': Device or resource busy
> 
> Hmm, seems someone would like to wipe /dev content here. That's a
> warning sign that we definitely should not expose a host /dev to the chroot.
> 
> What else can we do here? Copy /dev over?
> 

The issue here is in following:

  - initstripts.postinst performs check whether we are under chroot
  - then it performs lots of checks:

8<--
		# Note trailing slash for mountpoint dir needed to
		# resolve mountpoints where the dir is a symlink.
		DEV=d
		DEVSHM=d
		RUN=d
		RUNSHM=d
		if mountpoint -q /dev/; then
		    DEV=m
		fi
		if mountpoint -q /dev/shm/; then
		    DEVSHM=m
		fi
		if [ -L /dev/shm ]; then
		    DEVSHM=l
		fi
		if mountpoint -q /run/; then
		    RUN=m
		fi
		if mountpoint -q /run/shm/; then
		    RUNSHM=m
		fi
		if [ -L /run/shm ]; then
		    RUNSHM=l
		fi

		RUNSTATE="${DEV}${DEVSHM}${RUN}${RUNSHM}"
		RUNACTION="NONE"
8<--

  - then according to this is performs complex case:

8<--
		case "$RUNSTATE" in
8<--

So changing of mount way in Isar, somehow changes the flow of this 
script, so it tries to re-create /dev/shm. That's all I know about this 
issue.

Alex

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 1/8] Mount devtmpfs read-only into chroot
  2018-02-16  8:52 ` [PATCH 1/8] Mount devtmpfs read-only into chroot Jan Kiszka
  2018-02-19 10:09   ` Consolidate mounting in tasks (was Re: [PATCH 1/8] Mount devtmpfs read-only into chroot) Claudius Heine
@ 2018-02-20  6:38   ` Alexander Smirnov
  2018-02-20  7:02     ` Alexander Smirnov
  2018-02-20  7:03     ` Jan Kiszka
  1 sibling, 2 replies; 28+ messages in thread
From: Alexander Smirnov @ 2018-02-20  6:38 UTC (permalink / raw)
  To: Jan Kiszka, isar-users

On 02/16/2018 11:52 AM, Jan Kiszka wrote:
> From: Jan Kiszka <jan.kiszka@siemens.com>
> 
> It's too easy to destroy the content of devtmpfs, which is shared with
> the host (including privileged container setups), by calling rm -rf on
> an output dir that still has devtmpfs mounted.
> 

Just tested this:

builder@zbook:~/isar/build$ mkdir aaa
builder@zbook:~/isar/build$ mount -t devtmpfs -o mode=0755,nosuid,ro 
devtmpfs aaa/

# Existing host /dev
[asmirnov@zbook patches]$ sudo rm /dev/ram16
OK

# RO mount point
builder@zbook:~/isar/build$ sudo rm aaa/ram15
rm: cannot remove ‘aaa/ram15’: Read-only file system

What I'm doing wrong?

BTW: started test build on server to check if problem with wheezy will go.

Alex

> To achieve write protection for device nodes, we can't mount devtmpfs
> directly in read-only mode as that will change all mounts to that mode.
> Luckily, doing a read-only bind-mount does the trick.
> 
> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
> ---
>   meta/classes/dpkg-base.bbclass                   | 2 +-
>   meta/recipes-devtools/buildchroot/buildchroot.bb | 2 +-
>   2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/classes/dpkg-base.bbclass b/meta/classes/dpkg-base.bbclass
> index 5eef11b..78709f9 100644
> --- a/meta/classes/dpkg-base.bbclass
> +++ b/meta/classes/dpkg-base.bbclass
> @@ -41,7 +41,7 @@ do_build() {
>           if ! grep -q ${BUILDCHROOT_DIR}/isar-apt /proc/mounts; then \
>               mount --bind ${DEPLOY_DIR_APT}/${DISTRO} ${BUILDCHROOT_DIR}/isar-apt; \
>               mount --bind ${DL_DIR} ${BUILDCHROOT_DIR}/downloads; \
> -            mount -t devtmpfs -o mode=0755,nosuid devtmpfs ${BUILDCHROOT_DIR}/dev; \
> +            mount --bind -o ro /dev ${BUILDCHROOT_DIR}/dev; \
>               mount -t proc none ${BUILDCHROOT_DIR}/proc; \
>           fi'
>   
> diff --git a/meta/recipes-devtools/buildchroot/buildchroot.bb b/meta/recipes-devtools/buildchroot/buildchroot.bb
> index 520daf9..1eca035 100644
> --- a/meta/recipes-devtools/buildchroot/buildchroot.bb
> +++ b/meta/recipes-devtools/buildchroot/buildchroot.bb
> @@ -66,7 +66,7 @@ do_build() {
>              "${WORKDIR}/multistrap.conf.in" > "${WORKDIR}/multistrap.conf"
>   
>       sudo mount --bind ${DEPLOY_DIR_APT}/${DISTRO} ${BUILDCHROOT_DIR}/isar-apt
> -    sudo mount -t devtmpfs -o mode=0755,nosuid devtmpfs ${BUILDCHROOT_DIR}/dev
> +    sudo mount --bind -o ro /dev ${BUILDCHROOT_DIR}/dev
>       sudo mount -t proc none ${BUILDCHROOT_DIR}/proc
>   
>       # Create root filesystem
> 

-- 
With best regards,
Alexander Smirnov

ilbers GmbH
Baierbrunner Str. 28c
D-81379 Munich
+49 (89) 122 67 24-0
http://ilbers.de/
Commercial register Munich, HRB 214197
General manager: Baurzhan Ismagulov

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 1/8] Mount devtmpfs read-only into chroot
  2018-02-20  6:38   ` [PATCH 1/8] Mount devtmpfs read-only into chroot Alexander Smirnov
@ 2018-02-20  7:02     ` Alexander Smirnov
  2018-02-20  7:03     ` Jan Kiszka
  1 sibling, 0 replies; 28+ messages in thread
From: Alexander Smirnov @ 2018-02-20  7:02 UTC (permalink / raw)
  To: Jan Kiszka, isar-users

On 02/20/2018 09:38 AM, Alexander Smirnov wrote:
> On 02/16/2018 11:52 AM, Jan Kiszka wrote:
>> From: Jan Kiszka <jan.kiszka@siemens.com>
>>
>> It's too easy to destroy the content of devtmpfs, which is shared with
>> the host (including privileged container setups), by calling rm -rf on
>> an output dir that still has devtmpfs mounted.
>>
> 
> Just tested this:
> 
> builder@zbook:~/isar/build$ mkdir aaa
> builder@zbook:~/isar/build$ mount -t devtmpfs -o mode=0755,nosuid,ro 
> devtmpfs aaa/
> 
> # Existing host /dev
> [asmirnov@zbook patches]$ sudo rm /dev/ram16
> OK
> 
> # RO mount point
> builder@zbook:~/isar/build$ sudo rm aaa/ram15
> rm: cannot remove ‘aaa/ram15’: Read-only file system
> 
> What I'm doing wrong?
> 

In addition, the following works good:

builder@zbook:~/isar$ mkdir aaa
builder@zbook:~/isar$ sudo mount --bind -o ro /dev aaa/
builder@zbook:~/isar$ sudo rm aaa/ram15

So mount --bind RO doesn't guarantee the RO content.

> BTW: started test build on server to check if problem with wheezy will go.

Build failed, but in the log it seems, that *only* now /dev becomes RO:

I: Extracting automake_1%3a1.15-6_all.deb...
I: Extracting autopoint_0.19.8.1-2_all.deb...
I: Extracting autotools-dev_20161112.1_all.deb...
I: Extracting base-files_9.9+deb9u3_i386.deb...
tar: ./dev: Cannot utime: Read-only file system
tar: ./dev: Cannot change ownership to uid 0, gid 0: Read-only file system
tar: Exiting with failure status due to previous errors
dpkg-deb: error: subprocess tar returned error exit status 2
dpkg -X failed with error code 512
Skipping...

Alex

>> To achieve write protection for device nodes, we can't mount devtmpfs
>> directly in read-only mode as that will change all mounts to that mode.
>> Luckily, doing a read-only bind-mount does the trick.
>>
>> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>> ---
>>   meta/classes/dpkg-base.bbclass                   | 2 +-
>>   meta/recipes-devtools/buildchroot/buildchroot.bb | 2 +-
>>   2 files changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/meta/classes/dpkg-base.bbclass 
>> b/meta/classes/dpkg-base.bbclass
>> index 5eef11b..78709f9 100644
>> --- a/meta/classes/dpkg-base.bbclass
>> +++ b/meta/classes/dpkg-base.bbclass
>> @@ -41,7 +41,7 @@ do_build() {
>>           if ! grep -q ${BUILDCHROOT_DIR}/isar-apt /proc/mounts; then \
>>               mount --bind ${DEPLOY_DIR_APT}/${DISTRO} 
>> ${BUILDCHROOT_DIR}/isar-apt; \
>>               mount --bind ${DL_DIR} ${BUILDCHROOT_DIR}/downloads; \
>> -            mount -t devtmpfs -o mode=0755,nosuid devtmpfs 
>> ${BUILDCHROOT_DIR}/dev; \
>> +            mount --bind -o ro /dev ${BUILDCHROOT_DIR}/dev; \
>>               mount -t proc none ${BUILDCHROOT_DIR}/proc; \
>>           fi'
>> diff --git a/meta/recipes-devtools/buildchroot/buildchroot.bb 
>> b/meta/recipes-devtools/buildchroot/buildchroot.bb
>> index 520daf9..1eca035 100644
>> --- a/meta/recipes-devtools/buildchroot/buildchroot.bb
>> +++ b/meta/recipes-devtools/buildchroot/buildchroot.bb
>> @@ -66,7 +66,7 @@ do_build() {
>>              "${WORKDIR}/multistrap.conf.in" > 
>> "${WORKDIR}/multistrap.conf"
>>       sudo mount --bind ${DEPLOY_DIR_APT}/${DISTRO} 
>> ${BUILDCHROOT_DIR}/isar-apt
>> -    sudo mount -t devtmpfs -o mode=0755,nosuid devtmpfs 
>> ${BUILDCHROOT_DIR}/dev
>> +    sudo mount --bind -o ro /dev ${BUILDCHROOT_DIR}/dev
>>       sudo mount -t proc none ${BUILDCHROOT_DIR}/proc
>>       # Create root filesystem
>>
> 

-- 
With best regards,
Alexander Smirnov

ilbers GmbH
Baierbrunner Str. 28c
D-81379 Munich
+49 (89) 122 67 24-0
http://ilbers.de/
Commercial register Munich, HRB 214197
General manager: Baurzhan Ismagulov

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 1/8] Mount devtmpfs read-only into chroot
  2018-02-20  6:38   ` [PATCH 1/8] Mount devtmpfs read-only into chroot Alexander Smirnov
  2018-02-20  7:02     ` Alexander Smirnov
@ 2018-02-20  7:03     ` Jan Kiszka
  2018-02-20  8:18       ` Claudius Heine
  1 sibling, 1 reply; 28+ messages in thread
From: Jan Kiszka @ 2018-02-20  7:03 UTC (permalink / raw)
  To: Alexander Smirnov, isar-users

On 2018-02-20 07:38, Alexander Smirnov wrote:
> On 02/16/2018 11:52 AM, Jan Kiszka wrote:
>> From: Jan Kiszka <jan.kiszka@siemens.com>
>>
>> It's too easy to destroy the content of devtmpfs, which is shared with
>> the host (including privileged container setups), by calling rm -rf on
>> an output dir that still has devtmpfs mounted.
>>
> 
> Just tested this:
> 
> builder@zbook:~/isar/build$ mkdir aaa
> builder@zbook:~/isar/build$ mount -t devtmpfs -o mode=0755,nosuid,ro
> devtmpfs aaa/

I've tried that path first, but it turns all mount points of devtmpfs
into read-only mode - not a good idea...

I think we need to go back to mknod for the rootfs.

Jan

> 
> # Existing host /dev
> [asmirnov@zbook patches]$ sudo rm /dev/ram16
> OK
> 
> # RO mount point
> builder@zbook:~/isar/build$ sudo rm aaa/ram15
> rm: cannot remove ‘aaa/ram15’: Read-only file system
> 
> What I'm doing wrong?
> 
> BTW: started test build on server to check if problem with wheezy will go.
> 
> Alex
> 
>> To achieve write protection for device nodes, we can't mount devtmpfs
>> directly in read-only mode as that will change all mounts to that mode.
>> Luckily, doing a read-only bind-mount does the trick.
>>
>> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>> ---
>>   meta/classes/dpkg-base.bbclass                   | 2 +-
>>   meta/recipes-devtools/buildchroot/buildchroot.bb | 2 +-
>>   2 files changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/meta/classes/dpkg-base.bbclass
>> b/meta/classes/dpkg-base.bbclass
>> index 5eef11b..78709f9 100644
>> --- a/meta/classes/dpkg-base.bbclass
>> +++ b/meta/classes/dpkg-base.bbclass
>> @@ -41,7 +41,7 @@ do_build() {
>>           if ! grep -q ${BUILDCHROOT_DIR}/isar-apt /proc/mounts; then \
>>               mount --bind ${DEPLOY_DIR_APT}/${DISTRO}
>> ${BUILDCHROOT_DIR}/isar-apt; \
>>               mount --bind ${DL_DIR} ${BUILDCHROOT_DIR}/downloads; \
>> -            mount -t devtmpfs -o mode=0755,nosuid devtmpfs
>> ${BUILDCHROOT_DIR}/dev; \
>> +            mount --bind -o ro /dev ${BUILDCHROOT_DIR}/dev; \
>>               mount -t proc none ${BUILDCHROOT_DIR}/proc; \
>>           fi'
>>   diff --git a/meta/recipes-devtools/buildchroot/buildchroot.bb
>> b/meta/recipes-devtools/buildchroot/buildchroot.bb
>> index 520daf9..1eca035 100644
>> --- a/meta/recipes-devtools/buildchroot/buildchroot.bb
>> +++ b/meta/recipes-devtools/buildchroot/buildchroot.bb
>> @@ -66,7 +66,7 @@ do_build() {
>>              "${WORKDIR}/multistrap.conf.in" >
>> "${WORKDIR}/multistrap.conf"
>>         sudo mount --bind ${DEPLOY_DIR_APT}/${DISTRO}
>> ${BUILDCHROOT_DIR}/isar-apt
>> -    sudo mount -t devtmpfs -o mode=0755,nosuid devtmpfs
>> ${BUILDCHROOT_DIR}/dev
>> +    sudo mount --bind -o ro /dev ${BUILDCHROOT_DIR}/dev
>>       sudo mount -t proc none ${BUILDCHROOT_DIR}/proc
>>         # Create root filesystem
>>
> 


-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 1/8] Mount devtmpfs read-only into chroot
  2018-02-20  7:03     ` Jan Kiszka
@ 2018-02-20  8:18       ` Claudius Heine
  0 siblings, 0 replies; 28+ messages in thread
From: Claudius Heine @ 2018-02-20  8:18 UTC (permalink / raw)
  To: [ext] Jan Kiszka, Alexander Smirnov, isar-users

Hi,

On 02/20/2018 08:03 AM, [ext] Jan Kiszka wrote:
> On 2018-02-20 07:38, Alexander Smirnov wrote:
>> On 02/16/2018 11:52 AM, Jan Kiszka wrote:
>>> From: Jan Kiszka <jan.kiszka@siemens.com>
>>>
>>> It's too easy to destroy the content of devtmpfs, which is shared with
>>> the host (including privileged container setups), by calling rm -rf on
>>> an output dir that still has devtmpfs mounted.
>>>
>>
>> Just tested this:
>>
>> builder@zbook:~/isar/build$ mkdir aaa
>> builder@zbook:~/isar/build$ mount -t devtmpfs -o mode=0755,nosuid,ro
>> devtmpfs aaa/
> 
> I've tried that path first, but it turns all mount points of devtmpfs
> into read-only mode - not a good idea...
> 
> I think we need to go back to mknod for the rootfs.

If we do that, can we put that into a central function somewhere?

Cheers,
Claudius

-- 
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

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 0/8] Assorted patches
  2018-02-16  8:52 [PATCH 0/8] Assorted patches Jan Kiszka
                   ` (8 preceding siblings ...)
  2018-02-19 13:56 ` [PATCH 0/8] Assorted patches Alexander Smirnov
@ 2018-02-20 11:19 ` Alexander Smirnov
  9 siblings, 0 replies; 28+ messages in thread
From: Alexander Smirnov @ 2018-02-20 11:19 UTC (permalink / raw)
  To: Jan Kiszka, isar-users

On 02/16/2018 11:52 AM, Jan Kiszka wrote:
> Flush of my remaining queue:
>   - improvements for mount and umount
>   - arm64 target
>   - copyright and credit enhancements
> 

Applied to next except patch #1.

Alex

^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2018-02-20 11:19 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-16  8:52 [PATCH 0/8] Assorted patches Jan Kiszka
2018-02-16  8:52 ` [PATCH 1/8] Mount devtmpfs read-only into chroot Jan Kiszka
2018-02-19 10:09   ` Consolidate mounting in tasks (was Re: [PATCH 1/8] Mount devtmpfs read-only into chroot) Claudius Heine
2018-02-20  6:38   ` [PATCH 1/8] Mount devtmpfs read-only into chroot Alexander Smirnov
2018-02-20  7:02     ` Alexander Smirnov
2018-02-20  7:03     ` Jan Kiszka
2018-02-20  8:18       ` Claudius Heine
2018-02-16  8:52 ` [PATCH 2/8] isar-events: Wait for failing umounts Jan Kiszka
2018-02-19  9:45   ` Alexander Smirnov
2018-02-19  9:48     ` Jan Kiszka
2018-02-19 10:03       ` Alexander Smirnov
2018-02-19 11:10         ` Jan Kiszka
2018-02-16  8:52 ` [PATCH 3/8] isar-events: Do not match on distro and arch Jan Kiszka
2018-02-19  9:54   ` Alexander Smirnov
2018-02-19 11:08     ` Jan Kiszka
2018-02-16  8:52 ` [PATCH 4/8] Add Debian arm64 support to the core Jan Kiszka
2018-02-16  8:52 ` [PATCH 5/8] Add qemuarm64-stretch multiconfig Jan Kiszka
2018-02-19 10:23   ` Alexander Smirnov
2018-02-19 11:15     ` Jan Kiszka
2018-02-19 12:19       ` Alexander Smirnov
2018-02-19 12:36         ` Jan Kiszka
2018-02-16  8:52 ` [PATCH 6/8] Add qemuarm64-stretch to CI Jan Kiszka
2018-02-16  8:52 ` [PATCH 7/8] build-kernel.sh: Add copyright header Jan Kiszka
2018-02-16  8:52 ` [PATCH 8/8] Enhance credits Jan Kiszka
2018-02-19 13:56 ` [PATCH 0/8] Assorted patches Alexander Smirnov
2018-02-19 14:08   ` Jan Kiszka
2018-02-19 14:19     ` Alexander Smirnov
2018-02-20 11:19 ` Alexander Smirnov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox