All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] bash: Replace uninative loader path in ptest
@ 2019-05-31 16:57 Joshua Watt
  2019-06-01  6:47 ` Richard Purdie
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Joshua Watt @ 2019-05-31 16:57 UTC (permalink / raw)
  To: openembedded-core

The Makefile used for bash-ptest can pick up the path to the uninative
loader through BUILD_LDFLAGS. This includes the full path to the
uninative loader, which is not reproducible. Replace it with the target
loader in the event that these programs need to be compiled for bash
tests.

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
---
 meta/recipes-extended/bash/bash.inc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-extended/bash/bash.inc b/meta/recipes-extended/bash/bash.inc
index 4b3692c6139..55f2b7704e6 100644
--- a/meta/recipes-extended/bash/bash.inc
+++ b/meta/recipes-extended/bash/bash.inc
@@ -4,7 +4,7 @@ SECTION = "base/shell"
 
 DEPENDS = "ncurses bison-native virtual/libiconv"
 
-inherit autotools gettext texinfo update-alternatives ptest
+inherit autotools gettext texinfo update-alternatives ptest linuxloader
 
 EXTRA_AUTORECONF += "--exclude=autoheader --exclude=aclocal"
 EXTRA_OECONF = "--enable-job-control --without-bash-malloc bash_cv_wexitstatus_offset=8"
@@ -70,6 +70,7 @@ do_install_ptest () {
 	    -e 's|${DEBUG_PREFIX_MAP}||g' \
 	    -e "s,${S},,g" -e "s,${B},,g" -e "s,${STAGING_DIR_NATIVE},,g" \
 	    -e 's:${HOSTTOOLS_DIR}/::g' \
+	    -e 's:${UNINATIVE_LOADER}:${@get_linuxloader(d)}:g' \
 	     ${D}${PTEST_PATH}/Makefile
 }
 
-- 
2.21.0



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

* Re: [PATCH] bash: Replace uninative loader path in ptest
  2019-05-31 16:57 [PATCH] bash: Replace uninative loader path in ptest Joshua Watt
@ 2019-06-01  6:47 ` Richard Purdie
  2019-06-01 15:11   ` Joshua Watt
  2019-06-03 15:27 ` [PATCH v2] " Joshua Watt
  2019-06-08  4:09 ` ✗ patchtest: failure for bash: Replace uninative loader path in ptest (rev3) Patchwork
  2 siblings, 1 reply; 7+ messages in thread
From: Richard Purdie @ 2019-06-01  6:47 UTC (permalink / raw)
  To: Joshua Watt, openembedded-core

On Fri, 2019-05-31 at 11:57 -0500, Joshua Watt wrote:
> The Makefile used for bash-ptest can pick up the path to the uninative
> loader through BUILD_LDFLAGS. This includes the full path to the
> uninative loader, which is not reproducible. Replace it with the target
> loader in the event that these programs need to be compiled for bash
> tests.
> 
> Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
> ---
>  meta/recipes-extended/bash/bash.inc | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/meta/recipes-extended/bash/bash.inc b/meta/recipes-extended/bash/bash.inc
> index 4b3692c6139..55f2b7704e6 100644
> --- a/meta/recipes-extended/bash/bash.inc
> +++ b/meta/recipes-extended/bash/bash.inc
> @@ -4,7 +4,7 @@ SECTION = "base/shell"
>  
>  DEPENDS = "ncurses bison-native virtual/libiconv"
>  
> -inherit autotools gettext texinfo update-alternatives ptest
> +inherit autotools gettext texinfo update-alternatives ptest linuxloader
>  
>  EXTRA_AUTORECONF += "--exclude=autoheader --exclude=aclocal"
>  EXTRA_OECONF = "--enable-job-control --without-bash-malloc bash_cv_wexitstatus_offset=8"
> @@ -70,6 +70,7 @@ do_install_ptest () {
>  	    -e 's|${DEBUG_PREFIX_MAP}||g' \
>  	    -e "s,${S},,g" -e "s,${B},,g" -e "s,${STAGING_DIR_NATIVE},,g" \
>  	    -e 's:${HOSTTOOLS_DIR}/::g' \
> +	    -e 's:${UNINATIVE_LOADER}:${@get_linuxloader(d)}:g' \
>  	     ${D}${PTEST_PATH}/Makefile
>  }

This change causes:

https://autobuilder.yoctoproject.org/typhoon/#/builders/56/builds/490

which you can reproduce with:

oe-selftest -r sstatetests.SStateTests.test_sstate_32_64_same_hash

which with some digging you can come to:

$ bitbake-diffsigs tmp-sstatesamehash*/stamps/*-poky-linux/bash/*.do_install_ptest_base.sigdata.*
NOTE: Starting bitbake server...
basehash changed from d92c4da62ccda424103c7615dffc5f747da83bf64a46be63acc11633480a6bf6 to a26822f4999a6bdbe8e8e60db91c1400e2b4011b66d98a9ec57a53d6fc70dc88
Variable UNINATIVE_LOADER value changed:
@@ -1,4 +1,4 @@
 ${UNINATIVE_STAGING_DIR}-uninative/${BUILD_ARCH}-linux/lib/${@bb.utils.contains('BUILD_ARCH', 'x86_64', 'ld-linux-x86-64.so.2', '', d)}${@bb.utils.contains('BUILD_ARCH', 'i686', 'ld-linux.so.2', '', d)}${@bb.utils.contains('BUILD_ARCH', 'aarch64', 'ld-linux-aarch64.so.1', '', d)}
 BUILD_ARCH{aarch64} = Unset
-BUILD_ARCH{i686} = Set
-BUILD_ARCH{x86_64} = Unset
+BUILD_ARCH{i686} = Unset
+BUILD_ARCH{x86_64} = Set

which makes the problem fairly obvious when you see it put that way...

Cheers,

Richard





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

* Re: [PATCH] bash: Replace uninative loader path in ptest
  2019-06-01  6:47 ` Richard Purdie
