Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
simgrid.git
2 years agodocument a class
Martin Quinson [Sat, 30 Sep 2017 21:31:58 +0000 (23:31 +0200)]
document a class

2 years agoshutdown all hosted VMs when an host is turned off
Martin Quinson [Sat, 30 Sep 2017 21:22:08 +0000 (23:22 +0200)]
shutdown all hosted VMs when an host is turned off

2 years agosonar: don't check for memleaks, you suck at it
Martin Quinson [Sat, 30 Sep 2017 21:20:12 +0000 (23:20 +0200)]
sonar: don't check for memleaks, you suck at it

2 years agoadd some bits of the commit log into the code comments
Martin Quinson [Sat, 30 Sep 2017 20:35:54 +0000 (22:35 +0200)]
add some bits of the commit log into the code comments

2 years agoComplete s4u-actor-kill to include a test for Actor::killAll().
Arnaud Giersch [Sat, 30 Sep 2017 19:46:54 +0000 (21:46 +0200)]
Complete s4u-actor-kill to include a test for Actor::killAll().

2 years agoFix process_killall. Closes #186.
Arnaud Giersch [Sat, 30 Sep 2017 19:40:08 +0000 (21:40 +0200)]
Fix process_killall.  Closes #186.

This was never tested, or it was a long time ago.

2 years agoSimply finish the surf sleep action on process join.
Arnaud Giersch [Fri, 29 Sep 2017 21:00:56 +0000 (23:00 +0200)]
Simply finish the surf sleep action on process join.

It is much more simpler, and permits to kill the processes involved in join.

Fixes github bug #225.

2 years agoRevert "Derive custom exception from std::exception."
Arnaud Giersch [Fri, 29 Sep 2017 20:39:56 +0000 (22:39 +0200)]
Revert "Derive custom exception from std::exception."

This reverts commit 7198a3162eaae82fa2ec5c612d5ae22e243055d7.

Make it impossible for user code to catch a StopRequest with a
try {} catch (std::exception).

Sonar will be whining but I don't care.

2 years agoAction::finish() is never used without setState().
Arnaud Giersch [Fri, 29 Sep 2017 20:23:01 +0000 (22:23 +0200)]
Action::finish() is never used without setState().

Add the new state as a parameter for finish().

2 years agoRemove function from list before use.
Arnaud Giersch [Fri, 29 Sep 2017 20:08:20 +0000 (22:08 +0200)]
Remove function from list before use.

2 years agoRemove old commented code.
Arnaud Giersch [Thu, 28 Sep 2017 20:23:53 +0000 (22:23 +0200)]
Remove old commented code.

2 years agoBoost contexts: inform ASan about context switches.
Arnaud Giersch [Thu, 28 Sep 2017 14:21:44 +0000 (16:21 +0200)]
Boost contexts: inform ASan about context switches.

2 years agoCheck if ASan is enabled from CMake, and define variables.
Arnaud Giersch [Thu, 28 Sep 2017 13:53:22 +0000 (15:53 +0200)]
Check if ASan is enabled from CMake, and define variables.

HAVE_SANITIZE_ADDRESS if AddressSanitizer is enabled
HAVE_SANITIZE_ADDRESS_FIBER_SUPPORT if current ASan version includes Fiber annotation interface

Update smpi_memory.cpp in consequence.

2 years agoAlign top of stacks to a multiple of 16.
Arnaud Giersch [Wed, 27 Sep 2017 21:31:25 +0000 (23:31 +0200)]
Align top of stacks to a multiple of 16.

It's needed for Asan not to whine.

2 years agofix build on weird clangs
Martin Quinson [Thu, 28 Sep 2017 05:58:08 +0000 (07:58 +0200)]
fix build on weird clangs

2 years agoinstr: prefer std::str to char*
Martin Quinson [Thu, 21 Sep 2017 23:08:47 +0000 (01:08 +0200)]
instr: prefer std::str to char*

2 years agoAdd explicit keyword, and remove default value for parameter.
Arnaud Giersch [Wed, 27 Sep 2017 09:41:54 +0000 (11:41 +0200)]
Add explicit keyword, and remove default value for parameter.

