[lttng-dev] [PATCH 1/2] Do not call posix_fallocate() on uClibc
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Tue May 28 09:27:06 EDT 2013
uClibc does not implement posix_fallocate(), and posix_fallocate() is
mostly only an hint to the kernel that we will need such or such
amount of space inside a file. So we just don't call posix_fallocate()
when building against uClibc.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
---
formats/ctf/ctf.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/formats/ctf/ctf.c b/formats/ctf/ctf.c
index bb94e52..77aef28 100644
--- a/formats/ctf/ctf.c
+++ b/formats/ctf/ctf.c
@@ -43,6 +43,7 @@
#include <sys/stat.h>
#include <fcntl.h>
#include <dirent.h>
+#include <features.h>
#include <glib.h>
#include <unistd.h>
#include <stdlib.h>
@@ -723,9 +724,11 @@ void ctf_packet_seek(struct bt_stream_pos *stream_pos, size_t index, int whence)
}
pos->content_size = -1U; /* Unknown at this point */
pos->packet_size = WRITE_PACKET_LEN;
+#ifndef __UCLIBC__
off = posix_fallocate(pos->fd, pos->mmap_offset,
pos->packet_size / CHAR_BIT);
assert(off >= 0);
+#endif
pos->offset = 0;
} else {
read_next_packet:
--
1.7.9.5
More information about the lttng-dev
mailing list