@ 2019-06-01 15:11   ` Joshua Watt
  0 siblings, 0 replies; 7+ messages in thread
From: Joshua Watt @ 2019-06-01 15:11 UTC (permalink / raw)
  To: Richard Purdie; +Cc: OE-core

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

On Sat, Jun 1, 2019, 1:47 AM Richard Purdie <
richard.purdie@linuxfoundation.org> wrote:

> On Fri, 2019-05-31 at 11:57 -0500, Joshua Watt wrote:
> > The Makefile used for bash-ptest can pick up the path to the uninative
> > loader through BUILD_LDFLAGS. This includes the full path to the
> > uninative loader, which is not reproducible. Replace it with the target
> > loader in the event that these programs need to be compiled for bash
> > tests.
> >
> > Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
> > ---
> >  meta/recipes-extended/bash/bash.inc | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/meta/recipes-extended/bash/bash.inc
> b/meta/recipes-extended/bash/bash.inc
> > index 4b3692c6139..55f2b7704e6 100644
> > --- a/meta/recipes-extended/bash/bash.inc
> > +++ b/meta/recipes-extended/bash/bash.inc
> > @@ -4,7 +4,7 @@ SECTION = "base/shell"
> >
> >  DEPENDS = "ncurses bison-native virtual/libiconv"
> >
> > -inherit autotools gettext texinfo update-alternatives ptest
> > +inherit autotools gettext texinfo update-alternatives ptest linuxloader
> >
> >  EXTRA_AUTORECONF += "--exclude=autoheader --exclude=aclocal"
> >  EXTRA_OECONF = "--enable-job-control --without-bash-malloc
> bash_cv_wexitstatus_offset=8"
> > @@ -70,6 +70,7 @@ do_install_ptest () {
> >           -e 's|${DEBUG_PREFIX_MAP}||g' \
> >           -e "s,${S},,g" -e "s,${B},,g" -e "s,${STAGING_DIR_NATIVE},,g" \
> >           -e 's:${HOSTTOOLS_DIR}/::g' \
> > +         -e 's:${UNINATIVE_LOADER}:${@get_linuxloader(d)}:g' \
> >            ${D}${PTEST_PATH}/Makefile
> >  }
>
> This change causes:
>
> https://autobuilder.yoctoproject.org/typhoon/#/builders/56/builds/490
>
> which you can reproduce with:
>
> oe-selftest -r sstatetests.SStateTests.test_sstate_32_64_same_hash
>
> which with some digging you can come to:
>
> $ bitbake-diffsigs
> tmp-sstatesamehash*/stamps/*-poky-linux/bash/*.do_install_ptest_base.sigdata.*
> NOTE: Starting bitbake server...
> basehash changed from
> d92c4da62ccda424103c7615dffc5f747da83bf64a46be63acc11633480a6bf6 to
> a26822f4999a6bdbe8e8e60db91c1400e2b4011b66d98a9ec57a53d6fc70dc88
> Variable UNINATIVE_LOADER value changed:
> @@ -1,4 +1,4 @@
>  ${UNINATIVE_STAGING_DIR}-uninative/${BUILD_ARCH}-linux/lib/${@bb.utils.contains('BUILD_ARCH',
> 'x86_64', 'ld-linux-x86-64.so.2', '', d)}${@bb.utils.contains('BUILD_ARCH',
> 'i686', 'ld-linux.so.2', '', d)}${@bb.utils.contains('BUILD_ARCH',
> 'aarch64', 'ld-linux-aarch64.so.1', '', d)}
>  BUILD_ARCH{aarch64} = Unset
> -BUILD_ARCH{i686} = Set
> -BUILD_ARCH{x86_64} = Unset
> +BUILD_ARCH{i686} = Unset
> +BUILD_ARCH{x86_64} = Set
>
> which makes the problem fairly obvious when you see it put that way...
>

Ah that makes sense. I was trying to be too cute :) I'll stick with my
original plan of using /bin/false


> Cheers,
>
> Richard
>
>
>
>

[-- Attachment #2: Type: text/html, Size: 4105 bytes --]

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

* [PATCH v2] bash: Replace uninative loader path in ptest
  2019-05-31 16:57 [PATCH] bash: Replace uninative loader path in ptest Joshua Watt
  2019-06-01  6:47 ` Richard Purdie