2 years agoDelete unused copy constructor.
Arnaud Giersch [Wed, 27 Sep 2017 09:23:55 +0000 (11:23 +0200)]
Delete unused copy constructor.

2 years agoUpdate ChangeLog.
Arnaud Giersch [Wed, 27 Sep 2017 08:44:39 +0000 (10:44 +0200)]
Update ChangeLog.

Close #120, #222.

2 years agoTest comm before cancelation, and kill last leak in this test! \o/
Arnaud Giersch [Wed, 27 Sep 2017 08:16:00 +0000 (10:16 +0200)]
Test comm before cancelation, and kill last leak in this test! \o/

2 years agoDelete timer on removal.
Arnaud Giersch [Tue, 26 Sep 2017 13:16:53 +0000 (15:16 +0200)]
Delete timer on removal.

2 years agoChange xbt_heap_rm_elm to return the removed element, or NULL.
Arnaud Giersch [Tue, 26 Sep 2017 13:14:56 +0000 (15:14 +0200)]
Change xbt_heap_rm_elm to return the removed element, or NULL.

2 years agos4u-dht-chord: cancel pending comm.
Arnaud Giersch [Tue, 26 Sep 2017 11:35:09 +0000 (13:35 +0200)]
s4u-dht-chord: cancel pending comm.

The timings are slightly changed (tesh updated).

2 years agos4u-dht-chord: free detached comms.
Arnaud Giersch [Tue, 26 Sep 2017 11:32:19 +0000 (13:32 +0200)]
s4u-dht-chord: free detached comms.

2 years agoAllow to specify a cleanup handler for detached comms.
Arnaud Giersch [Tue, 26 Sep 2017 09:38:02 +0000 (11:38 +0200)]
Allow to specify a cleanup handler for detached comms.

2 years agoImplement basic backtrace cut for --cfg=exception/cutpath.
Arnaud Giersch [Tue, 26 Sep 2017 09:27:34 +0000 (11:27 +0200)]
Implement basic backtrace cut for --cfg=exception/cutpath.

This option became a no-op when the exceptions were ported to C++.

2 years agoFix most of the remaining leaks in msg-host_on_off_processes.
Arnaud Giersch [Mon, 25 Sep 2017 20:23:10 +0000 (22:23 +0200)]
Fix most of the remaining leaks in msg-host_on_off_processes.

Only Test 6 remains unfixed, because it would change the test output.
See FIXME comment at line 179.

2 years agoDisable broken test.
Arnaud Giersch [Mon, 25 Sep 2017 09:03:29 +0000 (11:03 +0200)]
Disable broken test.

It gives a yellow bullet on Jenkins, and doesn't bring anything.

More precisely, the test aborts early because MPI_Type_extent doesn't give
the expected result (Unexpected extent for small struct). The result of
the test was however never verified, since the test is only used by the
model checker.

On the FreeBSD node (clang/libc++), something is broken with exception
handling and the model checker hangs indefinitely at context's ::stop(),
when a StopRequest exception is launched.

The test can be reactivated either when MPI_Type_extent is fixed, or an
update corrects the problems on FreeBSD.

2 years agoMore cleanup in contexts' stop().
Arnaud Giersch [Fri, 22 Sep 2017 22:21:41 +0000 (00:21 +0200)]
More cleanup in contexts' stop().

Call Context::stop() at upper level: save an exception, and hopefully fix
MC tests on FreeBSD, even if I don't really understand what's going wrong.

2 years agoSet (accidentally removed) SOCK_CLOEXEC again.
Arnaud Giersch [Fri, 22 Sep 2017 16:37:07 +0000 (18:37 +0200)]
Set (accidentally removed) SOCK_CLOEXEC again.

2 years agomc/remote: switch to socket type SOCK_SEQPACKET to detect when the peer disconnected.
Arnaud Giersch [Fri, 22 Sep 2017 15:25:37 +0000 (17:25 +0200)]
mc/remote: switch to socket type SOCK_SEQPACKET to detect when the peer disconnected.

