]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Support sys_utimensat on x86-linux. (Dan McGee)
authorJulian Seward <jseward@acm.org>
Tue, 20 Nov 2007 23:41:23 +0000 (23:41 +0000)
committerJulian Seward <jseward@acm.org>
Tue, 20 Nov 2007 23:41:23 +0000 (23:41 +0000)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7195

coregrind/m_syswrap/priv_syswrap-linux.h
coregrind/m_syswrap/syswrap-linux.c
coregrind/m_syswrap/syswrap-x86-linux.c
include/vki/vki-scnums-x86-linux.h

index d36b9b113527d4d024efb5a38a81f68d95b07827..9972be84318af5871e1f28cebf1341cbc5a15324 100644 (file)
@@ -141,6 +141,7 @@ DECL_TEMPLATE(linux, sys_symlinkat);
 DECL_TEMPLATE(linux, sys_readlinkat);
 DECL_TEMPLATE(linux, sys_fchmodat);
 DECL_TEMPLATE(linux, sys_faccessat);
+DECL_TEMPLATE(linux, sys_utimensat);
 
 DECL_TEMPLATE(linux, sys_add_key);
 DECL_TEMPLATE(linux, sys_request_key);
index c1769e5a89afe9833d7087b9472f075a477aa895..f118434e57a5f71549f05cafead5597cc0d9c91c 100644 (file)
@@ -2808,6 +2808,18 @@ PRE(sys_ioprio_set)
 }
 
 
+/* XXX I don't think this is really the right place for this.
+   Move it elsewhere in this file? */
+PRE(sys_utimensat)
+{
+   PRINT("sys_utimensat ( %d, %p(%s), %p )", ARG1,ARG2,ARG2,ARG3);
+   PRE_REG_READ3(long, "utimensat",
+                 int, dfd, char *, filename, struct timespec *, tvp);
+   PRE_MEM_RASCIIZ( "utimensat(filename)", ARG2 );
+   if (ARG3 != 0)
+      PRE_MEM_READ( "utimensat(tvp)", ARG3, sizeof(struct vki_timespec) );
+}
+
 #undef PRE
 #undef POST
 
index 001d2a81bcd391020014f482e72685dfc26ec868..49761e2566856cd556272f887c5e231264744fad 100644 (file)
@@ -2216,6 +2216,8 @@ const SyscallTableEntry ML_(syscall_table)[] = {
 //   LINX_(__NR_unshare,                sys_unshare),          // 310
    LINX_(__NR_set_robust_list,  sys_set_robust_list),  // 311
    LINXY(__NR_get_robust_list,  sys_get_robust_list),  // 312
+
+   LINX_(__NR_utimensat,         sys_utimensat),        // 320
 };
 
 const UInt ML_(syscall_table_size) = 
index 7dd881c4786f92d6ee65a7f564df9dc193cda6f2..aa004cb1e87a65c5ef17745f513e5728c1dfd3d5 100644 (file)
 #define __NR_sync_file_range   314
 #define __NR_tee               315
 #define __NR_vmsplice          316
+#define __NR_utimensat         320
 
 #endif /* __VKI_SCNUMS_X86_LINUX_H */