@ 2019-06-03 15:27 ` Joshua Watt
  2019-06-04  7:29   ` Richard Purdie
  2019-06-06 20:07   ` [PATCH v3] " Joshua Watt
  2019-06-08  4:09 ` ✗ patchtest: failure for bash: Replace uninative loader path in ptest (rev3) Patchwork
  2 siblings, 2 replies; 7+ messages in thread
From: Joshua Watt @ 2019-06-03 15:27 UTC (permalink / raw)
  To: openembedded-core

The Makefile used for bash-ptest can pick up the path to the uninative
loader through BUILD_LDFLAGS. This includes the full path to the
uninative loader, which is not reproducible. Replace it with /bin/false.
It doesn't appear as if these native programs are used in the test
suites and if there are likely to be other problems related to building
them using the BUILD_* flags.

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
---
 meta/recipes-extended/bash/bash.inc | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-extended/bash/bash.inc b/meta/recipes-extended/bash/bash.inc
index dbb803ddefd..27207c38853 100644
--- a/meta/recipes-extended/bash/bash.inc
+++ b/meta/recipes-extended/bash/bash.inc
@@ -78,6 +78,7 @@ do_install_ptest () {
 	    -e 's|${DEBUG_PREFIX_MAP}||g' \
 	    -e "s,${S},,g" -e "s,${B},,g" -e "s,${STAGING_DIR_NATIVE},,g" \
 	    -e 's:${HOSTTOOLS_DIR}/::g' \
+	    -e 's:${UNINATIVE_LOADER}:${base_bindir}/false:g' \
 	     ${D}${PTEST_PATH}/Makefile
 }
 
-- 
2.21.0



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

* Re: [PATCH v2] bash: Replace uninative loader path in ptest
  2019-06-03 15:27 ` [PATCH v2] " Joshua Watt
@ 2019-06-04  7:29   ` Richard Purdie
  2019-06-06 20:07   ` [PATCH v3] " Joshua Watt
  1 sibling, 0 replies; 7+ messages in thread
From: Richard Purdie @ 2019-06-04  7:29 UTC (permalink / raw)
  To: Joshua Watt, openembedded-core

On Mon, 2019-06-03 at 10:27 -0500, Joshua Watt wrote:
> The Makefile used for bash-ptest can pick up the path to the
> uninative
> loader through BUILD_LDFLAGS. This includes the full path to the
> uninative loader, which is not reproducible. Replace it with
> /bin/false.
> It doesn't appear as if these native programs are used in the test
> suites and if there are likely to be other problems related to
> building
> them using the BUILD_* flags.
> 
> Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
> ---
>  meta/recipes-extended/bash/bash.inc | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/meta/recipes-extended/bash/bash.inc b/meta/recipes-
> extended/bash/bash.inc
> index dbb803ddefd..27207c38853 100644
> --- a/meta/recipes-extended/bash/bash.inc
> +++ b/meta/recipes-extended/bash/bash.inc
> @@ -78,6 +78,7 @@ do_install_ptest () {
>  	    -e 's|${DEBUG_PREFIX_MAP}||g' \
>  	    -e "s,${S},,g" -e "s,${B},,g" -e
> "s,${STAGING_DIR_NATIVE},,g" \
>  	    -e 's:${HOSTTOOLS_DIR}/::g' \
> +	    -e 's:${UNINATIVE_LOADER}:${base_bindir}/false:g' \
>  	     ${D}${PTEST_PATH}/Makefile
>  }

Even the UNINATIVE_LOADER reference causes:

https://autobuilder.yoctoproject.org/typhoon/#/builders/56/builds/497

i.e.

 oe-selftest -r sstatetests.SStateTests.test_sstate_32_64_same_hash

still fails with this patch.

Cheers,

Richard



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

* [PATCH v3] bash: Replace uninative loader path in ptest
  2019-06-03 15:27 ` [PATCH v2] " Joshua Watt
  2019-06-04  7:29   ` Richard Purdie
@ 2019-06-06 20:07   ` Joshua Watt
  1 sibling, 0 replies; 7+ messages in thread
