All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev
@ 2019-02-12  5:47 Khem Raj
  2019-02-12  5:47 ` [PATCH 2/3] libc-package.bbclass: Use install utility to create directories with right permissions Khem Raj
                   ` (3 more replies)
  0 siblings, 4 replies; 12+ messages in thread
From: Khem Raj @ 2019-02-12  5:47 UTC (permalink / raw)
  To: openembedded-core

PN-dev is empty and causes dependency loops during SDK build

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-core/busybox/busybox.inc | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-core/busybox/busybox.inc b/meta/recipes-core/busybox/busybox.inc
index 24c15e4aee..2444afabd5 100644
--- a/meta/recipes-core/busybox/busybox.inc
+++ b/meta/recipes-core/busybox/busybox.inc
@@ -21,6 +21,7 @@ export EXTRA_LDFLAGS = "${LDFLAGS}"
 EXTRA_OEMAKE = "CC='${CC}' LD='${CCLD}' V=1 ARCH=${TARGET_ARCH} CROSS_COMPILE=${TARGET_PREFIX} SKIP_STRIP=y HOSTCC='${BUILD_CC}' HOSTCPP='${BUILD_CPP}'"
 
 PACKAGES =+ "${PN}-httpd ${PN}-udhcpd ${PN}-udhcpc ${PN}-syslog ${PN}-mdev ${PN}-hwclock"
+RDEPENDS_${PN}-dev = ""
 
 FILES_${PN}-httpd = "${sysconfdir}/init.d/busybox-httpd /srv/www"
 FILES_${PN}-syslog = "${sysconfdir}/init.d/syslog* ${sysconfdir}/syslog-startup.conf* ${sysconfdir}/syslog.conf* ${systemd_unitdir}/system/syslog.service ${sysconfdir}/default/busybox-syslog"
-- 
2.20.1



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