2 years agoReally kill the process.
Arnaud Giersch [Fri, 22 Sep 2017 13:02:28 +0000 (15:02 +0200)]
Really kill the process.

Some mc/umpire tests are deadlocking since commit 7b7b18bf7.

2 years agoMove around code to be consistent with other context factories.
Arnaud Giersch [Fri, 22 Sep 2017 11:20:50 +0000 (13:20 +0200)]
Move around code to be consistent with other context factories.

2 years agoCodacy is a bit picky about those.
Arnaud Giersch [Fri, 22 Sep 2017 11:16:26 +0000 (13:16 +0200)]
Codacy is a bit picky about those.

2 years agoFix build with -Werror=missing-declarations.
Arnaud Giersch [Fri, 22 Sep 2017 09:58:24 +0000 (11:58 +0200)]
Fix build with -Werror=missing-declarations.

2 years agoDerive custom exception from std::exception.
Arnaud Giersch [Fri, 22 Sep 2017 09:36:52 +0000 (11:36 +0200)]
Derive custom exception from std::exception.

2 years agoImprove context termination.
Arnaud Giersch [Thu, 21 Sep 2017 21:28:31 +0000 (23:28 +0200)]
Improve context termination.

Throw an exception to terminate the context at upper level, and have
resources freed by stack unwinding.

Closes #204, since pthread_exit is not called anymore.

2 years agoLeaks -= 2;
Arnaud Giersch [Thu, 21 Sep 2017 15:18:18 +0000 (17:18 +0200)]
Leaks -= 2;

2 years agosmpi_memory: don't copy poisoned regions when AddressSanitizer is in use.
Arnaud Giersch [Thu, 21 Sep 2017 11:30:30 +0000 (13:30 +0200)]
smpi_memory: don't copy poisoned regions when AddressSanitizer is in use.

Not sure if it's entirely correct, but it cannot be worse than the current state
where ASan stops in smpi_initialize_global_memory_segments.

2 years agoFix double-free error.
Arnaud Giersch [Wed, 20 Sep 2017 14:17:35 +0000 (16:17 +0200)]
Fix double-free error.

2 years agoRemove dead assignments spotted by scan-build.
Arnaud Giersch [Wed, 20 Sep 2017 13:25:06 +0000 (15:25 +0200)]
Remove dead assignments spotted by scan-build.

2 years agoFix memory leak in process-join.
Arnaud Giersch [Wed, 20 Sep 2017 10:13:56 +0000 (12:13 +0200)]
Fix memory leak in process-join.

2 years agoDisable stack-overflow tests with address sanitizer.
Arnaud Giersch [Wed, 20 Sep 2017 07:39:38 +0000 (09:39 +0200)]
Disable stack-overflow tests with address sanitizer.

2 years agoswitch a mpich3 coll test to boost contexts instead of thread if found
Augustin Degomme [Tue, 19 Sep 2017 10:58:28 +0000 (12:58 +0200)]
switch a mpich3 coll test to boost contexts instead of thread if found

2 years agoFix gcc's -Wmissing-field-initializers.
Arnaud Giersch [Tue, 19 Sep 2017 08:26:27 +0000 (10:26 +0200)]
Fix gcc's -Wmissing-field-initializers.

2 years agotry to silence some warnings
Augustin Degomme [Tue, 19 Sep 2017 08:08:24 +0000 (10:08 +0200)]
try to silence some warnings

2 years agoFully initialize struct, and please valgrind.
Arnaud Giersch [Tue, 19 Sep 2017 05:59:31 +0000 (07:59 +0200)]
Fully initialize struct, and please valgrind.

2 years agoDisable alternate signal stack before thread exit.
Arnaud Giersch [Mon, 18 Sep 2017 19:35:51 +0000 (21:35 +0200)]
Disable alternate signal stack before thread exit.

AddressSanitizer (ASan) reports an error if the alternate signal stack remains
active when a thread exits:

