[stgt] [PATCH 1/2] add signalfd support
FUJITA Tomonori
fujita.tomonori at lab.ntt.co.jp
Tue Sep 22 00:33:52 CEST 2009
On Mon, 21 Sep 2009 17:21:05 +0300
Or Gerlitz <ogerlitz at Voltaire.com> wrote:
> FUJITA Tomonori wrote:
> > We have one change to iSER after 0.9.8 so it's great if you can test 0.9.8
>
> 0.9.8 doesn't built on my system as of the sync_file_range regression... anyway,
The commit 455a170 and 0e72f18 should fix the issue (I've attached the
patch).
> I have tested the latest git with iser and things are basically
> working (can read and write with sgp_dd),
Cool, thanks for the confirmation.
> no progress on the iscsi_tcp/crc32 module load issue yet.
I think that it's the initiator issue. Initiators on RHEL5.2 (or
something) can't log in too?
diff --git a/usr/util.h b/usr/util.h
index 7497cb6..74aa4af 100644
--- a/usr/util.h
+++ b/usr/util.h
@@ -7,6 +7,7 @@
#include <unistd.h>
#include <errno.h>
#include <endian.h>
+#include <sys/syscall.h>
#include "be_byteshift.h"
#define roundup(x, y) ((((x) + ((y) - 1)) / (y)) * (y))
@@ -94,14 +95,19 @@ do { \
extern unsigned long pagesize, pageshift;
-#ifdef SYNC_FILE_RANGE_WAIT_BEFORE
+#if defined (SYNC_FILE_RANGE_WAIT_BEFORE) && \
+ (defined(__NR_sync_file_range) || defined(__NR_sync_file_range2))
static inline int __sync_file_range(int fd, __off64_t offset, __off64_t bytes)
{
int ret;
+#if defined(__NR_sync_file_range)
+ long int n = __NR_sync_file_range;
+#else
+ long int n = __NR_sync_file_range2;
+#endif
unsigned int flags = SYNC_FILE_RANGE_WAIT_BEFORE | SYNC_FILE_RANGE_WRITE
| SYNC_FILE_RANGE_WAIT_AFTER;
-
- ret = sync_file_range(fd, offset, bytes, flags);
+ ret = syscall(n, fd, offset, bytes, flags);
if (ret)
ret = fsync(fd);
return ret;
--
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
More information about the stgt
mailing list