Martin Quinson [Thu, 1 Dec 2016 21:11:19 +0000 (22:11 +0100)]
Merge branch 'master' of github.com:simgrid/simgrid
Martin Quinson [Thu, 1 Dec 2016 21:10:47 +0000 (22:10 +0100)]
Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid
Martin Quinson [Thu, 1 Dec 2016 20:40:45 +0000 (21:40 +0100)]
cosmetics
Martin Quinson [Thu, 1 Dec 2016 20:10:09 +0000 (21:10 +0100)]
more informative assert message
Martin Quinson [Thu, 1 Dec 2016 20:09:29 +0000 (21:09 +0100)]
add an EngineImpl, unused so far
Martin Quinson [Mon, 28 Nov 2016 22:36:27 +0000 (23:36 +0100)]
cosmetics (and stop using routing_platf)
Martin Quinson [Mon, 28 Nov 2016 22:26:17 +0000 (23:26 +0100)]
gosh, so much cruft in this code
Martin Quinson [Thu, 1 Dec 2016 19:45:56 +0000 (20:45 +0100)]
Merge pull request #124 from mpoquet/master
[Energy platform parsing] assert + memory leak
Millian Poquet [Wed, 30 Nov 2016 13:08:01 +0000 (14:08 +0100)]
Merge branch 'master' of https://github.com/mpoquet/simgrid
Millian Poquet [Wed, 30 Nov 2016 12:58:18 +0000 (13:58 +0100)]
Energy: Fixed host parsing assertion + mem leak
When parsing the platform file with energy,
using the old watt description syntax
"watt_min:watt_max" instead of
"watt_idle:watt_min:watt_max" led to obscure
OOB error, the error message should now be
clearer.
Also found a little memory leak,
msg_idle was not freed.
Augustin Degomme [Tue, 29 Nov 2016 17:12:45 +0000 (18:12 +0100)]
disable java for MC FreeBSD builds, as it breaks mmalloc
degomme [Tue, 29 Nov 2016 14:09:12 +0000 (15:09 +0100)]
On Freebsd with clang > 3.8, sometimes we have a null name here.
Try to not segfault in this case.
degomme [Tue, 29 Nov 2016 11:56:29 +0000 (12:56 +0100)]
for some reason (const madness?) this lead to wrong names being printed.
Matthieu Volat [Tue, 29 Nov 2016 11:21:46 +0000 (12:21 +0100)]
Switch the event handling in the MC to libevent.
This is a good alternative to provide a clean socket/signal
handling, which allows to finaly enable the MC on FreeBSD too. The
downside is that now libevent>=2 is necessary to build the model
checker.
Thanks to degomme@ for the mentoring ;)
Matthieu Volat [Mon, 28 Nov 2016 14:09:18 +0000 (15:09 +0100)]
Add more libraries to blacklist.
FreeBSD system and LLVM related libraries.
Matthieu Volat [Mon, 28 Nov 2016 14:00:18 +0000 (15:00 +0100)]
BSD/SysV ptrace resume addr is 1, not 0 like in linux.
Martin Quinson [Mon, 28 Nov 2016 21:16:55 +0000 (22:16 +0100)]
improve the debug logs produced by the route seeking mechanism
Martin Quinson [Mon, 28 Nov 2016 20:29:35 +0000 (21:29 +0100)]
remove a ugly misplaced include
Martin Quinson [Mon, 28 Nov 2016 20:27:38 +0000 (21:27 +0100)]
Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid
degomme [Mon, 28 Nov 2016 13:35:21 +0000 (14:35 +0100)]
Fix umpire issues : MPI_Comm cannot be safely put inside an int
Fix/Ignore some warnings as well
Matthieu Volat [Sun, 27 Nov 2016 19:31:39 +0000 (20:31 +0100)]
More ptrace portability in model checker.
No PTRACE_O_TRACEEXIT equivalent in the original ptrace API, futher
work will indicate if this will be a problem.
Update message a bit when neither linux's or BSD's version are
available.
Matthieu Volat [Fri, 25 Nov 2016 08:36:33 +0000 (09:36 +0100)]
Mark shared libraries private clean pages as non-writable on FreeBSD.
This is how persmissions are with Linux, and later simgrid identifies
mappings based on path and permissions, so the less restistance path
is to present things more linux-like.
Matthieu Volat [Thu, 17 Nov 2016 12:03:32 +0000 (13:03 +0100)]
In FreeBSD map backend, mark stack same as in Linux
Matthieu Volat [Tue, 15 Nov 2016 20:02:45 +0000 (21:02 +0100)]
Add support to retrieve FreeBSD ucontext registers.
Sadly, no universal method as it depend on the CPU and the system
is free to implement whatever storage it see fit. Leave a terminating
error message for the next system to get ported.
Matthieu Volat [Tue, 15 Nov 2016 19:27:14 +0000 (20:27 +0100)]
Add alternative to remap() in PageStore when not available.
Code is a bit simplistic, having way to expand mappings but not
shrink them (so leaving them as they are), but it does the job.
Matthieu Volat [Tue, 8 Nov 2016 10:29:59 +0000 (11:29 +0100)]
Set waitpid() for model-checked flags according to platform.
Martin Quinson [Fri, 25 Nov 2016 09:59:53 +0000 (10:59 +0100)]
use the right name of an option in the doc
Martin Quinson [Wed, 23 Nov 2016 21:20:25 +0000 (22:20 +0100)]
fix lua build
Martin Quinson [Tue, 22 Nov 2016 23:24:20 +0000 (00:24 +0100)]
move VM into their namespace, and greatly reduce the amount of sg_host_get_name (prefer C++)
Martin Quinson [Tue, 22 Nov 2016 18:00:05 +0000 (19:00 +0100)]
inline yet another function in the VM
Martin Quinson [Tue, 22 Nov 2016 14:43:06 +0000 (15:43 +0100)]
vm: kill some useless static functions
Martin Quinson [Tue, 22 Nov 2016 11:09:23 +0000 (12:09 +0100)]
inline 4 more VM simcalls
I had to add some methods to s4u::VM, such as getRamsize()
Martin Quinson [Tue, 22 Nov 2016 10:44:32 +0000 (11:44 +0100)]
VM: improve error messages, and prefer C++ over MSG
Martin Quinson [Tue, 22 Nov 2016 10:37:01 +0000 (11:37 +0100)]
VM: keep inlining dummy functions
I could merge my commits, but these changes are really hard to review
so don't make it more complex than needed
Martin Quinson [Tue, 22 Nov 2016 10:30:20 +0000 (11:30 +0100)]
VM: inline a function
Martin Quinson [Tue, 22 Nov 2016 10:15:04 +0000 (11:15 +0100)]
VM: code simplification. Much more needed :(
Martin Quinson [Tue, 22 Nov 2016 09:54:09 +0000 (10:54 +0100)]
give s4u::Host a cname() that returns a char*
Martin Quinson [Tue, 22 Nov 2016 09:43:39 +0000 (10:43 +0100)]
kill commented code, anonymous blocs and reindent. No real change
Martin Quinson [Tue, 22 Nov 2016 09:37:07 +0000 (10:37 +0100)]
VM: getters should not be simcalls
Removing a simcall changes a bit the output, but that's ok
Martin Quinson [Mon, 21 Nov 2016 07:33:38 +0000 (08:33 +0100)]
The VirtualMachineImpl is stored in VirtualMachine->pimpl_vm_, not in Host->pimpl_
Martin Quinson [Mon, 21 Nov 2016 07:22:08 +0000 (08:22 +0100)]
store the VMs by their interface, not by their implementation
Martin Quinson [Mon, 21 Nov 2016 07:05:08 +0000 (08:05 +0100)]
don't let the impl mess up with the fields of the interface
Martin Quinson [Mon, 21 Nov 2016 01:34:54 +0000 (02:34 +0100)]
inline all VM tracing functions
Martin Quinson [Mon, 21 Nov 2016 01:21:05 +0000 (02:21 +0100)]
code simplification in the VM tracing code
Martin Quinson [Mon, 21 Nov 2016 01:11:24 +0000 (02:11 +0100)]
the VM constructor does not take any storage as parameter anyway
Martin Quinson [Mon, 21 Nov 2016 01:09:45 +0000 (02:09 +0100)]
the implementation should not mess with the fields of the interface
Martin Quinson [Mon, 21 Nov 2016 00:55:16 +0000 (01:55 +0100)]
VM: move things from MSG to the C++ plugin
Martin Quinson [Mon, 21 Nov 2016 00:20:06 +0000 (01:20 +0100)]
code simplification in the VM creation + inline a function
Martin Quinson [Sun, 20 Nov 2016 19:12:50 +0000 (20:12 +0100)]
inline another VM function, and kill another one, unused
Martin Quinson [Sun, 20 Nov 2016 18:42:50 +0000 (19:42 +0100)]
how many functions will I inline in the VMs????
Martin Quinson [Sun, 20 Nov 2016 18:35:50 +0000 (19:35 +0100)]
Kill a VM-related function out of HostImpl
Martin Quinson [Sun, 20 Nov 2016 18:18:49 +0000 (19:18 +0100)]
(hopefully) fix the memory issues in the VMs
- Create and populate an host extension, used by the VM plugin to
check the total amount of memory of that host and whether this host
allows overcommiting VM above this value.
- This is a great step toward the pluginization of the VMs
- Unfortunately, there is no way to change these values for an host
yet :-|
Martin Quinson [Sun, 20 Nov 2016 18:13:19 +0000 (19:13 +0100)]
don't use deprecated functions, and don't hide the corresponding warnings
Martin Quinson [Sun, 20 Nov 2016 17:27:46 +0000 (18:27 +0100)]
avoid using C exceptions as valgrind don't like them too much
Martin Quinson [Sun, 20 Nov 2016 17:21:06 +0000 (18:21 +0100)]
more VM functions inlining (plus, getters don't need to be a simcall)
Martin Quinson [Sun, 20 Nov 2016 16:59:16 +0000 (17:59 +0100)]
inline 2 more VM functions, and kill a simcall
Martin Quinson [Sat, 19 Nov 2016 21:54:47 +0000 (22:54 +0100)]
inline a bunch of VM functions
Martin Quinson [Fri, 18 Nov 2016 21:56:29 +0000 (22:56 +0100)]
more verbose checks
Martin Quinson [Fri, 18 Nov 2016 21:56:09 +0000 (22:56 +0100)]
cosmetics
Martin Quinson [Fri, 18 Nov 2016 21:49:44 +0000 (22:49 +0100)]
test to suspend an exec too
Martin Quinson [Thu, 17 Nov 2016 22:18:17 +0000 (23:18 +0100)]
fix copy/paste errors (found by sonar as dupplicated blocks ;)
Martin Quinson [Thu, 17 Nov 2016 10:59:43 +0000 (11:59 +0100)]
finalize the traces in SD_exit also
Thanks to Alexey Nazarenko for the bug report and the fix.
Martin Quinson [Thu, 17 Nov 2016 10:41:46 +0000 (11:41 +0100)]
Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid
Martin Quinson [Thu, 17 Nov 2016 10:34:35 +0000 (11:34 +0100)]
kill useless simcall handlers
Martin Quinson [Thu, 17 Nov 2016 10:23:26 +0000 (11:23 +0100)]
no need to know who's resuming an actor
Martin Quinson [Thu, 17 Nov 2016 10:02:37 +0000 (11:02 +0100)]
kill 2 dumb functions in simix_vm
Martin Quinson [Thu, 17 Nov 2016 09:50:55 +0000 (10:50 +0100)]
kill a bunch of brain-dead functions in surf
Martin Quinson [Thu, 17 Nov 2016 09:38:30 +0000 (10:38 +0100)]
inline a stupid function
Martin Quinson [Thu, 17 Nov 2016 09:34:54 +0000 (10:34 +0100)]
don't store the VM implem where the host stores its implem
Martin Quinson [Thu, 17 Nov 2016 09:25:43 +0000 (10:25 +0100)]
inline a stupid function
Martin Quinson [Thu, 17 Nov 2016 09:19:26 +0000 (10:19 +0100)]
move an enum to the right location
degomme [Thu, 17 Nov 2016 05:46:57 +0000 (22:46 -0700)]
note for next time: try to not forget half of the commit when pushing.
degomme [Thu, 17 Nov 2016 05:05:48 +0000 (22:05 -0700)]
Replace deque by boost:circular_buffer_space_optimized for memory reasons.
Deques are pre-allocated to a specific size and use ~1KB of memory, even when empty.
As we need 2 deques per mailbox, this was quite a lot in the end.
degomme [Wed, 16 Nov 2016 23:53:03 +0000 (16:53 -0700)]
fix dist
Martin Quinson [Wed, 16 Nov 2016 22:44:21 +0000 (23:44 +0100)]
kill two more useless functions in VM
Martin Quinson [Wed, 16 Nov 2016 22:36:21 +0000 (23:36 +0100)]
kill 2 unused fields in MSG_Global o_O
Martin Quinson [Wed, 16 Nov 2016 22:32:35 +0000 (23:32 +0100)]
remove unused functions in the VMs
Martin Quinson [Wed, 16 Nov 2016 22:19:35 +0000 (23:19 +0100)]
move virtual machines to the directory src/plugins/vm
Martin Quinson [Wed, 16 Nov 2016 21:49:18 +0000 (22:49 +0100)]
move the VM-related data out of MSG's private data for hosts
This is the beginning of turning the VMs into a separate plugin. I'm
sure that reconcentrating all VM code into a few files will greatly
simplify it.
This change is really messy because I did not want to be too intrusive
in msg_vm.c and had to expose much much of the VM internals for that.
It will be improved in the future (it cannot get any worse).
This reveals a little bug where the dirtyPages things of a VM that
runs on a host which turns down are not properly cleaned up. There is
nothing I can do right now as I don't have a onHostOff event or
something, so I simply spit a warning in this case. For now.
Martin Quinson [Wed, 16 Nov 2016 07:46:51 +0000 (08:46 +0100)]
rename AsImpl::getRouteRecursive to AsImpl::getGlobalRoute (+doc improvment)
Martin Quinson [Wed, 16 Nov 2016 07:28:21 +0000 (08:28 +0100)]
rename As::getRouteAndLatency into As::getLocalRoute
+ many small cleanups
Martin Quinson [Wed, 16 Nov 2016 01:40:51 +0000 (02:40 +0100)]
Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid
Martin Quinson [Wed, 16 Nov 2016 01:28:45 +0000 (02:28 +0100)]
various small cosmetics in the routing
Martin Quinson [Wed, 16 Nov 2016 01:12:36 +0000 (02:12 +0100)]
reduce the visibility of some functions
Martin Quinson [Wed, 16 Nov 2016 01:01:35 +0000 (02:01 +0100)]
reduce the visibility of one field
degomme [Wed, 16 Nov 2016 00:55:39 +0000 (17:55 -0700)]
oops, add the previously documented option to the list.
Martin Quinson [Wed, 16 Nov 2016 00:54:20 +0000 (01:54 +0100)]
remove another now useless function from RoutingPlat
Martin Quinson [Wed, 16 Nov 2016 00:53:21 +0000 (01:53 +0100)]
I switched to NS 3.26 locally
degomme [Wed, 16 Nov 2016 00:50:00 +0000 (17:50 -0700)]
add missing include (only for osx?)
degomme [Wed, 16 Nov 2016 00:42:16 +0000 (17:42 -0700)]
that was useless.
Martin Quinson [Wed, 16 Nov 2016 00:40:07 +0000 (01:40 +0100)]
code simplification: write the recursivity properly
degomme [Wed, 16 Nov 2016 00:26:23 +0000 (17:26 -0700)]
Don't allocate 5KB per host created when it's not needed.
These were for VM and files only, which are optional. Instead they are now allocated when needed.
degomme [Wed, 16 Nov 2016 00:24:54 +0000 (17:24 -0700)]
document new option
Martin Quinson [Wed, 16 Nov 2016 00:19:55 +0000 (01:19 +0100)]
unXBTize a bit
Martin Quinson [Tue, 15 Nov 2016 23:38:36 +0000 (00:38 +0100)]
cosmetics
Martin Quinson [Tue, 15 Nov 2016 23:16:23 +0000 (00:16 +0100)]
let's do standard C++ here
Martin Quinson [Tue, 15 Nov 2016 23:05:48 +0000 (00:05 +0100)]
cosmetics
Martin Quinson [Tue, 15 Nov 2016 23:02:38 +0000 (00:02 +0100)]
reduce the amount of dynars created by getOneLinkRoutes()
Martin Quinson [Tue, 15 Nov 2016 22:54:10 +0000 (23:54 +0100)]
less void*
Martin Quinson [Tue, 15 Nov 2016 22:41:10 +0000 (23:41 +0100)]
kill a now useless function