[PATCH] tools: hv: fcopy_daemon: support >2GB files for x86_32 guest

Dexuan Cui decui at microsoft.com
Thu Mar 5 03:30:55 UTC 2015


Without this patch, hv_fcopy_daemon's hv_copy_data() -> pwrite()
will fail for >2GB file offset.

Signed-off-by: Alex Ng <alexng at microsoft.com>
Signed-off-by: Dexuan Cui <decui at microsoft.com>
Cc: K. Y. Srinivasan <kys at microsoft.com>
---

I tested the patch on x86_32 and x86_64 Ubuntu 15.04 nightly build(this is
a generic issue and I think all the existing x86_32 distros have the issue):
without the patch, the fcopy with a >2GB file always failed and with the patch
I was able to fcopy a file of 40GB successfully.

"getconf LFS_CFLAGS" returns "-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
on x86_32 and returns an empty string on x86_64.

 tools/hv/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/hv/Makefile b/tools/hv/Makefile
index 99ffe61..a8ab795 100644
--- a/tools/hv/Makefile
+++ b/tools/hv/Makefile
@@ -3,7 +3,7 @@
 CC = $(CROSS_COMPILE)gcc
 PTHREAD_LIBS = -lpthread
 WARNINGS = -Wall -Wextra
-CFLAGS = $(WARNINGS) -g $(PTHREAD_LIBS)
+CFLAGS = $(WARNINGS) -g $(PTHREAD_LIBS) $(shell getconf LFS_CFLAGS)
 
 all: hv_kvp_daemon hv_vss_daemon hv_fcopy_daemon
 %: %.c
-- 
1.9.1



More information about the devel mailing list