plugins: Copy memory in qemu_plugin_insn_data

Instead of returning a host pointer, copy the data into
storage provided by the caller.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
Richard Henderson 2024-04-02 21:24:52 -10:00
parent bf4bb074b7
commit 4abc892362
4 changed files with 17 additions and 14 deletions

View file

@ -216,9 +216,12 @@ qemu_plugin_tb_get_insn(const struct qemu_plugin_tb *tb, size_t idx)
* instruction being translated.
*/
const void *qemu_plugin_insn_data(const struct qemu_plugin_insn *insn)
size_t qemu_plugin_insn_data(const struct qemu_plugin_insn *insn,
void *dest, size_t len)
{
return insn->data->data;
len = MIN(len, insn->data->len);
memcpy(dest, insn->data->data, len);
return len;
}
size_t qemu_plugin_insn_size(const struct qemu_plugin_insn *insn)