fix: conditional compilation of syx-related code in block-backend.c.

This commit is contained in:
Romain Malmain 2024-03-08 11:13:02 +01:00
parent 465f2c77af
commit f282d6aef5
No known key found for this signature in database
GPG Key ID: 02E4A13F7415468A

View File

@ -29,7 +29,9 @@
#include "migration/misc.h" #include "migration/misc.h"
//// --- Begin LibAFL code --- //// --- Begin LibAFL code ---
#ifdef CONFIG_SOFTMMU
#include "libafl_extras/syx-snapshot/syx-snapshot.h" #include "libafl_extras/syx-snapshot/syx-snapshot.h"
#endif
//// --- End LibAFL code --- //// --- End LibAFL code ---
/* Number of coroutines to reserve per attached device model */ /* Number of coroutines to reserve per attached device model */
@ -736,9 +738,7 @@ bool monitor_add_blk(BlockBackend *blk, const char *name, Error **errp)
blk->name = g_strdup(name); blk->name = g_strdup(name);
//// --- Begin LibAFL code --- //// --- Begin LibAFL code ---
blk->name_hash = g_str_hash(blk->name); blk->name_hash = g_str_hash(blk->name);
//// --- End LibAFL code --- //// --- End LibAFL code ---
QTAILQ_INSERT_TAIL(&monitor_block_backends, blk, monitor_link); QTAILQ_INSERT_TAIL(&monitor_block_backends, blk, monitor_link);
return true; return true;
@ -1674,14 +1674,18 @@ static void coroutine_fn blk_aio_read_entry(void *opaque)
assert(qiov->size == acb->bytes); assert(qiov->size == acb->bytes);
//// --- Begin LibAFL code --- //// --- Begin LibAFL code ---
#ifdef CONFIG_SOFTMMU
if (!syx_snapshot_cow_cache_read_entry(rwco->blk, rwco->offset, acb->bytes, qiov, 0, rwco->flags)) { if (!syx_snapshot_cow_cache_read_entry(rwco->blk, rwco->offset, acb->bytes, qiov, 0, rwco->flags)) {
#endif
//// --- End LibAFL code --- //// --- End LibAFL code ---
rwco->ret = blk_co_do_preadv_part(rwco->blk, rwco->offset, acb->bytes, qiov, rwco->ret = blk_co_do_preadv_part(rwco->blk, rwco->offset, acb->bytes, qiov,
0, rwco->flags); 0, rwco->flags);
//// --- Begin LibAFL code --- //// --- Begin LibAFL code ---
#ifdef CONFIG_SOFTMMU
} else { } else {
rwco->ret = 0; rwco->ret = 0;
} }
#endif
//// --- End LibAFL code --- //// --- End LibAFL code ---
blk_aio_complete(acb); blk_aio_complete(acb);
@ -1695,12 +1699,19 @@ static void coroutine_fn blk_aio_write_entry(void *opaque)
assert(!qiov || qiov->size == acb->bytes); assert(!qiov || qiov->size == acb->bytes);
//// --- Begin LibAFL code ---
#ifdef CONFIG_SOFTMMU
if (!syx_snapshot_cow_cache_write_entry(rwco->blk, rwco->offset, acb->bytes, qiov, 0, rwco->flags)) { if (!syx_snapshot_cow_cache_write_entry(rwco->blk, rwco->offset, acb->bytes, qiov, 0, rwco->flags)) {
rwco->ret = blk_co_do_pwritev_part(rwco->blk, rwco->offset, acb->bytes, #endif
qiov, 0, rwco->flags); //// --- End LibAFL code ---
rwco->ret = blk_co_do_pwritev_part(rwco->blk, rwco->offset, acb->bytes, qiov, 0, rwco->flags);
//// --- Begin LibAFL code ---
#ifdef CONFIG_SOFTMMU
} else { } else {
rwco->ret = 0; rwco->ret = 0;
} }
#endif
//// --- End LibAFL code ---
blk_aio_complete(acb); blk_aio_complete(acb);
} }