Skip to content

Commit 8143899

Browse files
authored
Merge branch 'main' into mjain/add-syscall-name-filters
2 parents 278d2a5 + fcc2356 commit 8143899

30 files changed

+941
-154
lines changed

src/app/firedancer-dev/commands/backtest.c

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,7 @@ backtest_topo( config_t * config ) {
150150
fd_topob_wksp( topo, "snaplv" );
151151
FOR(snaplh_tile_cnt) fd_topob_tile( topo, "snaplh", "snaplh", "metric_in", ULONG_MAX, 0, 0 )->allow_shutdown = 1;
152152
/**/ fd_topob_tile( topo, "snaplv", "snaplv", "metric_in", ULONG_MAX, 0, 0 )->allow_shutdown = 1;
153+
fd_topob_wksp( topo, "vinyl_admin" );
153154
} else {
154155
fd_topob_wksp( topo, "snapla" );
155156
fd_topob_wksp( topo, "snapls" );
@@ -205,7 +206,6 @@ backtest_topo( config_t * config ) {
205206
fd_topob_wksp( topo, "snaplh_lv" );
206207
fd_topob_wksp( topo, "snapwm_lv" );
207208
fd_topob_wksp( topo, "snaplv_ct" );
208-
fd_topob_wksp( topo, "snaplv_wr" );
209209
} else {
210210
fd_topob_wksp( topo, "snapla_ls" );
211211
fd_topob_wksp( topo, "snapin_ls" );
@@ -250,7 +250,6 @@ backtest_topo( config_t * config ) {
250250
/**/ fd_topob_link( topo, "snapwm_lv", "snapwm_lv", 32768UL, FD_SNAPWM_DUP_META_BATCH_SZ, 1UL );
251251
/**/ fd_topob_link( topo, "snaplv_lh", "snaplv_lh", 262144UL, FD_SNAPLV_DUP_META_SZ, FD_SNAPLV_STEM_BURST ); /* FD_SNAPWM_DUP_META_BATCH_CNT_MAX times the depth of snapwm_lv */
252252
/**/ fd_topob_link( topo, "snaplv_ct", "snaplv_ct", 128UL, 0UL, 1UL );
253-
/**/ fd_topob_link( topo, "snaplv_wr", "snaplv_wr", 128UL, 0UL, 1UL ); /* no dcache, only mcache fseq is used on this link. */
254253
} else {
255254
FOR(lta_tile_cnt) fd_topob_link( topo, "snapla_ls", "snapla_ls", 128UL, sizeof(fd_lthash_value_t), 1UL );
256255
/**/ fd_topob_link( topo, "snapin_ls", "snapin_ls", 256UL, sizeof(fd_snapshot_full_account_t), 1UL );
@@ -313,11 +312,15 @@ backtest_topo( config_t * config ) {
313312
FOR(snaplh_tile_cnt) fd_topob_tile_out( topo, "snaplh", i, "snaplh_lv", i );
314313
/**/ fd_topob_tile_in ( topo, "snaplv", 0UL, "metric_in", "snapwm_lv", 0UL, FD_TOPOB_RELIABLE, FD_TOPOB_POLLED );
315314
FOR(snaplh_tile_cnt) fd_topob_tile_in ( topo, "snaplv", 0UL, "metric_in", "snaplh_lv", i, FD_TOPOB_RELIABLE, FD_TOPOB_POLLED );
316-
/**/ fd_topob_tile_out( topo, "snaplv", 0UL, "snaplv_wr", 0UL );
317-
FOR(snapwr_tile_cnt) fd_topob_tile_in ( topo, "snapwr", i, "metric_in", "snaplv_wr", 0UL, FD_TOPOB_RELIABLE, FD_TOPOB_POLLED );
318315
/**/ fd_topob_tile_out( topo, "snaplv", 0UL, "snaplv_ct", 0UL );
319316
/**/ fd_topob_tile_out( topo, "snapwm", 0UL, "snapwm_lv", 0UL );
320-
FOR(snapwr_tile_cnt) fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snapwr", i ) ], &topo->objs[ topo->links[ fd_topo_find_link( topo, "snaplv_wr", 0UL ) ].mcache_obj_id ], FD_SHMEM_JOIN_MODE_READ_WRITE );
317+
318+
fd_topo_obj_t * vinyl_admin_obj = setup_topo_vinyl_admin( topo, "vinyl_admin" );
319+
/**/ fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snapwm", 0UL ) ], vinyl_admin_obj, FD_SHMEM_JOIN_MODE_READ_WRITE );
320+
FOR(snapwr_tile_cnt) fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snapwr", i ) ], vinyl_admin_obj, FD_SHMEM_JOIN_MODE_READ_WRITE );
321+
/**/ fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snaplv", 0UL ) ], vinyl_admin_obj, FD_SHMEM_JOIN_MODE_READ_WRITE );
322+
FOR(snaplh_tile_cnt) fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snaplh", i ) ], vinyl_admin_obj, FD_SHMEM_JOIN_MODE_READ_WRITE );
323+
FD_TEST( fd_pod_insertf_ulong( topo->props, vinyl_admin_obj->id, "vinyl_admin" ) );
321324
} else {
322325
FOR(lta_tile_cnt) fd_topob_tile_in ( topo, "snapla", i, "metric_in", "snapdc_in", 0UL, FD_TOPOB_RELIABLE, FD_TOPOB_POLLED );
323326
FOR(lta_tile_cnt) fd_topob_tile_out( topo, "snapla", i, "snapla_ls", i );

src/app/firedancer-dev/commands/snapshot_load.c

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -126,11 +126,11 @@ snapshot_load_topo( config_t * config ) {
126126
fd_topob_wksp( topo, "snaplv" );
127127
FOR(snaplh_tile_cnt) fd_topob_tile( topo, "snaplh", "snaplh", "metric_in", ULONG_MAX, 0, 0 )->allow_shutdown = 1;
128128
/**/ fd_topob_tile( topo, "snaplv", "snaplv", "metric_in", ULONG_MAX, 0, 0 )->allow_shutdown = 1;
129+
fd_topob_wksp( topo, "vinyl_admin" );
129130
fd_topob_wksp( topo, "snaplv_lh" );
130131
fd_topob_wksp( topo, "snaplh_lv" );
131132
fd_topob_wksp( topo, "snapwm_lv" );
132133
fd_topob_wksp( topo, "snaplv_ct" );
133-
fd_topob_wksp( topo, "snaplv_wr" );
134134
} else {
135135
fd_topob_wksp( topo, "snapla" );
136136
fd_topob_wksp( topo, "snapls" );
@@ -179,7 +179,6 @@ snapshot_load_topo( config_t * config ) {
179179
/**/ fd_topob_link( topo, "snapwm_lv", "snapwm_lv", 32768UL, FD_SNAPWM_DUP_META_BATCH_SZ, 1UL );
180180
/**/ fd_topob_link( topo, "snaplv_lh", "snaplv_lh", 262144UL, FD_SNAPLV_DUP_META_SZ, FD_SNAPLV_STEM_BURST ); /* FD_SNAPWM_DUP_META_BATCH_CNT_MAX times the depth of snapwm_lv */
181181
/**/ fd_topob_link( topo, "snaplv_ct", "snaplv_ct", 128UL, 0UL, 1UL );
182-
/**/ fd_topob_link( topo, "snaplv_wr", "snaplv_wr", 128UL, 0UL, 1UL ); /* no dcache, only mcache fseq is used on this link. */
183182
} else {
184183
FOR(lta_tile_cnt) fd_topob_link( topo, "snapla_ls", "snapla_ls", 128UL, sizeof(fd_lthash_value_t), 1UL );
185184
/**/ fd_topob_link( topo, "snapin_ls", "snapin_ls", 256UL, sizeof(fd_snapshot_full_account_t), 1UL );
@@ -241,11 +240,15 @@ snapshot_load_topo( config_t * config ) {
241240
FOR(snaplh_tile_cnt) fd_topob_tile_out( topo, "snaplh", i, "snaplh_lv", i );
242241
/**/ fd_topob_tile_in ( topo, "snaplv", 0UL, "metric_in", "snapwm_lv", 0UL, FD_TOPOB_RELIABLE, FD_TOPOB_POLLED );
243242
FOR(snaplh_tile_cnt) fd_topob_tile_in ( topo, "snaplv", 0UL, "metric_in", "snaplh_lv", i, FD_TOPOB_RELIABLE, FD_TOPOB_POLLED );
244-
/**/ fd_topob_tile_out( topo, "snaplv", 0UL, "snaplv_wr", 0UL );
245-
FOR(snapwr_tile_cnt) fd_topob_tile_in ( topo, "snapwr", i, "metric_in", "snaplv_wr", 0UL, FD_TOPOB_RELIABLE, FD_TOPOB_POLLED );
246243
/**/ fd_topob_tile_out( topo, "snaplv", 0UL, "snaplv_ct", 0UL );
247244
/**/ fd_topob_tile_out( topo, "snapwm", 0UL, "snapwm_lv", 0UL );
248-
FOR(snapwr_tile_cnt) fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snapwr", i ) ], &topo->objs[ topo->links[ fd_topo_find_link( topo, "snaplv_wr", 0UL ) ].mcache_obj_id ], FD_SHMEM_JOIN_MODE_READ_WRITE );
245+
246+
fd_topo_obj_t * vinyl_admin_obj = setup_topo_vinyl_admin( topo, "vinyl_admin" );
247+
/**/ fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snapwm", 0UL ) ], vinyl_admin_obj, FD_SHMEM_JOIN_MODE_READ_WRITE );
248+
FOR(snapwr_tile_cnt) fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snapwr", i ) ], vinyl_admin_obj, FD_SHMEM_JOIN_MODE_READ_WRITE );
249+
/**/ fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snaplv", 0UL ) ], vinyl_admin_obj, FD_SHMEM_JOIN_MODE_READ_WRITE );
250+
FOR(snaplh_tile_cnt) fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snaplh", i ) ], vinyl_admin_obj, FD_SHMEM_JOIN_MODE_READ_WRITE );
251+
FD_TEST( fd_pod_insertf_ulong( topo->props, vinyl_admin_obj->id, "vinyl_admin" ) );
249252
} else {
250253
FOR(lta_tile_cnt) fd_topob_tile_in ( topo, "snapla", i, "metric_in", "snapdc_in", 0UL, FD_TOPOB_RELIABLE, FD_TOPOB_POLLED );
251254
FOR(lta_tile_cnt) fd_topob_tile_out( topo, "snapla", i, "snapla_ls", i );

src/app/firedancer-dev/commands/tower.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ tower_cmd_fn_ghost( args_t * args,
174174
FD_LOG_NOTICE(( "root slot %lu", fd_ghost_root( ghost )->slot ));
175175

176176
for( ;; ) {
177-
fd_ghost_print( ghost, fd_ghost_root( ghost ), NULL );
177+
fd_ghost_print( ghost, fd_ghost_root( ghost ) );
178178
sleep( 1 );
179179
}
180180
}
@@ -190,7 +190,7 @@ tower_cmd_fn_tower( args_t * args,
190190
fd_tower_t * tower = (fd_tower_t *)fd_wksp_laddr( tower_wksp->wksp, tower_laddr );
191191

192192
for( ;; ) {
193-
fd_tower_print( tower, ULONG_MAX, NULL );
193+
fd_tower_print( tower, ULONG_MAX );
194194
sleep( 1 );
195195
}
196196
}

src/app/firedancer-dev/main.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ extern fd_topo_obj_callbacks_t fd_obj_cb_vinyl_data;
3232
extern fd_topo_obj_callbacks_t fd_obj_cb_vinyl_req_pool;
3333
extern fd_topo_obj_callbacks_t fd_obj_cb_vinyl_rq;
3434
extern fd_topo_obj_callbacks_t fd_obj_cb_vinyl_cq;
35+
extern fd_topo_obj_callbacks_t fd_obj_cb_vinyl_admin;
3536

3637
fd_topo_obj_callbacks_t * CALLBACKS[] = {
3738
&fd_obj_cb_mcache,
@@ -57,6 +58,7 @@ fd_topo_obj_callbacks_t * CALLBACKS[] = {
5758
&fd_obj_cb_vinyl_req_pool,
5859
&fd_obj_cb_vinyl_rq,
5960
&fd_obj_cb_vinyl_cq,
61+
&fd_obj_cb_vinyl_admin,
6062
NULL,
6163
};
6264

src/app/firedancer/callbacks_vinyl.c

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
#include "../../vinyl/fd_vinyl.h"
22
#include "../../disco/topo/fd_topo.h"
3+
#include "../../discof/restore/utils/fd_vinyl_admin.h"
34
#include "../../flamenco/accdb/fd_vinyl_req_pool.h"
45
#include "../../util/pod/fd_pod_format.h"
56

@@ -196,3 +197,30 @@ fd_topo_obj_callbacks_t fd_obj_cb_vinyl_cq = {
196197
.align = vinyl_cq_align,
197198
.new = vinyl_cq_new,
198199
};
200+
201+
static ulong
202+
vinyl_admin_footprint( fd_topo_t const * topo FD_PARAM_UNUSED,
203+
fd_topo_obj_t const * obj FD_PARAM_UNUSED ) {
204+
return sizeof(fd_vinyl_admin_t);
205+
}
206+
207+
static ulong
208+
vinyl_admin_align( fd_topo_t const * topo FD_PARAM_UNUSED,
209+
fd_topo_obj_t const * obj FD_PARAM_UNUSED ) {
210+
return alignof(fd_vinyl_admin_t);
211+
}
212+
213+
static void
214+
vinyl_admin_new( fd_topo_t const * topo,
215+
fd_topo_obj_t const * obj ) {
216+
fd_vinyl_admin_new( fd_topo_obj_laddr( topo, obj->id ) );
217+
}
218+
219+
fd_topo_obj_callbacks_t fd_obj_cb_vinyl_admin = {
220+
.name = "vinyl_admin",
221+
.footprint = vinyl_admin_footprint,
222+
.align = vinyl_admin_align,
223+
.new = vinyl_admin_new,
224+
};
225+
226+
#undef VAL

src/app/firedancer/config/default.toml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1489,10 +1489,9 @@ telemetry = true
14891489
max_vote_lookahead = 4096
14901490

14911491
# Whether to enable debug logging for the tower tile. If
1492-
# enabled, the tower tile will write a fork tree and tower
1493-
# information to `base/tower-debug.log` once per slot. Can
1494-
# produce a lot of log data, so it is recommended to put it on a
1495-
# `logrotate`, see [log] for more details.
1492+
# enabled, the tower tile will print ghost and tower to the log
1493+
# file. This will generate a lot of data, so by default it is
1494+
# disabled.
14961495
debug_logging = false
14971496

14981497
# The txsend tile is responsible for sending transactions out to

src/app/firedancer/main.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ extern fd_topo_obj_callbacks_t fd_obj_cb_vinyl_data;
2929
extern fd_topo_obj_callbacks_t fd_obj_cb_vinyl_req_pool;
3030
extern fd_topo_obj_callbacks_t fd_obj_cb_vinyl_rq;
3131
extern fd_topo_obj_callbacks_t fd_obj_cb_vinyl_cq;
32+
extern fd_topo_obj_callbacks_t fd_obj_cb_vinyl_admin;
3233

3334
fd_topo_obj_callbacks_t * CALLBACKS[] = {
3435
&fd_obj_cb_mcache,
@@ -54,6 +55,7 @@ fd_topo_obj_callbacks_t * CALLBACKS[] = {
5455
&fd_obj_cb_vinyl_req_pool,
5556
&fd_obj_cb_vinyl_rq,
5657
&fd_obj_cb_vinyl_cq,
58+
&fd_obj_cb_vinyl_admin,
5759
NULL,
5860
};
5961

src/app/firedancer/topology.c

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,13 @@ setup_topo_accdb_cache( fd_topo_t * topo,
209209
return line_obj;
210210
}
211211

212+
fd_topo_obj_t *
213+
setup_topo_vinyl_admin( fd_topo_t * topo,
214+
char const * wksp_name ) {
215+
fd_topo_obj_t * obj = fd_topob_obj( topo, "vinyl_admin", wksp_name );
216+
return obj;
217+
}
218+
212219
/* Resolves a hostname to a single ip address. If multiple ip address
213220
records are returned by getaddrinfo, only the first IPV4 address is
214221
returned via ip_addr. */
@@ -486,11 +493,11 @@ fd_topo_initialize( config_t * config ) {
486493
if( vinyl_enabled ) {
487494
fd_topob_wksp( topo, "snaplh" );
488495
fd_topob_wksp( topo, "snaplv" );
496+
fd_topob_wksp( topo, "vinyl_admin" );
489497
fd_topob_wksp( topo, "snaplv_lh" );
490498
fd_topob_wksp( topo, "snaplh_lv" );
491499
fd_topob_wksp( topo, "snapwm_lv" );
492500
fd_topob_wksp( topo, "snaplv_ct" );
493-
fd_topob_wksp( topo, "snaplv_wr" );
494501
} else {
495502
fd_topob_wksp( topo, "snapla" );
496503
fd_topob_wksp( topo, "snapls" );
@@ -560,7 +567,6 @@ fd_topo_initialize( config_t * config ) {
560567
/**/ fd_topob_link( topo, "snapwm_lv", "snapwm_lv", 32768UL, FD_SNAPWM_DUP_META_BATCH_SZ, 1UL );
561568
/**/ fd_topob_link( topo, "snaplv_lh", "snaplv_lh", 262144UL, FD_SNAPLV_DUP_META_SZ, FD_SNAPLV_STEM_BURST ); /* FD_SNAPWM_DUP_META_BATCH_CNT_MAX times the depth of snapwm_lv */
562569
/**/ fd_topob_link( topo, "snaplv_ct", "snaplv_ct", 128UL, 0UL, 1UL );
563-
/**/ fd_topob_link( topo, "snaplv_wr", "snaplv_wr", 128UL, 0UL, 1UL ); /* no dcache, only mcache fseq is used on this link. */
564570
} else {
565571
FOR(lta_tile_cnt) fd_topob_link( topo, "snapla_ls", "snapla_ls", 128UL, sizeof(fd_lthash_value_t), 1UL );
566572
/**/ fd_topob_link( topo, "snapin_ls", "snapin_ls", 256UL, sizeof(fd_snapshot_full_account_t), 1UL );
@@ -836,12 +842,16 @@ fd_topo_initialize( config_t * config ) {
836842
FOR(snaplh_tile_cnt) fd_topob_tile_out( topo, "snaplh", i, "snaplh_lv", i );
837843
/**/ fd_topob_tile_in ( topo, "snaplv", 0UL, "metric_in", "snapwm_lv", 0UL, FD_TOPOB_RELIABLE, FD_TOPOB_POLLED );
838844
FOR(snaplh_tile_cnt) fd_topob_tile_in ( topo, "snaplv", 0UL, "metric_in", "snaplh_lv", i, FD_TOPOB_RELIABLE, FD_TOPOB_POLLED );
839-
/**/ fd_topob_tile_out( topo, "snaplv", 0UL, "snaplv_wr", 0UL );
840-
FOR(snapwr_tile_cnt) fd_topob_tile_in ( topo, "snapwr", i, "metric_in", "snaplv_wr", 0UL, FD_TOPOB_RELIABLE, FD_TOPOB_POLLED );
841845
/**/ fd_topob_tile_out( topo, "snaplv", 0UL, "snaplv_ct", 0UL );
842846
/**/ fd_topob_tile_out( topo, "snapwm", 0UL, "snapwm_lv", 0UL );
843847
/**/ fd_topob_tile_in ( topo, "snapct", 0UL, "metric_in", "snaplv_ct", 0UL, FD_TOPOB_RELIABLE, FD_TOPOB_POLLED );
844-
FOR(snapwr_tile_cnt) fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snapwr", i ) ], &topo->objs[ topo->links[ fd_topo_find_link( topo, "snaplv_wr", 0UL ) ].mcache_obj_id ], FD_SHMEM_JOIN_MODE_READ_WRITE );
848+
849+
fd_topo_obj_t * vinyl_admin_obj = setup_topo_vinyl_admin( topo, "vinyl_admin" );
850+
/**/ fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snapwm", 0UL ) ], vinyl_admin_obj, FD_SHMEM_JOIN_MODE_READ_WRITE );
851+
FOR(snapwr_tile_cnt) fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snapwr", i ) ], vinyl_admin_obj, FD_SHMEM_JOIN_MODE_READ_WRITE );
852+
/**/ fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snaplv", 0UL ) ], vinyl_admin_obj, FD_SHMEM_JOIN_MODE_READ_WRITE );
853+
FOR(snaplh_tile_cnt) fd_topob_tile_uses( topo, &topo->tiles[ fd_topo_find_tile( topo, "snaplh", i ) ], vinyl_admin_obj, FD_SHMEM_JOIN_MODE_READ_WRITE );
854+
FD_TEST( fd_pod_insertf_ulong( topo->props, vinyl_admin_obj->id, "vinyl_admin" ) );
845855
} else {
846856
fd_topob_tile_out( topo, "snapin", 0UL, "snapin_ls", 0UL );
847857
FOR(lta_tile_cnt) fd_topob_tile_in( topo, "snapla", i, "metric_in", "snapdc_in", 0UL, FD_TOPOB_RELIABLE, FD_TOPOB_POLLED );
@@ -1449,7 +1459,6 @@ fd_topo_configure_tile( fd_topo_tile_t * tile,
14491459

14501460
} else if( FD_UNLIKELY( !strcmp( tile->name, "snapwm" ) ) ) {
14511461

1452-
tile->snapwm.lthash_disabled = !!config->development.snapshots.disable_lthash_verification;
14531462
strcpy( tile->snapwm.vinyl_path, config->paths.accounts );
14541463
tile->snapwm.vinyl_meta_map_obj_id = fd_pod_query_ulong( config->topo.props, "accdb.meta_map", ULONG_MAX );
14551464
tile->snapwm.vinyl_meta_pool_obj_id = fd_pod_query_ulong( config->topo.props, "accdb.meta_pool", ULONG_MAX );
@@ -1459,6 +1468,8 @@ fd_topo_configure_tile( fd_topo_tile_t * tile,
14591468
fd_topo_link_t * wm_wr_link = &config->topo.links[ wm_wr_link_id ];
14601469
tile->snapwm.snapwr_depth = wm_wr_link->depth;
14611470

1471+
tile->snapwm.lthash_disabled = !!config->development.snapshots.disable_lthash_verification;
1472+
14621473
} else if( FD_UNLIKELY( !strcmp( tile->name, "snapwh" ) ) ) {
14631474

14641475
} else if( FD_UNLIKELY( !strcmp( tile->name, "snapwr" ) ) ) {
@@ -1469,6 +1480,8 @@ fd_topo_configure_tile( fd_topo_tile_t * tile,
14691480
fd_topo_link_t * wm_wr_link = &config->topo.links[ wm_wr_link_id ];
14701481
tile->snapwr.dcache_obj_id = wm_wr_link->dcache_obj_id;
14711482

1483+
tile->snapwr.lthash_disabled = !!config->development.snapshots.disable_lthash_verification;
1484+
14721485
} else if( FD_UNLIKELY( !strcmp( tile->name, "snapla" ) ) ) {
14731486

14741487
} else if( FD_UNLIKELY( !strcmp( tile->name, "snapls" ) ) ) {

src/app/firedancer/topology.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,10 @@ fd_topo_obj_t *
6262
setup_topo_accdb_cache( fd_topo_t * topo,
6363
fd_configf_t * config );
6464

65+
fd_topo_obj_t *
66+
setup_topo_vinyl_admin( fd_topo_t * topo,
67+
char const * wksp_name );
68+
6569
void
6670
fd_topo_configure_tile( fd_topo_tile_t * tile,
6771
fd_config_t * config );

0 commit comments

Comments
 (0)