==28272==ERROR: AddressSanitizer failed to deallocate 0x2000 (8192) bytes at address 0x7f53ebba7c00
==28272==AddressSanitizer CHECK failed: ../../../../src/libsanitizer/sanitizer_common/sanitizer_posix.cc:141 "(("unable to unmap" && 0)) != (0)" (0x0, 0x0)
    #0 0x7f53ebc950e5  (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe40e5)
    #1 0x7f53ebcb1c15 in __sanitizer::CheckFailed(char const*, int, char const*, unsigned long long, unsigned long long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0x100c15)
    #2 0x7f53ebca975f  (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xf875f)
    #3 0x7f53ebcaa560  (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xf9560)
    #4 0x7f53ebc98764  (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe7764)
    #5 0x7f53ea57a5e8 in __nptl_deallocate_tsd.part.4 (/lib/x86_64-linux-gnu/libpthread.so.0+0x65e8)
    #6 0x7f53ea57b647 in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x7647)
    #7 0x7f53e93e0abe in __clone (/lib/x86_64-linux-gnu/libc.so.6+0xe8abe)

2 years agoDelete ProcessArg.properties.
Arnaud Giersch [Sat, 16 Sep 2017 20:53:21 +0000 (22:53 +0200)]
Delete ProcessArg.properties.

2 years agoLeak-- (seen in maestro-set).
Arnaud Giersch [Sat, 16 Sep 2017 13:27:42 +0000 (15:27 +0200)]
Leak-- (seen in maestro-set).

2 years agoMemcheck: another kind of leak to ignore from smpi/dlopen.
Arnaud Giersch [Sat, 16 Sep 2017 12:44:46 +0000 (14:44 +0200)]
Memcheck: another kind of leak to ignore from smpi/dlopen.

2 years agoMemcheck: another try to make valgrind ignore memory leak in cmake.
Arnaud Giersch [Sat, 16 Sep 2017 12:32:09 +0000 (14:32 +0200)]
Memcheck: another try to make valgrind ignore memory leak in cmake.

2 years agoinstr: small cleanup
Martin Quinson [Sat, 16 Sep 2017 20:34:17 +0000 (22:34 +0200)]
instr: small cleanup

2 years agoinstr: kill a dead function
Martin Quinson [Sat, 16 Sep 2017 20:21:20 +0000 (22:21 +0200)]
instr: kill a dead function

2 years agoinstr: objectifies another method
Martin Quinson [Sat, 16 Sep 2017 20:15:32 +0000 (22:15 +0200)]
instr: objectifies another method

2 years agoa static function with an object parameter is a regular method
Martin Quinson [Sat, 16 Sep 2017 19:24:55 +0000 (21:24 +0200)]
a static function with an object parameter is a regular method

2 years agoInitialize saveptr and please dumb compilers.
Arnaud Giersch [Fri, 15 Sep 2017 21:37:27 +0000 (23:37 +0200)]
Initialize saveptr and please dumb compilers.

2 years agoThrow exception by value.
Arnaud Giersch [Fri, 15 Sep 2017 20:27:31 +0000 (22:27 +0200)]
Throw exception by value.

2 years agoSimplify loop condition (sonar).
Arnaud Giersch [Fri, 15 Sep 2017 20:10:01 +0000 (22:10 +0200)]
Simplify loop condition (sonar).

2 years agoRemove useless default capture for lambdas.
Arnaud Giersch [Fri, 15 Sep 2017 13:16:47 +0000 (15:16 +0200)]
Remove useless default capture for lambdas.

2 years agoUse strtok_r() instead of non reentrant strtok().
Arnaud Giersch [Fri, 15 Sep 2017 13:06:02 +0000 (15:06 +0200)]
Use strtok_r() instead of non reentrant strtok().

2 years agoPlease sonar (s/struct/class).
Arnaud Giersch [Fri, 15 Sep 2017 11:56:04 +0000 (13:56 +0200)]
Please sonar (s/struct/class).

2 years agoFix valgrind suppression file.
Arnaud Giersch [Fri, 15 Sep 2017 11:19:46 +0000 (13:19 +0200)]
Fix valgrind suppression file.

