fixed oopses during merging

This commit is contained in:
Romain Malmain 2024-10-25 22:34:01 +02:00
parent 67dabac1ed
commit ad1628c6e6
No known key found for this signature in database
GPG Key ID: 02E4A13F7415468A
6 changed files with 19 additions and 4 deletions

View File

@ -779,6 +779,8 @@ BlockBackend *blk_by_name(const char *name)
return NULL;
}
//// --- Begin LibAFL code ---
///
/*
* Return the BlockBackend with name hash @name_hash if it exists, else null.
*/
@ -795,6 +797,8 @@ BlockBackend *blk_by_name_hash(guint name_hash)
return NULL;
}
//// --- End LibAFL code ---
/*
* Return the BlockDriverState attached to @blk if any, else null.
*/

View File

@ -318,10 +318,11 @@ void gdb_handle_query_rcmd(GArray *params, void *user_ctx)
gdb_put_packet("");
}
}
#endif
//// --- End LibAFL code ---
#endif
static const char *get_filename_param(GArray *params, int i)
{
const char *hex_filename = gdb_get_cmd_param(params, i)->data;

View File

@ -53,19 +53,27 @@ typedef TCGv_i32 TCGv;
#define tcg_temp_new() tcg_temp_new_i32()
#define tcg_global_mem_new tcg_global_mem_new_i32
#define tcgv_tl_temp tcgv_i32_temp
//// --- Begin LibAFL code ---
#define temp_tcgv_tl temp_tcgv_i32
//// --- End LibAFL code ---
#define tcg_gen_qemu_ld_tl tcg_gen_qemu_ld_i32
#define tcg_gen_qemu_st_tl tcg_gen_qemu_st_i32
//// --- Begin LibAFL code ---
#define tcg_gen_tl_ptr tcg_gen_ext_i32_ptr
//// --- End LibAFL code ---
#elif TARGET_LONG_BITS == 64
typedef TCGv_i64 TCGv;
#define tcg_temp_new() tcg_temp_new_i64()
#define tcg_global_mem_new tcg_global_mem_new_i64
#define tcgv_tl_temp tcgv_i64_temp
//// --- Begin LibAFL code ---
#define temp_tcgv_tl temp_tcgv_i64
//// --- End LibAFL code ---
#define tcg_gen_qemu_ld_tl tcg_gen_qemu_ld_i64
#define tcg_gen_qemu_st_tl tcg_gen_qemu_st_i64
//// --- Begin LibAFL code ---
#define tcg_gen_tl_ptr tcg_gen_trunc_i64_ptr
//// --- End LibAFL code ---
#else
#error Unhandled TARGET_LONG_BITS value
#endif

View File

@ -3531,7 +3531,6 @@ endif
qom_ss = qom_ss.apply({})
libqom = static_library('qom', qom_ss.sources() + genh,
dependencies: [qom_ss.dependencies()],
name_suffix: 'fa',
pic: 'AS_SHARED_LIB' in config_host,
build_by_default: false)
qom = declare_dependency(objects: libqom.extract_all_objects(recursive: false),
@ -3540,7 +3539,6 @@ qom = declare_dependency(objects: libqom.extract_all_objects(recursive: false),
event_loop_base = files('event-loop-base.c')
event_loop_base = static_library('event-loop-base',
sources: event_loop_base + genh,
name_suffix: 'fa',
build_by_default: false)
event_loop_base = declare_dependency(objects: event_loop_base.extract_all_objects(recursive: false),
dependencies: [qom])
@ -3774,7 +3772,7 @@ if enable_modules
command: [modinfo_generate, '--devices', config_devices_mak, '@INPUT@'],
capture: true)
modinfo_lib = static_library('modinfo', modinfo_src, pic: 'AS_SHARED_LIB' in config_host)
modinfo_lib = static_library('modinfo-' + target + '.c', modinfo_src, pic: 'AS_SHARED_LIB' in config_host)
modinfo_dep = declare_dependency(link_with: modinfo_lib)
arch = config_target['TARGET_NAME'] == 'sparc64' ? 'sparc64' : config_target['TARGET_BASE_ARCH']

View File

@ -878,13 +878,17 @@ static int cpu_pre_save(void *opaque)
cpu->cpreg_vmstate_array_len = cpu->cpreg_array_len;
//// --- Begin LibAFL code ---
// Some ARM cpus like Cortex M do not have coprocessors
if (cpu->cpreg_array_len > 0) {
//// --- End LibAFL code ---
memcpy(cpu->cpreg_vmstate_indexes, cpu->cpreg_indexes,
cpu->cpreg_array_len * sizeof(uint64_t));
memcpy(cpu->cpreg_vmstate_values, cpu->cpreg_values,
cpu->cpreg_array_len * sizeof(uint64_t));
//// --- Begin LibAFL code ---
}
//// --- End LibAFL code ---
return 0;
}

View File