[lttng-dev] [babeltrace] FTS does not support large files on 32-bit

Mathieu Desnoyers mathieu.desnoyers at efficios.com
Sat Jun 30 14:53:35 EDT 2012

Hi Yannick,

The babeltrace commit:

commit 6cba487f031260536d6a77acde888c8b1a876fcf
Author: Mathieu Desnoyers <mathieu.desnoyers at efficios.com>
Date:   Fri Feb 10 12:01:01 2012 -0500

    babeltrace lib cleanup, folded with open/remove trace functions
    Folded patch from Yannick Brosseau <yannick.brosseau at gmail.com>, along
    with various updates and cleanups, related to babeltrace lib.
    Original changelog from Yannick Brosseau:
        Move the trace_collection into its own file.
        Port the converter to uses the new functions
    Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers at efficios.com>

Introduces fts(3) as a replacement for ftw(3). However, it seems that
FTS does not support large files (LFS), which I need to turn on in
babeltrace. fts.h shows why:

/* The fts interface is incompatible with the LFS interface which
   transparently uses the 64-bit file access functions.  */
#ifdef __USE_FILE_OFFSET64
# error "<fts.h> cannot be used with -D_FILE_OFFSET_BITS==64"

We should therefore go back to FTW to support large files on 32-bit. Is
there any reason why we moved from ftw to fts ?



Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.

More information about the lttng-dev mailing list