LCOV - code coverage report
Current view: top level - flamenco/runtime/context - fd_capture_ctx.h (source / functions) Hit Total Coverage
Test: cov.lcov Lines: 0 2 0.0 %
Date: 2025-08-05 05:04:49 Functions: 0 0 -

          Line data    Source code
       1             : #ifndef HEADER_fd_src_flamenco_runtime_context_fd_capture_ctx_h
       2             : #define HEADER_fd_src_flamenco_runtime_context_fd_capture_ctx_h
       3             : 
       4             : #include "../../capture/fd_solcap_writer.h"
       5             : 
       6             : /* Context needed to do solcap capture during execution of transactions */
       7             : #define FD_CAPTURE_CTX_ALIGN (8UL)
       8             : struct __attribute__((aligned(FD_CAPTURE_CTX_ALIGN))) fd_capture_ctx {
       9             :   ulong magic; /* ==FD_CAPTURE_CTX_MAGIC */
      10             : 
      11             :   /* Solcap */
      12             :   ulong                    solcap_start_slot;
      13             :   int                      trace_dirfd;
      14             :   int                      trace_mode;
      15             :   fd_solcap_writer_t *     capture;
      16             :   int                      capture_txns; /* Capturing txns can add significant time */
      17             : 
      18             :   /* Checkpointing */
      19             :   ulong                    checkpt_freq;    /* Must be a rooted slot */
      20             :   char const *             checkpt_path;    /* Wksp checkpoint format */
      21             :   char const *             checkpt_archive; /* Funk archive format */
      22             : 
      23             :   /*======== PROTOBUF ========*/
      24             :   char const *             dump_proto_output_dir;
      25             :   char const *             dump_proto_sig_filter;
      26             :   ulong                    dump_proto_start_slot;
      27             : 
      28             :   /* Instruction Capture */
      29             :   int                      dump_instr_to_pb;
      30             : 
      31             :   /* Transaction Capture */
      32             :   int                      dump_txn_to_pb;
      33             : 
      34             :   /* Block Capture */
      35             :   int                      dump_block_to_pb;
      36             : 
      37             :   /* Syscall Capture */
      38             :   int                      dump_syscall_to_pb;
      39             : 
      40             :   /* ELF Capture */
      41             :   int                      dump_elf_to_pb;
      42             : };
      43             : typedef struct fd_capture_ctx fd_capture_ctx_t;
      44           0 : #define FD_CAPTURE_CTX_FOOTPRINT ( sizeof(fd_capture_ctx_t) + fd_solcap_writer_footprint() )
      45           0 : #define FD_CAPTURE_CTX_MAGIC (0x193ECD2A6C395195UL) /* random */
      46             : 
      47             : FD_PROTOTYPES_BEGIN
      48             : 
      49             : void *
      50             : fd_capture_ctx_new( void * mem );
      51             : 
      52             : fd_capture_ctx_t *
      53             : fd_capture_ctx_join( void * mem );
      54             : 
      55             : void *
      56             : fd_capture_ctx_leave( fd_capture_ctx_t * ctx );
      57             : 
      58             : void *
      59             : fd_capture_ctx_delete( void * mem );
      60             : 
      61             : /* Temporary locks to protect the blockstore txn_map. See comment in
      62             :    fd_runtime_write_transaction_status. */
      63             : void
      64             : fd_capture_ctx_txn_status_start_read( void );
      65             : 
      66             : void
      67             : fd_capture_ctx_txn_status_end_read( void );
      68             : 
      69             : void
      70             : fd_capture_ctx_txn_status_start_write( void );
      71             : 
      72             : void
      73             : fd_capture_ctx_txn_status_end_write( void );
      74             : 
      75             : FD_PROTOTYPES_END
      76             : 
      77             : #endif /* HEADER_fd_src_flamenco_runtime_context_fd_capture_ctx_h */

Generated by: LCOV version 1.14