LCOV - code coverage report
Current view: top level - discof/replay - fd_exec.h (source / functions) Hit Total Coverage
Test: cov.lcov Lines: 0 4 0.0 %
Date: 2025-12-28 05:17:03 Functions: 0 0 -

          Line data    Source code
       1             : #ifndef HEADER_fd_src_discof_replay_fd_exec_h
       2             : #define HEADER_fd_src_discof_replay_fd_exec_h
       3             : 
       4             : /* FIXME: SIMD-0180 - set the correct epochs */
       5           0 : #define FD_SIMD0180_ACTIVE_EPOCH_TESTNET (829)
       6           0 : #define FD_SIMD0180_ACTIVE_EPOCH_MAINNET (841)
       7             : 
       8             : 
       9             : /* Exec tile task types. */
      10           0 : #define FD_EXEC_TT_TXN_EXEC      (1UL) /* Transaction execution. */
      11           0 : #define FD_EXEC_TT_TXN_SIGVERIFY (2UL) /* Transaction sigverify. */
      12             : #define FD_EXEC_TT_LTHASH        (3UL) /* Account lthash. */
      13             : #define FD_EXEC_TT_POH_VERIFY    (4UL) /* PoH hash verification. */
      14             : 
      15             : /* Sent from the replay tile to the exec tiles.  These describe one of
      16             :    several types of tasks for an exec tile.  An idx to the bank in the
      17             :    bank pool must be sent over because the key of the bank will change
      18             :    as FEC sets are processed. */
      19             : 
      20             : struct fd_exec_txn_exec_msg {
      21             :   ulong      bank_idx;
      22             :   ulong      txn_idx;
      23             :   fd_txn_p_t txn;
      24             : 
      25             :   /* Used currently by solcap to maintain ordering of messages
      26             :      this will change to using txn sigs eventually */
      27             :   ulong      capture_txn_idx;
      28             : };
      29             : typedef struct fd_exec_txn_exec_msg fd_exec_txn_exec_msg_t;
      30             : 
      31             : struct fd_exec_txn_sigverify_msg {
      32             :   ulong      bank_idx;
      33             :   ulong      txn_idx;
      34             :   fd_txn_p_t txn;
      35             : };
      36             : typedef struct fd_exec_txn_sigverify_msg fd_exec_txn_sigverify_msg_t;
      37             : 
      38             : union fd_exec_task_msg {
      39             :   fd_exec_txn_exec_msg_t      txn_exec;
      40             :   fd_exec_txn_sigverify_msg_t txn_sigverify;
      41             : };
      42             : typedef union fd_exec_task_msg fd_exec_task_msg_t;
      43             : 
      44             : /* Sent from exec tiles to the replay tile, notifying the replay tile
      45             :    that a task has been completed.  That is, if the task has any
      46             :    observable side effects, such as updates to accounts, then those side
      47             :    effects are fully visible on any other exec tile. */
      48             : 
      49             : struct fd_exec_txn_exec_done_msg {
      50             :   ulong txn_idx;
      51             :   int   err;
      52             : 
      53             :   /* used by monitoring tools */
      54             :   ulong slot;
      55             :   ushort start_shred_idx;
      56             :   ushort end_shred_idx;
      57             : };
      58             : typedef struct fd_exec_txn_exec_done_msg fd_exec_txn_exec_done_msg_t;
      59             : 
      60             : struct fd_exec_txn_sigverify_done_msg {
      61             :   ulong txn_idx;
      62             :   int   err;
      63             : };
      64             : typedef struct fd_exec_txn_sigverify_done_msg fd_exec_txn_sigverify_done_msg_t;
      65             : 
      66             : struct fd_exec_task_done_msg {
      67             :   ulong bank_idx;
      68             :   union {
      69             :     fd_exec_txn_exec_done_msg_t      txn_exec[ 1 ];
      70             :     fd_exec_txn_sigverify_done_msg_t txn_sigverify[ 1 ];
      71             :   };
      72             : };
      73             : typedef struct fd_exec_task_done_msg fd_exec_task_done_msg_t;
      74             : 
      75             : #endif /* HEADER_fd_src_discof_replay_fd_exec_h */

Generated by: LCOV version 1.14