From: Aleksandr Koltsoff <czr@iki.fi>
To: openembedded-devel@lists.openembedded.org
Subject: [PATCH] strace: Update to 4.5.18
Date: Sun, 20 Sep 2009 13:09:06 +0300 [thread overview]
Message-ID: <4AB5FF42.30204@iki.fi> (raw)
[-- Attachment #1: Type: text/plain, Size: 173 bytes --]
Please note that only ARM (arm and thumb) has received testing. For this
reason DEFAULT_PREFERENCE is set to -1.
--
Signed-off-by: Aleksandr Koltsoff <czr@iki.fi>
[-- Attachment #2: 0002-strace-Update-to-4.5.18.patch --]
[-- Type: text/x-diff, Size: 10384 bytes --]
From cbf4f807b9c6a23444baf174483945ce86aa1eb8 Mon Sep 17 00:00:00 2001
From: Aleksandr Koltsoff <czr@iki.fi>
Date: Sun, 20 Sep 2009 12:55:24 +0300
Subject: [PATCH] strace: Update to 4.5.18
Please note that only ARM (arm and thumb) has received testing.
---
.../strace-4.5.18/strace-4.5.17-arm-syscalls.patch | 140 ++++++++++++++++++++
.../strace-4.5.18/strace-arm-no-cachectl.patch | 34 +++++
recipes/strace/strace_4.5.18.bb | 14 ++
3 files changed, 188 insertions(+), 0 deletions(-)
create mode 100644 recipes/strace/strace-4.5.18/strace-4.5.17-arm-syscalls.patch
create mode 100644 recipes/strace/strace-4.5.18/strace-arm-no-cachectl.patch
create mode 100644 recipes/strace/strace_4.5.18.bb
diff --git a/recipes/strace/strace-4.5.18/strace-4.5.17-arm-syscalls.patch b/recipes/strace/strace-4.5.18/strace-4.5.17-arm-syscalls.patch
new file mode 100644
index 0000000..d336892
--- /dev/null
+++ b/recipes/strace/strace-4.5.18/strace-4.5.17-arm-syscalls.patch
@@ -0,0 +1,140 @@
+This patch was required to build 4.5.18 (arm). It was meant for 4.5.17 originally,
+but applies cleanly against 4.5.18.
+
+Patch found on gentoo bugtracker:
+http://bugs.gentoo.org/attachment.cgi?id=181917&action=view
+
+diff --git a/linux/arm/syscallent.h b/linux/arm/syscallent.h
+index 5ccef2f..edc3641 100644
+--- a/linux/arm/syscallent.h
++++ b/linux/arm/syscallent.h
+@@ -431,6 +431,7 @@
+ { 5, 0, printargs, "SYS_398" }, /* 398 */
+ { 5, 0, printargs, "SYS_399" }, /* 399 */
+
++#ifndef __ARM_EABI__
+ #if SYS_socket_subcall != 400
+ #error fix me
+ #endif
+@@ -481,3 +482,4 @@
+ { 4, TI, sys_shmdt, "shmdt" }, /* 440 */
+ { 4, TI, sys_shmget, "shmget" }, /* 441 */
+ { 4, TI, sys_shmctl, "shmctl" }, /* 442 */
++#endif
+diff --git a/linux/arm/syscallent.h b/linux/arm/syscallent.h
+index edc3641..6dd783a 100644
+--- a/linux/arm/syscallent.h
++++ b/linux/arm/syscallent.h
+@@ -328,63 +328,63 @@
+ { 5, TN, sys_getsockopt, "getsockopt" }, /* 295 */
+ { 3, TN, sys_sendmsg, "sendmsg" }, /* 296 */
+ { 3, TN, sys_recvmsg, "recvmsg" }, /* 297 */
+- { 5, 0, printargs, "SYS_298" }, /* 298 */
+- { 5, 0, printargs, "SYS_299" }, /* 299 */
+- { 5, 0, printargs, "SYS_300" }, /* 300 */
+- { 5, 0, printargs, "SYS_301" }, /* 301 */
+- { 5, 0, printargs, "SYS_302" }, /* 302 */
+- { 5, 0, printargs, "SYS_303" }, /* 303 */
+- { 5, 0, printargs, "SYS_304" }, /* 304 */
+- { 5, 0, printargs, "SYS_305" }, /* 305 */
+- { 5, 0, printargs, "SYS_306" }, /* 306 */
+- { 5, 0, printargs, "SYS_307" }, /* 307 */
+- { 5, 0, printargs, "SYS_308" }, /* 308 */
+- { 5, 0, printargs, "SYS_309" }, /* 309 */
+- { 5, 0, printargs, "SYS_310" }, /* 310 */
+- { 5, 0, printargs, "SYS_311" }, /* 311 */
+- { 5, 0, printargs, "SYS_312" }, /* 312 */
+- { 5, 0, printargs, "SYS_313" }, /* 313 */
+- { 5, 0, printargs, "SYS_314" }, /* 314 */
+- { 5, 0, printargs, "SYS_315" }, /* 315 */
+- { 5, 0, printargs, "SYS_316" }, /* 316 */
+- { 5, 0, printargs, "SYS_317" }, /* 317 */
+- { 5, 0, printargs, "SYS_318" }, /* 318 */
+- { 5, 0, printargs, "SYS_319" }, /* 319 */
+- { 5, 0, printargs, "SYS_320" }, /* 320 */
+- { 5, 0, printargs, "SYS_321" }, /* 321 */
+- { 5, 0, printargs, "SYS_322" }, /* 322 */
+- { 5, 0, printargs, "SYS_323" }, /* 323 */
+- { 5, 0, printargs, "SYS_324" }, /* 324 */
+- { 5, 0, printargs, "SYS_325" }, /* 325 */
+- { 5, 0, printargs, "SYS_326" }, /* 326 */
+- { 5, 0, printargs, "SYS_327" }, /* 327 */
+- { 5, 0, printargs, "SYS_328" }, /* 328 */
+- { 5, 0, printargs, "SYS_329" }, /* 329 */
+- { 5, 0, printargs, "SYS_330" }, /* 330 */
+- { 5, 0, printargs, "SYS_331" }, /* 331 */
+- { 5, 0, printargs, "SYS_332" }, /* 332 */
+- { 5, 0, printargs, "SYS_333" }, /* 333 */
+- { 5, 0, printargs, "SYS_334" }, /* 334 */
++ { 4, TI, sys_semop, "semop" }, /* 298 */
++ { 4, TI, sys_semget, "semget" }, /* 299 */
++ { 4, TI, sys_semctl, "semctl" }, /* 300 */
++ { 4, TI, sys_msgsnd, "msgsnd" }, /* 301 */
++ { 4, TI, sys_msgrcv, "msgrcv" }, /* 302 */
++ { 4, TI, sys_msgget, "msgget" }, /* 303 */
++ { 4, TI, sys_msgctl, "msgctl" }, /* 304 */
++ { 4, TI, sys_shmat, "shmat" }, /* 305 */
++ { 4, TI, sys_shmdt, "shmdt" }, /* 306 */
++ { 4, TI, sys_shmget, "shmget" }, /* 307 */
++ { 4, TI, sys_shmctl, "shmctl" }, /* 308 */
++ { 5, 0, printargs, "add_key" }, /* 309 */
++ { 4, 0, printargs, "request_key" }, /* 310 */
++ { 5, 0, printargs, "keyctl" }, /* 311 */
++ { 5, TI, sys_semtimedop, "semtimedop" }, /* 312 */
++ { 5, 0, printargs, "vserver" }, /* 313 */
++ { 3, 0, printargs, "ioprio_set" }, /* 314 */
++ { 2, 0, printargs, "ioprio_get" }, /* 315 */
++ { 0, TD, printargs, "inotify_init" }, /* 316 */
++ { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 317 */
++ { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 318 */
++ { 6, 0, sys_mbind, "mbind" }, /* 319 */
++ { 3, 0, sys_set_mempolicy, "set_mempolicy" }, /* 320 */
++ { 5, 0, sys_get_mempolicy, "get_mempolicy" }, /* 321 */
++ { 4, TD|TF, sys_openat, "openat" }, /* 322 */
++ { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 323 */
++ { 4, TD|TF, sys_mknodat, "mknodat" }, /* 324 */
++ { 5, TD|TF, sys_fchownat, "fchownat" }, /* 325 */
++ { 3, TD|TF, sys_futimesat, "futimesat" }, /* 326 */
++ { 4, TD|TD, sys_newfstatat, "newfstatat" }, /* 327 */
++ { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 328 */
++ { 4, TD|TF, sys_renameat, "renameat" }, /* 329 */
++ { 5, TD|TF, sys_linkat, "linkat" }, /* 330 */
++ { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 331 */
++ { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 332 */
++ { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 333 */
++ { 3, TD|TF, sys_faccessat, "faccessat" }, /* 334 */
+ { 5, 0, printargs, "SYS_335" }, /* 335 */
+ { 5, 0, printargs, "SYS_336" }, /* 336 */
+- { 5, 0, printargs, "SYS_337" }, /* 337 */
+- { 5, 0, printargs, "SYS_338" }, /* 338 */
+- { 5, 0, printargs, "SYS_339" }, /* 339 */
+- { 5, 0, printargs, "SYS_340" }, /* 340 */
++ { 1, TP, sys_unshare, "unshare" }, /* 337 */
++ { 2, 0, printargs, "set_robust_list" }, /* 338 */
++ { 3, 0, printargs, "get_robust_list" }, /* 339 */
++ { 6, TD, printargs, "splice" }, /* 340 */
+ { 5, 0, printargs, "SYS_341" }, /* 341 */
+- { 5, 0, printargs, "SYS_342" }, /* 342 */
+- { 5, 0, printargs, "SYS_343" }, /* 343 */
++ { 4, TD, printargs, "tee" }, /* 342 */
++ { 4, TD, printargs, "vmsplice" }, /* 343 */
+ { 6, 0, sys_move_pages, "move_pages" }, /* 344 */
+ { 3, 0, sys_getcpu, "getcpu" }, /* 345 */
+ { 5, 0, printargs, "SYS_346" }, /* 346 */
+- { 5, 0, printargs, "SYS_347" }, /* 347 */
+- { 5, 0, printargs, "SYS_348" }, /* 348 */
++ { 5, 0, printargs, "kexec_load" }, /* 347 */
++ { 4, TD|TF, sys_utimensat, "utimensat" }, /* 348 */
+ { 3, TD|TS, sys_signalfd, "signalfd" }, /* 349 */
+ { 4, TD, sys_timerfd, "timerfd" }, /* 350 */
+ { 1, TD, sys_eventfd, "eventfd" }, /* 351 */
+- { 5, 0, printargs, "SYS_352" }, /* 352 */
+- { 5, 0, printargs, "SYS_353" }, /* 353 */
+- { 5, 0, printargs, "SYS_354" }, /* 354 */
++ { 6, TF, sys_fallocate, "fallocate" }, /* 352 */
++ { 4, TD, sys_timerfd_settime, "timerfd_settime"}, /* 353 */
++ { 2, TD, sys_timerfd_gettime, "timerfd_gettime"}, /* 354 */
+ { 5, 0, printargs, "SYS_355" }, /* 355 */
+ { 5, 0, printargs, "SYS_356" }, /* 356 */
+ { 5, 0, printargs, "SYS_357" }, /* 357 */
+
\ No newline at end of file
diff --git a/recipes/strace/strace-4.5.18/strace-arm-no-cachectl.patch b/recipes/strace/strace-4.5.18/strace-arm-no-cachectl.patch
new file mode 100644
index 0000000..b71995d
--- /dev/null
+++ b/recipes/strace/strace-4.5.18/strace-arm-no-cachectl.patch
@@ -0,0 +1,34 @@
+
+
+This patch is needed on newer uclibc becuase the uclibc header generation mechanism generates the sysnum.h properly NR_cacheflush is defined for ARM but there is no cachectl.h file which is exported to userspace. Strace assumes that if SYS_cacheflush is defined than it icludes asm/cachectl.h which breaks the build for ARM now.
+
+This patch adds a check for ARM architecture.
+
+-Khem
+
+Here is error
+
+| if ccache arm-angstrom-linux-uclibcgnueabi-gcc -march=armv5te -mtune=arm926ej-s -DHAVE_CONFIG_H -I. -I. -I. -Ilinux/arm -I./linux/arm -Ilinux -I./linux -isystem/home/kraj/work/oe/build/uclibc/tmp-omap5912osk/staging/arm-angstrom-linux-uclibcgnueabi/usr/include -Wall -isystem/home/kraj/work/oe/build/uclibc/tmp-omap5912osk/staging/arm-angstrom-linux-uclibcgnueabi/usr/include -fexpensive-optimizations -fomit-frame-pointer -frename-registers -Os -MT term.o -MD -MP -MF ".deps/term.Tpo" -c -o term.o term.c; \
+| then mv -f ".deps/term.Tpo" ".deps/term.Po"; else rm -f ".deps/term.Tpo"; exit 1; fi
+| system.c:69:26: error: asm/cachectl.h: No such file or directory
+| make[1]: *** [system.o] Error 1
+| make[1]: *** Waiting for unfinished jobs....
+| signal.c: In function 'sys_sigreturn':
+| signal.c:1221: warning: passing argument 4 of 'ptrace' makes integer from pointer without a cast
+| make[1]: Leaving directory `/home/kraj/work/oe/build/uclibc/tmp-omap5912osk/work/armv5te-angstrom-linux-uclibcgnueabi/strace-4.5.14-r5/strace-4.5.14'
+| make: *** [all] Error 2
+| FATAL: oe_runmake failed
+
+Index: strace-4.5.14/system.c
+===================================================================
+--- strace-4.5.14.orig/system.c 2008-05-15 20:23:16.000000000 -0700
++++ strace-4.5.14/system.c 2008-05-15 20:24:03.000000000 -0700
+@@ -65,7 +65,7 @@
+ #include <linux/capability.h>
+ #endif
+
+-#ifdef SYS_cacheflush
++#if defined SYS_cacheflush && !defined ARM
+ #include <asm/cachectl.h>
+ #endif
+
diff --git a/recipes/strace/strace_4.5.18.bb b/recipes/strace/strace_4.5.18.bb
new file mode 100644
index 0000000..d3ebbf6
--- /dev/null
+++ b/recipes/strace/strace_4.5.18.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "strace is a system call tracing tool."
+SECTION = "console/utils"
+LICENSE = "GPL"
+PR = "r1"
+
+# only arm tested
+DEFAULT_PREFERENCE = "-1"
+#DEFAULT_PREFERENCE_arm = "1"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/strace/strace-${PV}.tar.bz2 \
+ file://strace-4.5.17-arm-syscalls.patch;patch=1 \
+ file://strace-arm-no-cachectl.patch;patch=1"
+
+inherit autotools
--
1.6.4.3
next reply other threads:[~2009-09-20 10:09 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-20 10:09 Aleksandr Koltsoff [this message]
2009-09-20 15:02 ` [PATCH] strace: Update to 4.5.18 Khem Raj
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4AB5FF42.30204@iki.fi \
--to=czr@iki.fi \
--cc=openembedded-devel@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.