1 --- src/data/socket_file.cc.orig 2007-07-19 14:23:06.000000000 -0700
2 +++ src/data/socket_file.cc 2007-09-12 16:22:15.000000000 -0700
5 uint64_t align = offset % MemoryChunk::page_size();
7 - char* ptr = (char*)mmap(NULL, length + align, prot, flags, m_fd, offset - align);
8 + offset = offset - align;
10 +#if __GLIBC__ == 2 && __GLIBC_MINOR__ < 3
11 +#warning "swap word of 64-bit offset to work around mmap64 bug of glibc"
12 + offset = (offset >> 32) | (offset << 32);
15 + char* ptr = (char*)mmap(NULL, length + align, prot, flags, m_fd, offset);
17 if (ptr == MAP_FAILED)