lkml.org 
[lkml]   [2023]   [Jun]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH v3 00/10] tracing: introducing eventfs
    Date
    Events Tracing infrastructure contains lot of files, directories
    (internally in terms of inodes, dentries). And ends up by consuming
    memory in MBs. We can have multiple events of Events Tracing, which
    further requires more memory.

    Instead of creating inodes/dentries, eventfs could keep meta-data and
    skip the creation of inodes/dentries. As and when require, eventfs will
    create the inodes/dentries only for required files/directories.
    Also eventfs would delete the inodes/dentries once no more requires
    but preserve the meta data.

    Tracing events took ~9MB, with this approach it took ~4.5MB
    for ~10K files/dir.

    v2:
    Patch 01: new patch:'Require all trace events to have a TRACE_SYSTEM'
    Patch 02: moved from v1 1/9
    Patch 03: moved from v1 2/9
    As suggested by Zheng Yejian, introduced eventfs_prepare_ef()
    helper function to add files or directories to eventfs
    fix WARNING reported by kernel test robot in v1 8/9
    Patch 04: moved from v1 3/9
    used eventfs_prepare_ef() to add files
    fix WARNING reported by kernel test robot in v1 8/9
    Patch 05: moved from v1 4/9
    fix compiling warning reported by kernel test robot in v1 4/9
    Patch 06: moved from v1 5/9
    Patch 07: moved from v1 6/9
    Patch 08: moved from v1 7/9
    Patch 09: moved from v1 8/9
    rebased because of v3 01/10
    Patch 10: moved from v1 9/9

    v1:
    Patch 1: add header file
    Patch 2: resolved kernel test robot issues
    protecting eventfs lists using nested eventfs_rwsem
    Patch 3: protecting eventfs lists using nested eventfs_rwsem
    Patch 4: improve events cleanup code to fix crashes
    Patch 5: resolved kernel test robot issues
    removed d_instantiate_anon() calls
    Patch 6: resolved kernel test robot issues
    fix kprobe test in eventfs_root_lookup()
    protecting eventfs lists using nested eventfs_rwsem
    Patch 7: remove header file
    Patch 8: pass eventfs_rwsem as argument to eventfs functions
    called eventfs_remove_events_dir() instead of tracefs_remove()
    from event_trace_del_tracer()
    Patch 9: new patch to fix kprobe test case

    fs/tracefs/Makefile | 1 +
    fs/tracefs/event_inode.c | 757 ++++++++++++++++++
    fs/tracefs/inode.c | 124 ++-
    fs/tracefs/internal.h | 25 +
    include/linux/trace_events.h | 1 +
    include/linux/tracefs.h | 49 ++
    kernel/trace/trace.h | 3 +-
    kernel/trace/trace_events.c | 78 +-
    .../ftrace/test.d/kprobe/kprobe_args_char.tc | 4 +-
    .../test.d/kprobe/kprobe_args_string.tc | 4 +-
    10 files changed, 994 insertions(+), 52 deletions(-)
    create mode 100644 fs/tracefs/event_inode.c
    create mode 100644 fs/tracefs/internal.h

    --
    2.40.0

    \
     
     \ /
      Last update: 2023-06-01 11:02    [W:5.477 / U:0.060 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site