2 years agoTypedef is superfluous here.
Arnaud Giersch [Fri, 15 Sep 2017 08:02:19 +0000 (10:02 +0200)]
Typedef is superfluous here.

2 years agosmpi_shared: define smpi_source_location as inheriting from std::string.
Arnaud Giersch [Fri, 15 Sep 2017 08:00:40 +0000 (10:00 +0200)]
smpi_shared: define smpi_source_location as inheriting from std::string.

2 years agosmpi_bench: define SampleLocation inheriting from std::string.
Arnaud Giersch [Fri, 15 Sep 2017 07:59:25 +0000 (09:59 +0200)]
smpi_bench: define SampleLocation inheriting from std::string.

2 years agosmpi_bench: store plain local data in map (no pointer).
Arnaud Giersch [Thu, 14 Sep 2017 13:04:33 +0000 (15:04 +0200)]
smpi_bench: store plain local data in map (no pointer).

2 years agoRemove redundant operations.
Arnaud Giersch [Wed, 13 Sep 2017 14:59:08 +0000 (16:59 +0200)]
Remove redundant operations.

2 years agoinstr: fix a new/free mismatch, and small cleanups
Martin Quinson [Fri, 15 Sep 2017 05:48:35 +0000 (07:48 +0200)]
instr: fix a new/free mismatch, and small cleanups

- name a destructor by its name
- inline a useless recursive function: by doing the job in the destructor

2 years agoNew: s4u::Host.execute() for remote executions
Martin Quinson [Thu, 14 Sep 2017 14:07:40 +0000 (16:07 +0200)]
New: s4u::Host.execute() for remote executions

2 years agoreally try to plug that memleak
Martin Quinson [Thu, 14 Sep 2017 12:57:47 +0000 (14:57 +0200)]
really try to plug that memleak

2 years agocleanup plugging a memleak
Martin Quinson [Thu, 14 Sep 2017 12:46:13 +0000 (14:46 +0200)]
cleanup plugging a memleak

2 years agoGet rid of spurious symlink for lua test.
Arnaud Giersch [Wed, 13 Sep 2017 14:08:39 +0000 (16:08 +0200)]
Get rid of spurious symlink for lua test.

2 years agotesh: allow multiple --cfg and --log (needed for parallel tests).
Arnaud Giersch [Wed, 13 Sep 2017 13:47:57 +0000 (15:47 +0200)]
tesh: allow multiple --cfg and --log (needed for parallel tests).

2 years agoAdd missing tests with Boost context factory.
Arnaud Giersch [Wed, 13 Sep 2017 13:47:21 +0000 (15:47 +0200)]
Add missing tests with Boost context factory.

2 years agoDelay creation of parmap for boost contexts too.
Arnaud Giersch [Wed, 13 Sep 2017 13:05:33 +0000 (15:05 +0200)]
Delay creation of parmap for boost contexts too.

2 years agotesh: update ignore_regexp_common.
Arnaud Giersch [Wed, 13 Sep 2017 10:43:21 +0000 (12:43 +0200)]
tesh: update ignore_regexp_common.

2 years agofewer explicit news are fewer possible leaks
Martin Quinson [Tue, 12 Sep 2017 22:16:56 +0000 (00:16 +0200)]
fewer explicit news are fewer possible leaks

2 years agoconvert a dict into a unordered_map
Martin Quinson [Tue, 12 Sep 2017 21:34:27 +0000 (23:34 +0200)]
convert a dict into a unordered_map

2 years agoContextBoost: add support for Boost versions above 1.61.
Arnaud Giersch [Tue, 12 Sep 2017 21:13:16 +0000 (23:13 +0200)]
ContextBoost: add support for Boost versions above 1.61.

2 years agoContextBoost: useless initialization.
Arnaud Giersch [Tue, 12 Sep 2017 20:22:53 +0000 (22:22 +0200)]
ContextBoost: useless initialization.

2 years agoContextBoost: define helper function for jump_fcontext.
Arnaud Giersch [Tue, 12 Sep 2017 20:11:32 +0000 (22:11 +0200)]
ContextBoost: define helper function for jump_fcontext.