* [PATCH 2/3] libc-package.bbclass: Use install utility to create directories with right permissions
  2019-02-12  5:47 [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev Khem Raj
@ 2019-02-12  5:47 ` Khem Raj
  2019-02-12  5:47 ` [PATCH v3 3/3] image_types.bbclass: Set memory usage limit and CPU threads for xz Khem Raj
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 12+ messages in thread
From: Khem Raj @ 2019-02-12  5:47 UTC (permalink / raw)
  To: openembedded-core

Could fix issues where dirs with wrong permission is created with mkdir -p

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/classes/libc-package.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes/libc-package.bbclass b/meta/classes/libc-package.bbclass
index 0b4c666a74..34025635ce 100644
--- a/meta/classes/libc-package.bbclass
+++ b/meta/classes/libc-package.bbclass
@@ -61,7 +61,7 @@ LOCALETREESRC ?= "${PKGD}"
 do_prep_locale_tree() {
 	treedir=${WORKDIR}/locale-tree
 	rm -rf $treedir
-	mkdir -p $treedir/${base_bindir} $treedir/${base_libdir} $treedir/${datadir} $treedir/${localedir}
+	install -d $treedir/${base_bindir} $treedir/${base_libdir} $treedir/${datadir} $treedir/${localedir}
 	tar -cf - -C ${LOCALETREESRC}${datadir} -p i18n | tar -xf - -C $treedir/${datadir}
 	# unzip to avoid parsing errors
 	for i in $treedir/${datadir}/i18n/charmaps/*gz; do 
-- 
2.20.1



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

* [PATCH v3 3/3] image_types.bbclass: Set memory usage limit and CPU threads for xz
  2019-02-12  5:47 [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev Khem Raj
  2019-02-12  5:47 ` [PATCH 2/3] libc-package.bbclass: Use install utility to create directories with right permissions Khem Raj
@ 2019-02-12  5:47 ` Khem Raj
  2019-02-15 13:44   ` Otavio Salvador
  2019-02-12 15:58 ` [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev Burton, Ross
  2019-02-12 17:26 ` Richard Purdie
  3 siblings, 1 reply; 12+ messages in thread
From: Khem Raj @ 2019-02-12  5:47 UTC (permalink / raw)
  To: openembedded-core

when building with opkg backend and huge packages e.g. chromium/llvm all
going in parallel, memory pressure causes xz to catapult with

do_package_write_ipk: Failed to create package, opkg-build failed with: xz: (stdin): Cannot allocate memory

since there are many tasks going on in parallel, xz adds to memory pressure
and it wants it all, put an upper limit for memory xz can use

We add a variable XZ_MAXRAM with 30% of RAM limit and can be customized
if builders have more memory one can set it like

XZ_DEFAULTS = "-M 0 -T 0"

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
V2: Consider all locations of xz use
v3: Use ${@oe.utils.cpu_count()} in place of BB_NUMBER_THREADS

 meta/classes/image_types.bbclass       | 9 ++++-----
 meta/classes/package_ipk.bbclass       | 2 +-
 meta/classes/populate_sdk_base.bbclass | 2 +-
 meta/conf/bitbake.conf                 | 3 +++
 4 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass
index ddca5b624e..f9890581b3 100644
--- a/meta/classes/image_types.bbclass
+++ b/meta/classes/image_types.bbclass
@@ -56,7 +56,6 @@ def imagetypes_getdepends(d):

 XZ_COMPRESSION_LEVEL ?= "-3"
 XZ_INTEGRITY_CHECK ?= "crc32"
-XZ_THREADS ?= "-T 0"

 ZIP_COMPRESSION_LEVEL ?= "-9"

@@ -152,12 +151,12 @@ UBI_VOLNAME ?= "${MACHINE}-rootfs"
 multiubi_mkfs() {
 	local mkubifs_args="$1"
 	local ubinize_args="$2"
-
+
         # Added prompt error message for ubi and ubifs image creation.
         if [ -z "$mkubifs_args" ] || [ -z "$ubinize_args" ]; then
             bbfatal "MKUBIFS_ARGS and UBINIZE_ARGS have to be set, see http://www.linux-mtd.infradead.org/faq/ubifs.html for details"
         fi
-
+
 	if [ -z "$3" ]; then
 		local vname=""
 	else
@@ -284,7 +283,7 @@ CONVERSIONTYPES = "gz bz2 lzma xz lz4 lzo zip sum md5sum sha1sum sha224sum sha25
 CONVERSION_CMD_lzma = "lzma -k -f -7 ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
 CONVERSION_CMD_gz = "pigz -f -9 -n -c ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.gz"
 CONVERSION_CMD_bz2 = "pbzip2 -f -k ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
-CONVERSION_CMD_xz = "xz -f -k -c ${XZ_COMPRESSION_LEVEL} ${XZ_THREADS} --check=${XZ_INTEGRITY_CHECK} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.xz"
+CONVERSION_CMD_xz = "xz -f -k -c ${XZ_COMPRESSION_LEVEL} ${XZ_DEFAULTS} --check=${XZ_INTEGRITY_CHECK} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.xz"
 CONVERSION_CMD_lz4 = "lz4 -9 -z -l ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.lz4"
 CONVERSION_CMD_lzo = "lzop -9 ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
 CONVERSION_CMD_zip = "zip ${ZIP_COMPRESSION_LEVEL} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.zip ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
@@ -319,7 +318,7 @@ CONVERSION_DEPENDS_base64 = "coreutils-native"
 RUNNABLE_IMAGE_TYPES ?= "ext2 ext3 ext4"
 RUNNABLE_MACHINE_PATTERNS ?= "qemu"

-DEPLOYABLE_IMAGE_TYPES ?= "hddimg iso"
+DEPLOYABLE_IMAGE_TYPES ?= "hddimg iso"

 # The IMAGE_TYPES_MASKED variable will be used to mask out from the IMAGE_FSTYPES,
 # images that will not be built at do_rootfs time: vmdk, vdi, qcow2, hdddirect, hddimg, iso, etc.
diff --git a/meta/classes/package_ipk.bbclass b/meta/classes/package_ipk.bbclass
index 508b7dcaff..d1b317b42b 100644
--- a/meta/classes/package_ipk.bbclass
+++ b/meta/classes/package_ipk.bbclass
@@ -8,7 +8,7 @@ IPKGCONF_SDK =  "${WORKDIR}/opkg-sdk.conf"
 PKGWRITEDIRIPK = "${WORKDIR}/deploy-ipks"

 # Program to be used to build opkg packages
-OPKGBUILDCMD ??= 'opkg-build -Z xz -a "--threads 0"'
+OPKGBUILDCMD ??= 'opkg-build -Z xz -a "${XZ_DEFAULTS}"'

 OPKG_ARGS += "--force_postinstall --prefer-arch-to-version"
 OPKG_ARGS += "${@['', '--no-install-recommends'][d.getVar("NO_RECOMMENDATIONS") == "1"]}"
diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
index 80fa443e4c..ebc30d39b3 100644
--- a/meta/classes/populate_sdk_base.bbclass
+++ b/meta/classes/populate_sdk_base.bbclass
@@ -226,7 +226,7 @@ fakeroot tar_sdk() {
 	# Package it up
 	mkdir -p ${SDKDEPLOYDIR}
 	cd ${SDK_OUTPUT}/${SDKPATH}
-	tar ${SDKTAROPTS} -cf - . | xz -T 0 > ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.tar.xz
+	tar ${SDKTAROPTS} -cf - . | xz ${XZ_DEFAULTS} > ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.tar.xz
 }

 TOOLCHAIN_SHAR_EXT_TMPL ?= "${COREBASE}/meta/files/toolchain-shar-extract.sh"
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index 21fd93e58d..6e063dc14d 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -791,6 +791,9 @@ BB_NUMBER_THREADS ?= "${@oe.utils.cpu_count()}"
 # Default to setting automatically based on cpu count
 PARALLEL_MAKE ?= "-j ${@oe.utils.cpu_count()}"

+# Default parallelism and resource usage for xz
+XZ_DEFAULTS ?= "--memlimit=50% --threads=${@oe.utils.cpu_count()}"
+
 ##################################################################
 # Magic Cookie for SANITY CHECK
 ##################################################################
--
2.20.1


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

* Re: [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev
  2019-02-12  5:47 [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev Khem Raj
  2019-02-12  5:47 ` [PATCH 2/3] libc-package.bbclass: Use install utility to create directories with right permissions Khem Raj
  2019-02-12  5:47 ` [PATCH v3 3/3] image_types.bbclass: Set memory usage limit and CPU threads for xz Khem Raj
@ 2019-02-12 15:58 ` Burton, Ross
  2019-02-12 19:04   ` Khem Raj
  2019-02-12 17:26 ` Richard Purdie
  3 siblings, 1 reply; 12+ messages in thread
From: Burton, Ross @ 2019-02-12 15:58 UTC (permalink / raw)
  To: Khem Raj; +Cc: OE-core

Would a neater solution be to PACKAGES_remove = ${PN}-dev?

Ross

On Tue, 12 Feb 2019 at 05:48, Khem Raj <raj.khem@gmail.com> wrote:
>
> PN-dev is empty and causes dependency loops during SDK build
>
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  meta/recipes-core/busybox/busybox.inc | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/meta/recipes-core/busybox/busybox.inc b/meta/recipes-core/busybox/busybox.inc
> index 24c15e4aee..2444afabd5 100644
> --- a/meta/recipes-core/busybox/busybox.inc
> +++ b/meta/recipes-core/busybox/busybox.inc
> @@ -21,6 +21,7 @@ export EXTRA_LDFLAGS = "${LDFLAGS}"
>  EXTRA_OEMAKE = "CC='${CC}' LD='${CCLD}' V=1 ARCH=${TARGET_ARCH} CROSS_COMPILE=${TARGET_PREFIX} SKIP_STRIP=y HOSTCC='${BUILD_CC}' HOSTCPP='${BUILD_CPP}'"
>
>  PACKAGES =+ "${PN}-httpd ${PN}-udhcpd ${PN}-udhcpc ${PN}-syslog ${PN}-mdev ${PN}-hwclock"
> +RDEPENDS_${PN}-dev = ""
>
>  FILES_${PN}-httpd = "${sysconfdir}/init.d/busybox-httpd /srv/www"
>  FILES_${PN}-syslog = "${sysconfdir}/init.d/syslog* ${sysconfdir}/syslog-startup.conf* ${sysconfdir}/syslog.conf* ${systemd_unitdir}/system/syslog.service ${sysconfdir}/default/busybox-syslog"
> --
> 2.20.1
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


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

* Re: [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev
  2019-02-12  5:47 [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev Khem Raj
                   ` (2 preceding siblings ...)
  2019-02-12 15:58 ` [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev Burton, Ross
@ 2019-02-12 17:26 ` Richard Purdie
  2019-02-12 18:59   ` Khem Raj
  3 siblings, 1 reply; 12+ messages in thread
From: Richard Purdie @ 2019-02-12 17:26 UTC (permalink / raw)
  To: Khem Raj, openembedded-core

On Mon, 2019-02-11 at 21:47 -0800, Khem Raj wrote:
> PN-dev is empty and causes dependency loops during SDK build
> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  meta/recipes-core/busybox/busybox.inc | 1 +
>  1 file changed, 1 insertion(+)

I commented on this elsewhere but for completeness, this is a
workaround, not a fix. The problem is that the PROVIDES in target-sdk-
provides-dummy.bb are clearly missing something.

This means that the SDK tries to exclude "/bin/sh" and similar target
dependencies from the SDK rootfs which leads to excluding busybox and
then fails to do so. If busybox is installed, busybox-dev gets pulled
in and the problems start.

The real fix is to figure out the missing target-sdk-provides-dummy
provides.

If someone could share a way to reproduce the failure that would be a
good start.

Cheers,

Richard



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

* Re: [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev
  2019-02-12 17:26 ` Richard Purdie
@ 2019-02-12 18:59   ` Khem Raj
  0 siblings, 0 replies; 12+ messages in thread
From: Khem Raj @ 2019-02-12 18:59 UTC (permalink / raw)
  To: Richard Purdie; +Cc: Patches and discussions about the oe-core layer

On Tue, Feb 12, 2019 at 9:26 AM Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Mon, 2019-02-11 at 21:47 -0800, Khem Raj wrote:
> > PN-dev is empty and causes dependency loops during SDK build
> >
> > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > ---
> >  meta/recipes-core/busybox/busybox.inc | 1 +
> >  1 file changed, 1 insertion(+)
>
> I commented on this elsewhere but for completeness, this is a
> workaround, not a fix. The problem is that the PROVIDES in target-sdk-
> provides-dummy.bb are clearly missing something.
>
> This means that the SDK tries to exclude "/bin/sh" and similar target
> dependencies from the SDK rootfs which leads to excluding busybox and
> then fails to do so. If busybox is installed, busybox-dev gets pulled
> in and the problems start.
>
> The real fix is to figure out the missing target-sdk-provides-dummy
> provides.
>
> If someone could share a way to reproduce the failure that would be a
> good start.
>

Use oe-core+bitbake ( nodisro ) settings and then
bitbake -cpopulate_sdk core-image-minimal

and you see

WARNING: core-image-minimal-1.0-r0 do_populate_sdk: Unable to install
packages. Command
'/mnt/a/yoe/build/tmp/work/sama5d27_som1_ek_sd-yoe-linux-musleabi/core-image-minimal/1.0-r0/recipe-sysroot-native/usr/bin/opkg
--volatile-cache -f
/mnt/a/yoe/build/tmp/work/sama5d27_som1_ek_sd-yoe-linux-musleabi/core-image-minimal/1.0-r0/opkg.conf
-t /mnt/a/yoe/build/tmp/work/sama5d27_som1_ek_sd-yoe-linux-musleabi/core-image-minimal/1.0-r0/temp/ipktemp/
-o /mnt/a/yoe/build/tmp/work/sama5d27_som1_ek_sd-yoe-linux-musleabi/core-image-minimal/1.0-r0/sdk/image/opt/yoe-musl-sysvinit-wayland/2.6/sysroots/cortexa5t2hf-neon-vfpv4-yoe-linux-musleabi
 --force_postinstall --prefer-arch-to-version   install libgcc-s-src
eudev-dbg update-rc.d-dev libcxx-dbg base-passwd-dev
sysvinit-inittab-dbg libz-dev modutils-initscripts-dbg initscripts-dev
opkg-utils-dbg musl-utils-dev libgcc-s-dbg init-ifupdown-dbg
packagegroup-core-standalone-sdk-target-dbg sysvinit-inittab-dev
busybox-dev gcc-runtime-dbg netbase-dbg kmod-dbg base-passwd-src
base-passwd-dbg initscripts-dbg eudev-dev sysvinit-dbg
run-postinsts-dbg target-sdk-provides-dummy-dbg base-files-dbg
musl-utils-dbg libz-dbg base-files-dev
packagegroup-core-standalone-sdk-target-dev musl-utils-src
compiler-rt-dbg dt-overlay-at91-dev busybox-dbg util-linux-dbg
kmod-dev util-linux-dev dt-overlay-at91-dbg packagegroup-core-boot-dev
sysvinit-src target-sdk-provides-dummy-dev sysvinit-dev
init-ifupdown-dev packagegroup-core-boot-dbg update-rc.d-dbg musl-src
modutils-initscripts-dev netbase-dev run-postinsts-dev' returned 1:
Collected errors:
 * Solver encountered 1 problem(s):
 * Problem 1/1:
 *   - package busybox-dev-1.29.3-r0.4.cortexa5t2hf-neon-vfpv4
requires busybox = 1.29.3-r0.4, but none of the providers can be
installed
 *
 * Solution 1:
 *   - allow deinstallation of
target-sdk-provides-dummy-1.0-r0.3.sdk-provides-dummy-target

 *   - do not ask to install a package providing target-sdk-provides-dummy-dev

 * Solution 2:
 *   - do not ask to install a package providing busybox-dev


> Cheers,
>
> Richard
>


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

* Re: [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev
  2019-02-12 15:58 ` [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev Burton, Ross
@ 2019-02-12 19:04   ` Khem Raj
  2019-02-15 15:01     ` Khem Raj
  0 siblings, 1 reply; 12+ messages in thread
From: Khem Raj @ 2019-02-12 19:04 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core

On Tue, Feb 12, 2019 at 7:59 AM Burton, Ross <ross.burton@intel.com> wrote:
>
> Would a neater solution be to PACKAGES_remove = ${PN}-dev?
>

That was first thing I tried too. It does not fix the problem

> Ross
>
> On Tue, 12 Feb 2019 at 05:48, Khem Raj <raj.khem@gmail.com> wrote:
> >
> > PN-dev is empty and causes dependency loops during SDK build
> >
> > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > ---
> >  meta/recipes-core/busybox/busybox.inc | 1 +
> >  1 file changed, 1 insertion(+)
> >
> > diff --git a/meta/recipes-core/busybox/busybox.inc b/meta/recipes-core/busybox/busybox.inc
> > index 24c15e4aee..2444afabd5 100644
> > --- a/meta/recipes-core/busybox/busybox.inc
> > +++ b/meta/recipes-core/busybox/busybox.inc
> > @@ -21,6 +21,7 @@ export EXTRA_LDFLAGS = "${LDFLAGS}"
> >  EXTRA_OEMAKE = "CC='${CC}' LD='${CCLD}' V=1 ARCH=${TARGET_ARCH} CROSS_COMPILE=${TARGET_PREFIX} SKIP_STRIP=y HOSTCC='${BUILD_CC}' HOSTCPP='${BUILD_CPP}'"
> >
> >  PACKAGES =+ "${PN}-httpd ${PN}-udhcpd ${PN}-udhcpc ${PN}-syslog ${PN}-mdev ${PN}-hwclock"
> > +RDEPENDS_${PN}-dev = ""
> >
> >  FILES_${PN}-httpd = "${sysconfdir}/init.d/busybox-httpd /srv/www"
> >  FILES_${PN}-syslog = "${sysconfdir}/init.d/syslog* ${sysconfdir}/syslog-startup.conf* ${sysconfdir}/syslog.conf* ${systemd_unitdir}/system/syslog.service ${sysconfdir}/default/busybox-syslog"
> > --
> > 2.20.1
> >
> > --
> > _______________________________________________
> > Openembedded-core mailing list
> > Openembedded-core@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-core


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

* Re: [PATCH v3 3/3] image_types.bbclass: Set memory usage limit and CPU threads for xz
  2019-02-12  5:47 ` [PATCH v3 3/3] image_types.bbclass: Set memory usage limit and CPU threads for xz Khem Raj
@ 2019-02-15 13:44   ` Otavio Salvador
  2019-02-15 19:58     ` Khem Raj
  0 siblings, 1 reply; 12+ messages in thread
From: Otavio Salvador @ 2019-02-15 13:44 UTC (permalink / raw)
  To: Khem Raj; +Cc: Patches and discussions about the oe-core layer

On Tue, Feb 12, 2019 at 3:48 AM Khem Raj <raj.khem@gmail.com> wrote:
>
> when building with opkg backend and huge packages e.g. chromium/llvm all
> going in parallel, memory pressure causes xz to catapult with
>
> do_package_write_ipk: Failed to create package, opkg-build failed with: xz: (stdin): Cannot allocate memory
>
> since there are many tasks going on in parallel, xz adds to memory pressure
> and it wants it all, put an upper limit for memory xz can use
>
> We add a variable XZ_MAXRAM with 30% of RAM limit and can be customized
> if builders have more memory one can set it like

The commit log refers to the wrong variable name, it seems.


-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9 9981-7854          Mobile: +1 (347) 903-9750


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

* Re: [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev
  2019-02-12 19:04   ` Khem Raj
@ 2019-02-15 15:01     ` Khem Raj
  2019-02-15 16:04       ` Richard Purdie
  0 siblings, 1 reply; 12+ messages in thread
From: Khem Raj @ 2019-02-15 15:01 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core

Richard/Ross

Are you able to reproduce the problem and have
alternative solution?

On Tue, Feb 12, 2019 at 11:04 AM Khem Raj <raj.khem@gmail.com> wrote:
>
> On Tue, Feb 12, 2019 at 7:59 AM Burton, Ross <ross.burton@intel.com> wrote:
> >
> > Would a neater solution be to PACKAGES_remove = ${PN}-dev?
> >
>
> That was first thing I tried too. It does not fix the problem
>
> > Ross
> >
> > On Tue, 12 Feb 2019 at 05:48, Khem Raj <raj.khem@gmail.com> wrote:
> > >
> > > PN-dev is empty and causes dependency loops during SDK build
> > >
> > > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > > ---
> > >  meta/recipes-core/busybox/busybox.inc | 1 +
> > >  1 file changed, 1 insertion(+)
> > >
> > > diff --git a/meta/recipes-core/busybox/busybox.inc b/meta/recipes-core/busybox/busybox.inc
> > > index 24c15e4aee..2444afabd5 100644
> > > --- a/meta/recipes-core/busybox/busybox.inc
> > > +++ b/meta/recipes-core/busybox/busybox.inc
> > > @@ -21,6 +21,7 @@ export EXTRA_LDFLAGS = "${LDFLAGS}"
> > >  EXTRA_OEMAKE = "CC='${CC}' LD='${CCLD}' V=1 ARCH=${TARGET_ARCH} CROSS_COMPILE=${TARGET_PREFIX} SKIP_STRIP=y HOSTCC='${BUILD_CC}' HOSTCPP='${BUILD_CPP}'"
> > >
> > >  PACKAGES =+ "${PN}-httpd ${PN}-udhcpd ${PN}-udhcpc ${PN}-syslog ${PN}-mdev ${PN}-hwclock"
> > > +RDEPENDS_${PN}-dev = ""
> > >
> > >  FILES_${PN}-httpd = "${sysconfdir}/init.d/busybox-httpd /srv/www"
> > >  FILES_${PN}-syslog = "${sysconfdir}/init.d/syslog* ${sysconfdir}/syslog-startup.conf* ${sysconfdir}/syslog.conf* ${systemd_unitdir}/system/syslog.service ${sysconfdir}/default/busybox-syslog"
> > > --
> > > 2.20.1
> > >
> > > --
> > > _______________________________________________
> > > Openembedded-core mailing list
> > > Openembedded-core@lists.openembedded.org
> > > http://lists.openembedded.org/mailman/listinfo/openembedded-core


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

* Re: [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev
  2019-02-15 15:01     ` Khem Raj
@ 2019-02-15 16:04       ` Richard Purdie
  2019-02-15 19:43         ` Khem Raj
  0 siblings, 1 reply; 12+ messages in thread
From: Richard Purdie @ 2019-02-15 16:04 UTC (permalink / raw)
  To: Khem Raj, Burton, Ross; +Cc: OE-core

On Fri, 2019-02-15 at 07:01 -0800, Khem Raj wrote:
> Richard/Ross
> 
> Are you able to reproduce the problem and have
> alternative solution?

Your reproduction steps needed "use ipk", then yes, I could. I've sent
out a patch which addresses the problem.

Cheers,

Richard

	



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

* Re: [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev
  2019-02-15 16:04       ` Richard Purdie
@ 2019-02-15 19:43         ` Khem Raj
  0 siblings, 0 replies; 12+ messages in thread
From: Khem Raj @ 2019-02-15 19:43 UTC (permalink / raw)
  To: Richard Purdie; +Cc: OE-core

On Fri, Feb 15, 2019 at 8:04 AM Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Fri, 2019-02-15 at 07:01 -0800, Khem Raj wrote:
> > Richard/Ross
> >
> > Are you able to reproduce the problem and have
> > alternative solution?
>
> Your reproduction steps needed "use ipk", then yes, I could. I've sent
> out a patch which addresses the problem.

Thanks yes ipk was implied with oe-core+bitbake :)
I will test https://patchwork.openembedded.org/patch/158751/
and see if my SDK is good with out busybox hack

>
> Cheers,
>
> Richard
>
>
>


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

* Re: [PATCH v3 3/3] image_types.bbclass: Set memory usage limit and CPU threads for xz
  2019-02-15 13:44   ` Otavio Salvador
@ 2019-02-15 19:58     ` Khem Raj
  0 siblings, 0 replies; 12+ messages in thread
From: Khem Raj @ 2019-02-15 19:58 UTC (permalink / raw)
  To: Otavio Salvador; +Cc: Patches and discussions about the oe-core layer

On Fri, Feb 15, 2019 at 5:44 AM Otavio Salvador
<otavio.salvador@ossystems.com.br> wrote:
>
> On Tue, Feb 12, 2019 at 3:48 AM Khem Raj <raj.khem@gmail.com> wrote:
> >
> > when building with opkg backend and huge packages e.g. chromium/llvm all
> > going in parallel, memory pressure causes xz to catapult with
> >
> > do_package_write_ipk: Failed to create package, opkg-build failed with: xz: (stdin): Cannot allocate memory
> >
> > since there are many tasks going on in parallel, xz adds to memory pressure
> > and it wants it all, put an upper limit for memory xz can use
> >
> > We add a variable XZ_MAXRAM with 30% of RAM limit and can be customized
> > if builders have more memory one can set it like
>
> The commit log refers to the wrong variable name, it seems.
>

I think thats a good point. but we should submit right names for documentation

>
> --
> Otavio Salvador                             O.S. Systems
> http://www.ossystems.com.br        http://code.ossystems.com.br
> Mobile: +55 (53) 9 9981-7854          Mobile: +1 (347) 903-9750


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

end of thread, other threads:[~2019-02-15 19:58 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-12  5:47 [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev Khem Raj
2019-02-12  5:47 ` [PATCH 2/3] libc-package.bbclass: Use install utility to create directories with right permissions Khem Raj
2019-02-12  5:47 ` [PATCH v3 3/3] image_types.bbclass: Set memory usage limit and CPU threads for xz Khem Raj
2019-02-15 13:44   ` Otavio Salvador
2019-02-15 19:58     ` Khem Raj
2019-02-12 15:58 ` [PATCH 1/3] busybox: Remove PN from rdeps of PN-dev Burton, Ross
2019-02-12 19:04   ` Khem Raj
2019-02-15 15:01     ` Khem Raj
2019-02-15 16:04       ` Richard Purdie
2019-02-15 19:43         ` Khem Raj
2019-02-12 17:26 ` Richard Purdie
2019-02-12 18:59   ` Khem Raj

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.