[kaffe] CVS kaffe (robilad): Fixed TARGET_*SEEK* calls to use thread safe wrappers
Kaffe CVS
cvs-commits at kaffe.org
Wed Aug 3 19:04:30 PDT 2005
PatchSet 6781
Date: 2005/08/04 01:59:55
Author: robilad
Branch: HEAD
Tag: (none)
Log:
Fixed TARGET_*SEEK* calls to use thread safe wrappers
2005-08-04 Dalibor Topic <robilad at kaffe.org>
* libraries/clib/target/Linux/target_native_file.h
(TARGET_NATIVE_FILE_SEEK_END, TARGET_NATIVE_FILE_SEEK_CURRENT,
TARGET_NATIVE_FILE_SEEK_BEGIN): New macros used to delegate
system calls to thread-safe wrappers for system calls.
Members:
ChangeLog:1.4306->1.4307
libraries/clib/target/Linux/target_native_file.h:1.2->1.3
Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.4306 kaffe/ChangeLog:1.4307
--- kaffe/ChangeLog:1.4306 Thu Aug 4 00:57:40 2005
+++ kaffe/ChangeLog Thu Aug 4 01:59:55 2005
@@ -1,3 +1,10 @@
+2005-08-04 Dalibor Topic <robilad at kaffe.org>
+
+ * libraries/clib/target/Linux/target_native_file.h
+ (TARGET_NATIVE_FILE_SEEK_END, TARGET_NATIVE_FILE_SEEK_CURRENT,
+ TARGET_NATIVE_FILE_SEEK_BEGIN): New macros used to delegate
+ system calls to thread-safe wrappers for system calls.
+
2005-08-03 Dalibor Topic <robilad at kaffe.org>
* configure.ac: Check for fstat.
Index: kaffe/libraries/clib/target/Linux/target_native_file.h
diff -u kaffe/libraries/clib/target/Linux/target_native_file.h:1.2 kaffe/libraries/clib/target/Linux/target_native_file.h:1.3
--- kaffe/libraries/clib/target/Linux/target_native_file.h:1.2 Tue Aug 2 09:52:14 2005
+++ kaffe/libraries/clib/target/Linux/target_native_file.h Thu Aug 4 01:59:56 2005
@@ -240,6 +240,49 @@
} while (0)
#endif
+/***********************************************************************\
+* Name : TARGET_NATIVE_FILE_SEEK_BEGIN|CURRENT|END
+* Purpose : set file position relativ to begin/current/end
+* Input : -
+* Output : -
+* Return : -
+* Side-effect: unknown
+* Notes : -
+\***********************************************************************/
+
+#ifndef TARGET_NATIVE_FILE_SEEK_BEGIN
+ #include <sys/types.h>
+ #include <unistd.h>
+ #define TARGET_NATIVE_FILE_SEEK_BEGIN(filedescriptor,offset,newoffset,result) \
+ do { \
+ int klseek_result; \
+ klseek_result=KLSEEK(filedescriptor,offset,SEEK_SET, &newoffset); \
+ result=(klseek_result==0)?TARGET_NATIVE_OK:TARGET_NATIVE_ERROR; \
+ } while (0)
+#endif
+#ifndef TARGET_NATIVE_FILE_SEEK_CURRENT
+ #include <sys/types.h>
+ #include <unistd.h>
+ #define TARGET_NATIVE_FILE_SEEK_CURRENT(filedescriptor,offset,newoffset,result) \
+ do { \
+ int klseek_result; \
+ klseek_result=KLSEEK(filedescriptor,offset,SEEK_CUR, &newoffset); \
+ result=(klseek_result==0)?TARGET_NATIVE_OK:TARGET_NATIVE_ERROR; \
+ } while (0)
+#endif
+#ifndef TARGET_NATIVE_FILE_SEEK_END
+ #include <sys/types.h>
+ #include <unistd.h>
+ #define TARGET_NATIVE_FILE_SEEK_END(filedescriptor,offset,newoffset,result) \
+ do { \
+ int klseek_result; \
+ klseek_result=KLSEEK(filedescriptor,offset,SEEK_END, &newoffset); \
+ result=(klseek_result==0)?TARGET_NATIVE_OK:TARGET_NATIVE_ERROR; \
+ } while (0)
+#endif
+
+/* TODO: WRITE, READ, TRUNCATE, FSYNC */
+
/* include rest of definitions from generic file (do not move it to
another position!) */
#include "target_generic_file.h"
More information about the kaffe
mailing list