I hit an fopen failure in ctf_fs_file_open and noticed we were missing
some error causes for the message to be precise. This patch adds them.
This is the result I now get when fopen fails:
...
CAUSED BY [auto-disc-source-ctf-fs-37: 'source.ctf.fs'] (/home/smarchi/src/babeltrace/src/plugins/ctf/fs-src/file.c:98)
Cannot open file: Too many open files: path=/tmp/lttng-traces/000300/mon_10.196.130.21-
20180202-144403/ust/uid/0/64-bit/ch-1_4, mode=rb
Change-Id: I4dae278695b56cbedc9c7e3e5a67bc60fe6584d7
Signed-off-by: Simon Marchi <simon.marchi@efficios.com>
Reviewed-on: https://review.lttng.org/c/babeltrace/+/2230
Tested-by: jenkins <jenkins@lttng.org>
Reviewed-by: Francis Deslauriers <francis.deslauriers@efficios.com>
BT_COMP_LOGI("Opening file \"%s\" with mode \"%s\"", file->path->str, mode);
file->fp = fopen(file->path->str, mode);
if (!file->fp) {
BT_COMP_LOGI("Opening file \"%s\" with mode \"%s\"", file->path->str, mode);
file->fp = fopen(file->path->str, mode);
if (!file->fp) {
- BT_COMP_LOGE("Cannot open file \"%s\" with mode \"%s\": %s",
- file->path->str, mode, strerror(errno));
+ BT_COMP_LOGE_APPEND_CAUSE_ERRNO(file->self_comp,
+ "Cannot open file", ": path=%s, mode=%s",
+ file->path->str, mode);
goto error;
}
BT_COMP_LOGI("Opened file: %p", file->fp);
if (fstat(fileno(file->fp), &stat)) {
goto error;
}
BT_COMP_LOGI("Opened file: %p", file->fp);
if (fstat(fileno(file->fp), &stat)) {
- BT_COMP_LOGE("Cannot get file information: %s", strerror(errno));
+ BT_COMP_LOGE_APPEND_CAUSE_ERRNO(file->self_comp,
+ "Cannot get file information",
+ ": path=%s", file->path->str);