X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ea9cce21b6d3f37823143217f1ca183bb2f0c9ac..e8a8a4eff62f09fde8d73dae597bfbd09f3c9786:/src/mc/mc_unw_vmread.cpp diff --git a/src/mc/mc_unw_vmread.cpp b/src/mc/mc_unw_vmread.cpp index 3893ec9a1c..45e767b592 100644 --- a/src/mc/mc_unw_vmread.cpp +++ b/src/mc/mc_unw_vmread.cpp @@ -1,10 +1,16 @@ +/* Copyright (c) 2015. The SimGrid Team. + * All rights reserved. */ + +/* This program is free software; you can redistribute it and/or modify it + * under the terms of the license (GNU LGPL) which comes with this package. */ + #include #include #include #include -#include "mc_unw.h" +#include "src/mc/mc_unw.h" extern "C" { @@ -42,7 +48,6 @@ static int access_mem(const unw_addr_space_t as, { if (write) return - UNW_EINVAL; - ssize_t s; pid_t pid = _UPT_getpid(arg); size_t size = sizeof(unw_word_t); @@ -52,7 +57,7 @@ static int access_mem(const unw_addr_space_t as, struct iovec local = { valp, size }; struct iovec remote = { (void*) addr, size }; - s = process_vm_readv(pid, &local, 1, &remote, 1, 0); + ssize_t s = process_vm_readv(pid, &local, 1, &remote, 1, 0); if (s >= 0) { if ((size_t) s != size) return - UNW_EINVAL; @@ -69,7 +74,7 @@ static int access_mem(const unw_addr_space_t as, size_t count = size; off_t off = (off_t) addr; char* buf = (char*) valp; - int fd = MC_process_vm_open(pid, O_RDONLY); + int fd = simgrid::mc::open_vm(pid, O_RDONLY); if (fd < 0) return - UNW_EINVAL; while (1) { @@ -97,14 +102,14 @@ static int access_mem(const unw_addr_space_t as, unw_accessors_t mc_unw_vmread_accessors = { - .find_proc_info = &_UPT_find_proc_info, - .put_unwind_info = &_UPT_put_unwind_info, - .get_dyn_info_list_addr = &_UPT_get_dyn_info_list_addr, - .access_mem = &access_mem, - .access_reg = &_UPT_access_reg, - .access_fpreg = &_UPT_access_fpreg, - .resume = &_UPT_resume, - .get_proc_name = &_UPT_get_proc_name + &_UPT_find_proc_info, + &_UPT_put_unwind_info, + &_UPT_get_dyn_info_list_addr, + &access_mem, + &_UPT_access_reg, + &_UPT_access_fpreg, + &_UPT_resume, + &_UPT_get_proc_name }; }