Skip to content

Commit 2a8a43a

Browse files
committed
rpcserv
1 parent 9eb6cdb commit 2a8a43a

File tree

1 file changed

+12
-3
lines changed

1 file changed

+12
-3
lines changed

src/app/firedancer/topology.c

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -294,7 +294,10 @@ fd_topo_initialize( config_t * config ) {
294294
fd_topob_wksp( topo, "replay_manif" );
295295

296296
fd_topob_wksp( topo, "slot_fseqs" ); /* fseqs for marked slots eg. turbine slot */
297-
if( enable_rpc ) fd_topob_wksp( topo, "rpcsrv" );
297+
if( enable_rpc ) {
298+
fd_topob_wksp( topo, "rpcsrv" );
299+
fd_topob_wksp( topo, "shred_rpcsrv" );
300+
}
298301

299302
#define FOR(cnt) for( ulong i=0UL; i<cnt; i++ )
300303

@@ -370,6 +373,10 @@ fd_topo_initialize( config_t * config ) {
370373
/**/ fd_topob_link( topo, "snapdc_rd", "snapdc_rd", 128UL, 0UL, 1UL );
371374
/**/ fd_topob_link( topo, "snapin_rd", "snapin_rd", 128UL, 0UL, 1UL );
372375

376+
if( enable_rpc ) {
377+
FOR(shred_tile_cnt) fd_topob_link( topo, "shred_rpcsrv", "shred_rpcsrv", pending_fec_shreds_depth, FD_SHRED_REPAIR_MTU, 2UL /* at most 2 msgs per after_frag */ );
378+
}
379+
373380
/* Replay decoded manifest dcache topo obj */
374381
fd_topo_obj_t * replay_manifest_dcache = fd_topob_obj( topo, "dcache", "replay_manif" );
375382
fd_pod_insertf_ulong( topo->props, 2UL << 30UL, "obj.%lu.data_sz", replay_manifest_dcache->id );
@@ -777,8 +784,10 @@ fd_topo_initialize( config_t * config ) {
777784
/**/ fd_topob_tile_out( topo, "replay", 0UL, "replay_notif", 0UL );
778785

779786
if( enable_rpc ) {
780-
fd_topob_tile_in( topo, "rpcsrv", 0UL, "metric_in", "replay_notif", 0UL, FD_TOPOB_UNRELIABLE, FD_TOPOB_POLLED );
781-
fd_topob_tile_in( topo, "rpcsrv", 0UL, "metric_in", "stake_out", 0UL, FD_TOPOB_UNRELIABLE, FD_TOPOB_POLLED );
787+
fd_topob_tile_in( topo, "rpcsrv", 0UL, "metric_in", "replay_notif", 0UL, FD_TOPOB_UNRELIABLE, FD_TOPOB_POLLED );
788+
fd_topob_tile_in( topo, "rpcsrv", 0UL, "metric_in", "stake_out", 0UL, FD_TOPOB_UNRELIABLE, FD_TOPOB_POLLED );
789+
FOR(shred_tile_cnt) fd_topob_tile_in( topo, "rpcsrv", 0UL, "metric_in", "shred_rpcsrv", i, FD_TOPOB_UNRELIABLE, FD_TOPOB_POLLED );
790+
FOR(shred_tile_cnt) fd_topob_tile_out( topo, "shred", i, "shred_rpcsrv", i );
782791
}
783792

784793
/* For now the only plugin consumer is the GUI */

0 commit comments

Comments
 (0)