aboutsummaryrefslogtreecommitdiffstats
path: root/package/lttng-babeltrace/lttng-babeltrace-01-no-posix-fallocate-in-uclibc.patch
blob: d77825fab65408ffa805a13c3eba670b0f102040 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Do not call posix_fallocate() on uClibc

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@free-electrons.com>
[Peter: add #include <features.h>
---
 formats/ctf/ctf.c |    3 +++
 1 file changed, 3 insertions(+)

Index: lttng-babeltrace-0.8/formats/ctf/ctf.c
===================================================================
--- lttng-babeltrace-0.8.orig/formats/ctf/ctf.c
+++ lttng-babeltrace-0.8/formats/ctf/ctf.c
@@ -32,6 +32,7 @@
 #include <sys/stat.h>
 #include <fcntl.h>
 #include <dirent.h>
+#include <features.h>
 #include <glib.h>
 #include <unistd.h>
 #include <stdlib.h>
@@ -384,9 +385,11 @@
 		}
 		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: