* linux/bfin/syscallent.h: Add fanotify/prlimit/cacheflush syscalls.
* linux/syscall.h: Add sys_cacheflush() decl.
* system.c: Decode Blackfin's cacheflush syscall.

Signed-off-by: Mike Frysinger <[email protected]>
---
 linux/bfin/syscallent.h |    4 ++++
 linux/syscall.h         |    1 +
 system.c                |   23 +++++++++++++++++++++++
 3 files changed, 28 insertions(+), 0 deletions(-)

diff --git a/linux/bfin/syscallent.h b/linux/bfin/syscallent.h
index 660b842..3126261 100644
--- a/linux/bfin/syscallent.h
+++ b/linux/bfin/syscallent.h
@@ -399,3 +399,7 @@
        { 4,    TP|TS,  printargs,              "rt_tgsigqueueinfo"     }, /* 
368 */
        { 5,    TD,     printargs,              "perf_event_open"       }, /* 
369 */
        { 5,    TN,     sys_recvmmsg,           "recvmmsg"      }, /* 370 */
+       { 2,    0,      printargs,              "fanotify_init" }, /* 371 */
+       { 5,    0,      printargs,              "fanotify_mark" }, /* 372 */
+       { 4,    0,      printargs,              "prlimit64"     }, /* 373 */
+       { 3,    0,      sys_cacheflush,         "cacheflush"    }, /* 374 */
diff --git a/linux/syscall.h b/linux/syscall.h
index 6bfed87..679697f 100644
--- a/linux/syscall.h
+++ b/linux/syscall.h
@@ -334,4 +334,5 @@ int sys_subpage_prot();
 
 #ifdef BFIN
 int sys_sram_alloc();
+int sys_cacheflush();
 #endif
diff --git a/system.c b/system.c
index 63a64b8..e16a6be 100644
--- a/system.c
+++ b/system.c
@@ -318,6 +318,29 @@ sys_sram_alloc(struct tcb *tcp)
        return 1;
 }
 
+#include <asm/cachectl.h>
+
+static const struct xlat cacheflush_flags[] = {
+       { ICACHE,       "ICACHE" },
+       { DCACHE,       "DCACHE" },
+       { BCACHE,       "BCACHE" },
+       { 0,            NULL },
+};
+
+int
+sys_cacheflush(struct tcb *tcp)
+{
+       if (entering(tcp)) {
+               /* start addr */
+               tprintf("%#lx, ", tcp->u_arg[0]);
+               /* length */
+               tprintf("%ld, ", tcp->u_arg[1]);
+               /* flags */
+               printxval(cacheflush_flags, tcp->u_arg[1], "?CACHE");
+       }
+       return 0;
+}
+
 #endif
 
 #endif /* LINUX */
-- 
1.7.2


------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
Strace-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/strace-devel

Reply via email to