[lttng-dev] [PATCH babeltrace-1.5 6/6] Fix: lttng-live format: do not error out on empty streams hang up
Mathieu Desnoyers
mathieu.desnoyers at efficios.com
Thu Dec 5 01:58:09 EST 2019
Attaching to a stream hung up before providing any trace packet
causes ctf_open_mmap_stream_read() to return an error.
This kind of scenario can happen with the upcoming "lttng clear"
feature.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers at efficios.com>
---
formats/ctf/ctf.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/formats/ctf/ctf.c b/formats/ctf/ctf.c
index 980ebc9a..1ba9017f 100644
--- a/formats/ctf/ctf.c
+++ b/formats/ctf/ctf.c
@@ -2571,8 +2571,13 @@ int ctf_open_mmap_stream_read(struct ctf_trace *td,
}
ret = prepare_mmap_stream_definition(td, file_stream, packet_seek);
- if (ret)
+ if (ret) {
+ /* We need to check for EOF here for empty files. */
+ if (unlikely(file_stream->pos.offset == EOF)) {
+ ret = 0;
+ }
goto error_index;
+ }
/*
* For now, only a single clock per trace is supported.
--
2.17.1
More information about the lttng-dev
mailing list