Re: [OE-core] [PATCH V2] ltp: set -fomit-frame-pointer explicitly for x86-64

2018-06-15 Thread Yu, Mingli



On 2018年06月15日 17:16, Richard Purdie wrote:

On Fri, 2018-06-15 at 17:01 +0800, mingli...@windriver.com wrote:

From: Mingli Yu 

When build ltp with -fno-omit-frame-pointer on
x86-64, it will trigger below error:

cve-2015-3290.c: In function 'child_thread':
cve-2015-3290.c:416:1: error: bp cannot be used in asm here


And there is also some comment as below in the source
file ltp/20180515-r0/git/testcases/cve/cve-2015-3290.c
* Build with -O2.  Don't use -fno-omit-frame-pointer.

So explicitly set -fomit-frame-pointer on x86-64 for
compiler to fix the above build error.

Signed-off-by: Mingli Yu 
---
  meta/recipes-extended/ltp/ltp_20180515.bb | 5 +
  1 file changed, 5 insertions(+)

diff --git a/meta/recipes-extended/ltp/ltp_20180515.bb
b/meta/recipes-extended/ltp/ltp_20180515.bb
index b07c1b9..7fd8565 100644
--- a/meta/recipes-extended/ltp/ltp_20180515.bb
+++ b/meta/recipes-extended/ltp/ltp_20180515.bb
@@ -19,6 +19,11 @@ LIC_FILES_CHKSUM = "\
  DEPENDS = "attr libaio libcap acl openssl zip-native"
  DEPENDS_append_libc-musl = " fts "
  EXTRA_OEMAKE_append_libc-musl = " LIBC=musl "
+
+# set -fomit-frame-pointer to handle cases where optimisation is set
to -O0 or frame
+# pointers have been enabled by -fno-omit-frame-pointer earlier in
CFLAGS, etc.
+CFLAGS_append_x86-64 = " -fomit-frame-pointer"
+
  CFLAGS_append_powerpc64 = " -D__SANE_USERSPACE_TYPES__"
  CFLAGS_append_mipsarchn64 = " -D__SANE_USERSPACE_TYPES__"
  SRCREV = "96cbf48313afa65ef4d693d3441cbfd60a8d9b27"


Can you extend the comment to include:

"since ltp contains x86-64 assembler which uses the frame-pointer
register"

so that the comment doesn't just say what you're doing but why its
necessary only for x86-64


Thanks Richard!

It makes sense, will send out V3 to explain more why it's only necessary 
only for x86-64.


Thanks,



Cheers,

Richard




--
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH V2] ltp: set -fomit-frame-pointer explicitly for x86-64

2018-06-15 Thread Richard Purdie
On Fri, 2018-06-15 at 17:01 +0800, mingli...@windriver.com wrote:
> From: Mingli Yu 
> 
> When build ltp with -fno-omit-frame-pointer on
> x86-64, it will trigger below error:
> > cve-2015-3290.c: In function 'child_thread':
> > cve-2015-3290.c:416:1: error: bp cannot be used in asm here
> 
> And there is also some comment as below in the source
> file ltp/20180515-r0/git/testcases/cve/cve-2015-3290.c
> * Build with -O2.  Don't use -fno-omit-frame-pointer.
> 
> So explicitly set -fomit-frame-pointer on x86-64 for
> compiler to fix the above build error.
> 
> Signed-off-by: Mingli Yu 
> ---
>  meta/recipes-extended/ltp/ltp_20180515.bb | 5 +
>  1 file changed, 5 insertions(+)
> 
> diff --git a/meta/recipes-extended/ltp/ltp_20180515.bb
> b/meta/recipes-extended/ltp/ltp_20180515.bb
> index b07c1b9..7fd8565 100644
> --- a/meta/recipes-extended/ltp/ltp_20180515.bb
> +++ b/meta/recipes-extended/ltp/ltp_20180515.bb
> @@ -19,6 +19,11 @@ LIC_FILES_CHKSUM = "\
>  DEPENDS = "attr libaio libcap acl openssl zip-native"
>  DEPENDS_append_libc-musl = " fts "
>  EXTRA_OEMAKE_append_libc-musl = " LIBC=musl "
> +
> +# set -fomit-frame-pointer to handle cases where optimisation is set
> to -O0 or frame
> +# pointers have been enabled by -fno-omit-frame-pointer earlier in
> CFLAGS, etc.
> +CFLAGS_append_x86-64 = " -fomit-frame-pointer"
> +
>  CFLAGS_append_powerpc64 = " -D__SANE_USERSPACE_TYPES__"
>  CFLAGS_append_mipsarchn64 = " -D__SANE_USERSPACE_TYPES__"
>  SRCREV = "96cbf48313afa65ef4d693d3441cbfd60a8d9b27"

Can you extend the comment to include:

"since ltp contains x86-64 assembler which uses the frame-pointer
register"

so that the comment doesn't just say what you're doing but why its
necessary only for x86-64

Cheers,

Richard


-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH V2] ltp: set -fomit-frame-pointer explicitly for x86-64

2018-06-15 Thread mingli.yu
From: Mingli Yu 

When build ltp with -fno-omit-frame-pointer on
x86-64, it will trigger below error:
| cve-2015-3290.c: In function 'child_thread':
| cve-2015-3290.c:416:1: error: bp cannot be used in asm here

And there is also some comment as below in the source
file ltp/20180515-r0/git/testcases/cve/cve-2015-3290.c
* Build with -O2.  Don't use -fno-omit-frame-pointer.

So explicitly set -fomit-frame-pointer on x86-64 for
compiler to fix the above build error.

Signed-off-by: Mingli Yu 
---
 meta/recipes-extended/ltp/ltp_20180515.bb | 5 +
 1 file changed, 5 insertions(+)

diff --git a/meta/recipes-extended/ltp/ltp_20180515.bb 
b/meta/recipes-extended/ltp/ltp_20180515.bb
index b07c1b9..7fd8565 100644
--- a/meta/recipes-extended/ltp/ltp_20180515.bb
+++ b/meta/recipes-extended/ltp/ltp_20180515.bb
@@ -19,6 +19,11 @@ LIC_FILES_CHKSUM = "\
 DEPENDS = "attr libaio libcap acl openssl zip-native"
 DEPENDS_append_libc-musl = " fts "
 EXTRA_OEMAKE_append_libc-musl = " LIBC=musl "
+
+# set -fomit-frame-pointer to handle cases where optimisation is set to -O0 or 
frame
+# pointers have been enabled by -fno-omit-frame-pointer earlier in CFLAGS, etc.
+CFLAGS_append_x86-64 = " -fomit-frame-pointer"
+
 CFLAGS_append_powerpc64 = " -D__SANE_USERSPACE_TYPES__"
 CFLAGS_append_mipsarchn64 = " -D__SANE_USERSPACE_TYPES__"
 SRCREV = "96cbf48313afa65ef4d693d3441cbfd60a8d9b27"
-- 
2.7.4

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core