Also make smx_ctx_boost_wrapper() a static member of BoostContext.

2 years agoContextBoost: use BOOST_VERSION instead of simgrid-specific HAVE_BOOST_CONTEXTS.
Arnaud Giersch [Tue, 12 Sep 2017 20:03:55 +0000 (22:03 +0200)]
ContextBoost: use BOOST_VERSION instead of simgrid-specific HAVE_BOOST_CONTEXTS.

2 years agoContextBoost: use C++ style casts.
Arnaud Giersch [Tue, 12 Sep 2017 20:01:16 +0000 (22:01 +0200)]
ContextBoost: use C++ style casts.

2 years agoUpdate .gitignore.
Arnaud Giersch [Tue, 12 Sep 2017 14:58:10 +0000 (16:58 +0200)]
Update .gitignore.

2 years agoThese lines have no utility (anymore?)
Arnaud Giersch [Tue, 12 Sep 2017 14:19:52 +0000 (16:19 +0200)]
These lines have no utility (anymore?)

2 years agoAvoid uppercase characters in package names.
Arnaud Giersch [Tue, 12 Sep 2017 13:08:55 +0000 (15:08 +0200)]
Avoid uppercase characters in package names.

2 years agoRename Java examples.
Arnaud Giersch [Tue, 12 Sep 2017 11:18:48 +0000 (13:18 +0200)]
Rename Java examples.

Add prefix "java-" to target names, and s/_/-/.

2 years agoFix memory leaks.
Arnaud Giersch [Sun, 10 Sep 2017 19:37:52 +0000 (21:37 +0200)]
Fix memory leaks.

2 years agoRemove duplicated line.
Arnaud Giersch [Sun, 10 Sep 2017 19:28:35 +0000 (21:28 +0200)]
Remove duplicated line.

2 years agoignore one more cruft from travis
Martin Quinson [Sun, 10 Sep 2017 20:48:45 +0000 (22:48 +0200)]
ignore one more cruft from travis

Seen live as:
Picked up _JAVA_OPTIONS: -Xmx2048m -Xms512m

2 years agocodacy
Martin Quinson [Sun, 10 Sep 2017 20:21:57 +0000 (22:21 +0200)]
codacy

2 years agos|s4u_|s4u-|
Martin Quinson [Sun, 10 Sep 2017 19:02:50 +0000 (21:02 +0200)]
s|s4u_|s4u-|

2 years agoremove a teshsuite example that is superseeded by a proper example
Martin Quinson [Sun, 10 Sep 2017 16:10:30 +0000 (18:10 +0200)]
remove a teshsuite example that is superseeded by a proper example

2 years agofix doc
Martin Quinson [Sun, 10 Sep 2017 16:08:31 +0000 (18:08 +0200)]
fix doc

2 years agoimplement simgrid::s4u::Comm::wait_all() and use it in example
Martin Quinson [Sun, 10 Sep 2017 16:07:14 +0000 (18:07 +0200)]
implement simgrid::s4u::Comm::wait_all() and use it in example

2 years agoreduce the differences between the s4u_async examples
Martin Quinson [Sun, 10 Sep 2017 15:57:36 +0000 (17:57 +0200)]
reduce the differences between the s4u_async examples

2 years agofix the s4u_async-waitany example
Martin Quinson [Sun, 10 Sep 2017 15:34:48 +0000 (17:34 +0200)]
fix the s4u_async-waitany example

2 years agomassive cleanups in the s4u-async-waitall example
Martin Quinson [Sun, 10 Sep 2017 14:55:46 +0000 (16:55 +0200)]
massive cleanups in the s4u-async-waitall example

2 years agoMerge pull request #218 from Takishipp/MSG2S4U
Martin Quinson [Sun, 10 Sep 2017 13:20:21 +0000 (15:20 +0200)]
Merge pull request #218 from Takishipp/MSG2S4U

first attempt to convert async-waitany msg version to s4u (doesn't work yet)