From: Joshua Watt @ 2019-06-06 20:07 UTC (permalink / raw)
  To: openembedded-core

The Makefile used for bash-ptest can pick up the path to the uninative
loader through BUILD_LDFLAGS. This includes the full path to the
uninative loader, which is not reproducible. Replace it with /bin/false.
It doesn't appear as if these native programs are used in the test
suites and if there are likely to be other problems related to building
them using the BUILD_* flags.

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
---
 meta/recipes-extended/bash/bash.inc | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/meta/recipes-extended/bash/bash.inc b/meta/recipes-extended/bash/bash.inc
index dbb803ddefd..4cf1054967c 100644
--- a/meta/recipes-extended/bash/bash.inc
+++ b/meta/recipes-extended/bash/bash.inc
@@ -78,8 +78,13 @@ do_install_ptest () {
 	    -e 's|${DEBUG_PREFIX_MAP}||g' \
 	    -e "s,${S},,g" -e "s,${B},,g" -e "s,${STAGING_DIR_NATIVE},,g" \
 	    -e 's:${HOSTTOOLS_DIR}/::g' \
+	    -e 's:${UNINATIVE_LOADER}:${base_bindir}/false:g' \
 	     ${D}${PTEST_PATH}/Makefile
 }
+# The uninative loader is different on i386 & x86_64 hosts. Since it is only
+# being replaced with /bin/false anyway, it doesn't need to be part of the task
+# hash
+do_install_ptest[vardepsexclude] += "UNINATIVE_LOADER"
 
 pkg_postinst_${PN} () {
 	grep -q "^${base_bindir}/bash$" $D${sysconfdir}/shells || echo ${base_bindir}/bash >> $D${sysconfdir}/shells
-- 
2.21.0



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

* ✗ patchtest: failure for bash: Replace uninative loader path in ptest (rev3)
  2019-05-31 16:57 [PATCH] bash: Replace uninative loader path in ptest Joshua Watt
  2019-06-01  6:47 ` Richard Purdie
  2019-06-03 15:27 ` [PATCH v2] " Joshua Watt
@ 2019-06-08  4:09 ` Patchwork
  2 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2019-06-08  4:09 UTC (permalink / raw)
  To: Joshua Watt; +Cc: openembedded-core

== Series Details ==

Series: bash: Replace uninative loader path in ptest (rev3)
Revision: 3
URL   : https://patchwork.openembedded.org/series/17923/
State : failure

== Summary ==


Thank you for submitting this patch series to OpenEmbedded Core. This is
an automated response. Several tests have been executed on the proposed
series by patchtest resulting in the following failures:



* Issue             Series does not apply on top of target branch [test_series_merge_on_head] 
  Suggested fix    Rebase your series on top of targeted branch
  Targeted branch  master (currently at 666f6192aa)



If you believe any of these test results are incorrect, please reply to the
mailing list (openembedded-core@lists.openembedded.org) raising your concerns.
Otherwise we would appreciate you correcting the issues and submitting a new
version of the patchset if applicable. Please ensure you add/increment the
version number when sending the new version (i.e. [PATCH] -> [PATCH v2] ->
[PATCH v3] -> ...).

---
Guidelines:     https://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines
Test framework: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest
Test suite:     http://git.yoctoproject.org/cgit/cgit.cgi/patchtest-oe



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

end of thread, other threads:[~2019-06-08  4:09 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-31 16:57 [PATCH] bash: Replace uninative loader path in ptest Joshua Watt
2019-06-01  6:47 ` Richard Purdie
2019-06-01 15:11   ` Joshua Watt
2019-06-03 15:27 ` [PATCH v2] " Joshua Watt
2019-06-04  7:29   ` Richard Purdie
2019-06-06 20:07   ` [PATCH v3] " Joshua Watt
2019-06-08  4:09 ` ✗ patchtest: failure for bash: Replace uninative loader path in ptest (rev3) Patchwork

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.