[oe] [meta-oe][PATCH] ltrace: Error Fix for ARM
Martin Jansa
martin.jansa at gmail.com
Fri May 6 14:17:44 UTC 2016
On Fri, Apr 29, 2016 at 01:18:26AM +0000, Li, Xin wrote:
>
>
> >-----Original Message-----
> >From: openembedded-devel-bounces at lists.openembedded.org
> >[mailto:openembedded-devel-bounces at lists.openembedded.org] On Behalf Of
> >Martin Jansa
> >Sent: Wednesday, April 27, 2016 4:35 PM
> >To: openembedded-devel at lists.openembedded.org
> >Subject: Re: [oe] [meta-oe][PATCH] ltrace: Error Fix for ARM
> >
> >On Fri, Apr 15, 2016 at 04:06:49AM +0300, Li Xin wrote:
> >> 1) The error is as following:
> >> root # ltrace ls
> >> __libc_start_main(0xb6fbc018, 1, 0xbed8fdc4,
> >0xb6fd0b88PTRACE_SINGLESTEP: Input/output error
> >> 2747 couldn't continue when handling __libc_start_main (0xb6fbbde0) at
> >0xb6fbbde0
> >> The master branch fix it.
> >>
> >> 2) remove unused patch:
> >> --0001-ltrace-fix-gcc-5-logical-not-parentheses.patch
> >> --ltrace-0.7.2-unused-typedef.patch
> >
> >Now I'm seeing this failure:
> >
> >| ../../../../git/sysdeps/linux-gnu/arm/fetch.c: In function 'arch_elf_init':
> >| ../../../../git/sysdeps/linux-gnu/arm/fetch.c:101:8: error: 'data' may be used
> >uninitialized in this function [-Werror=maybe-uninitialized]
> >| if (elf_read_next_uleb128(data, &offset, &tag) < 0
> >| ^
> >| cc1: all warnings being treated as errors
> >| make[4]: *** [fetch.lo] Error 1
> >| make[4]: *** Waiting for unfinished jobs....
> >| make[4]: Leaving directory
> >`.../ltrace/1_7.3+gitAUTOINC+01b10e191e-r0/build/sysdeps/linux-gnu/arm'
> >
> >Possibly caused by using -Os, can you retest with -Os?
>
> OK, And can you tell me how to test with -Os?
TUNE_CCARGS += "-Os" in the recipe is probably simples way to reproduce
this.
> Regards & Thanks.
>
>
> >
> >> Signed-off-by: Li Xin <lixin.fnst at cn.fujitsu.com>
> >> ---
> >> ...-ltrace-fix-gcc-5-logical-not-parentheses.patch | 38 -----------------
> >> .../ltrace/ltrace-0.7.2-unused-typedef.patch | 49 ----------------------
> >> meta-oe/recipes-devtools/ltrace/ltrace_git.bb | 6 +--
> >> 3 files changed, 2 insertions(+), 91 deletions(-) delete mode 100644
> >> meta-oe/recipes-devtools/ltrace/ltrace/0001-ltrace-fix-gcc-5-logical-n
> >> ot-parentheses.patch delete mode 100644
> >> meta-oe/recipes-devtools/ltrace/ltrace/ltrace-0.7.2-unused-typedef.pat
> >> ch
> >>
> >> diff --git
> >> a/meta-oe/recipes-devtools/ltrace/ltrace/0001-ltrace-fix-gcc-5-logical
> >> -not-parentheses.patch
> >> b/meta-oe/recipes-devtools/ltrace/ltrace/0001-ltrace-fix-gcc-5-logical
> >> -not-parentheses.patch
> >> deleted file mode 100644
> >> index 681c43d..0000000
> >> ---
> >> a/meta-oe/recipes-devtools/ltrace/ltrace/0001-ltrace-fix-gcc-5-logical
> >> -not-parentheses.patch
> >> +++ /dev/null
> >> @@ -1,38 +0,0 @@
> >> -From 876fe5680d77800426f8c4c5680a235732d722e6 Mon Sep 17 00:00:00
> >> 2001
> >> -From: Kai Kang <kai.kang at windriver.com>
> >> -Date: Mon, 24 Aug 2015 17:37:54 +0800
> >> -Subject: [PATCH] ltrace: fix gcc 5 logical not parentheses
> >> -
> >> -Upstream-Status: Pending
> >> -
> >> -Build ltrace with gcc 5.2, it fails with:
> >> -
> >> -error: logical not is only applied to the left hand side of
> >> comparison -[-Werror=logical-not-parentheses]
> >> - if (!need_data(data, offset, SIZE / 8) < 0) \
> >> - ^
> >> -
> >> -Function need_data just return 0 on success and -1 if fail. So it is
> >> ok -to just test if (need_data(data, offset, SIZE / 8) < 0).
> >> -
> >> -Signed-off-by: Kai Kang <kai.kang at windriver.com>
> >> ----
> >> - ltrace-elf.c | 2 +-
> >> - 1 file changed, 1 insertion(+), 1 deletion(-)
> >> -
> >> -diff --git a/ltrace-elf.c b/ltrace-elf.c -index c571d2a..7fe830f
> >> 100644
> >> ---- a/ltrace-elf.c
> >> -+++ b/ltrace-elf.c
> >> -@@ -218,7 +218,7 @@ need_data(Elf_Data *data, GElf_Xword offset,
> >GElf_Xword size)
> >> - int \
> >> - NAME(Elf_Data *data, GElf_Xword offset, uint##SIZE##_t *retp) \
> >> - { \
> >> -- if (!need_data(data, offset, SIZE / 8) < 0) \
> >> -+ if (need_data(data, offset, SIZE / 8) < 0) \
> >> - return -1; \
> >> - \
> >> - if (data->d_buf == NULL) /* NODATA section */ { \
> >> ---
> >> -1.9.1
> >> -
> >> diff --git
> >> a/meta-oe/recipes-devtools/ltrace/ltrace/ltrace-0.7.2-unused-typedef.p
> >> atch
> >> b/meta-oe/recipes-devtools/ltrace/ltrace/ltrace-0.7.2-unused-typedef.p
> >> atch
> >> deleted file mode 100644
> >> index 8f3c0ec..0000000
> >> ---
> >> a/meta-oe/recipes-devtools/ltrace/ltrace/ltrace-0.7.2-unused-typedef.p
> >> atch
> >> +++ /dev/null
> >> @@ -1,49 +0,0 @@
> >> -diff --git a/value.c b/value.c
> >> -index d18db17..b98298e 100644
> >> ---- a/value.c
> >> -+++ b/value.c
> >> -@@ -1,6 +1,6 @@
> >> - /*
> >> - * This file is part of ltrace.
> >> -- * Copyright (C) 2011,2012 Petr Machata, Red Hat Inc.
> >> -+ * Copyright (C) 2011,2012,2013 Petr Machata, Red Hat Inc.
> >> - *
> >> - * This program is free software; you can redistribute it and/or
> >> - * modify it under the terms of the GNU General Public License as
> >> -@@ -282,9 +282,9 @@ value_init_deref(struct value *ret_val, struct value
> >*valp)
> >> - if (value_extract_word(valp, &l, NULL) < 0)
> >> - return -1;
> >> -
> >> -- /* We need "long" to be long enough to hold platform
> >> -+ /* We need "long" to be long enough to hold target
> >> - * pointers. */
> >> -- typedef char assert__long_enough_long[-(sizeof(l) < sizeof(void *))];
> >> -+ assert(sizeof(l) >= sizeof(arch_addr_t));
> >> -
> >> - value_common_init(ret_val, valp->inferior, valp,
> >> - valp->type->u.ptr_info.info, 0);
> >> -diff --git a/lens_default.c b/lens_default.c -index ed3d0e1..5d00814
> >> 100644
> >> ---- a/lens_default.c
> >> -+++ b/lens_default.c
> >> -@@ -1,6 +1,6 @@
> >> - /*
> >> - * This file is part of ltrace.
> >> -- * Copyright (C) 2011,2012 Petr Machata, Red Hat Inc.
> >> -+ * Copyright (C) 2011,2012,2013 Petr Machata, Red Hat Inc.
> >> - * Copyright (C) 1998,2004,2007,2008,2009 Juan Cespedes
> >> - * Copyright (C) 2006 Ian Wienand
> >> - * Copyright (C) 2006 Steve Fink
> >> -@@ -342,9 +342,9 @@ format_array(FILE *stream, struct value *value, struct
> >value_dict *arguments,
> >> - struct expr_node *length, size_t maxlen, int before,
> >> - const char *open, const char *close, const char *delim)
> >> - {
> >> -- /* We need "long" to be long enough to cover the whole address
> >> -- * space. */
> >> -- typedef char assert__long_enough_long[-(sizeof(long) < sizeof(void *))];
> >> -+ /* We need "long" to be long enough to cover the whole target
> >> -+ * address space. */
> >> -+ assert(sizeof(long) >= sizeof(arch_addr_t));
> >> - long l;
> >> - if (expr_eval_word(length, value, arguments, &l) < 0)
> >> - return -1;
> >> diff --git a/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
> >> b/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
> >> index d8d037e..850e8e3 100644
> >> --- a/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
> >> +++ b/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
> >> @@ -11,14 +11,12 @@ LIC_FILES_CHKSUM =
> >"file://COPYING;md5=eb723b61539feef013de476e68b5c50a"
> >>
> >> PE = "1"
> >> PV = "7.3+git${SRCPV}"
> >> -SRCREV = "37ecc41b58be3dbdd79592a76e331b5b371e4f81"
> >> +SRCREV = "01b10e191e99d8cb147e5a2b7da8196e0ec6fb94"
> >>
> >> DEPENDS = "elfutils"
> >> RDEPENDS_${PN} = "elfutils"
> >> -SRC_URI =
> >"git://anonscm.debian.org/collab-maint/ltrace.git;branch=ltrace-0.7 \
> >> - file://ltrace-0.7.2-unused-typedef.patch \
> >> +SRC_URI =
> >> +"git://anonscm.debian.org/collab-maint/ltrace.git;branch=master \
> >> file://configure-allow-to-disable-selinux-support.patch \
> >> - file://0001-ltrace-fix-gcc-5-logical-not-parentheses.patch \
> >> "
> >> S = "${WORKDIR}/git"
> >>
> >> --
> >> 1.8.4.2
> >>
> >>
> >>
> >> --
> >> _______________________________________________
> >> Openembedded-devel mailing list
> >> Openembedded-devel at lists.openembedded.org
> >> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> >
> >--
> >Martin 'JaMa' Jansa jabber: Martin.Jansa at gmail.com
>
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
--
Martin 'JaMa' Jansa jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-devel/attachments/20160506/dd9fdec6/attachment-0002.sig>
More information about the Openembedded-devel
mailing list