[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gomd-devel] <DAEMON>: major update for chpox support (register+checkpoi
From: |
Gian Paolo Ghilardi |
Subject: |
[gomd-devel] <DAEMON>: major update for chpox support (register+checkpoint are done) |
Date: |
Sun, 2 Nov 2003 13:49:48 +0100 |
Hi all.
Sorry for disturbing you continously... ;)
Now the registration+checkpoint mechanism works (yesterday I worked only on
the registration stuff).
If you launch the daemon with the --test-chpox/-tc now you''ll be asked to
enter a valid PID that will be registered and checkpointed 3 times. As usual
in the CVS notes below you'll find an output example.
ASAP I'll make the chpoxSupport class a thread (so the main app will be able
to work).
I thought to add a queue for pending registrations&dumps so the (single)
thread will be able to do its job in the cleanest and safest way possibile
(to avoid race conditions on thread access & function calls).
I think I'll (optimistically) finish the chpox support stuff in a few weeks.
Byez.
<rejected>
PS: patch from Busybee (Mirko Caserta) were applied to compils.h and
install.sh files (thanks Mirko!).
<< CVS NOTES >>
IN compile.sh
(f) typos (signaled me by Busybee => thanks!)
IN install.sh
(f) typos (signaled me by Busybee => thanks!)
NOTE: major update for chpoxSupport class
IN chpoxProc.cpp
(m) change from CHPOX_MAX_DUMPS to CHPOX_MAX_DUMPS_PER_PROCESS
IN chpoxSupport.h/chpoxSupport.cpp
(+) added dumpRegisteredProces() function => this function invoked process
dump (==checkpointing).
(+) in registerProcess() function => lots of changes (clenaups, checkpoint
call, check is dump file was correctly generated, wait before checking for
dump file,...)
(+) in printRegisteredProcList() => cosmetics
(+) tons of comments.
IN constants.h
(+) added #define CHPOX_DUMP_SIGNAL (signal id for checkpointing)
(m) changed #define CHPOX_MAX_DUMPS to CHPOX_MAX_DUMPS_PER_PROCESS
(m) changed #define CHPOX_DUMP_DIR /var/tmp to /tmp
IN csCollector.h/csCollector.cpp
(+) now the user will be asked for a valid PID to test the
testRegisterProcess() function.
OUTPUT EXAMPLE:
[...]
***************************************
* TESTING CHPOX SUPPORT (ALPHA) *
***************************************
[TST]: this code is experimental! :)
[TST]: please enter the PID of process to be checkpointed: 17719
[TST]: round #1
[TST]: try registering process with pid=17719
[CHP]: pid: [17719] cmdline: [/bin/bash]
[CHP]: registering the libs needed by program /bin/bash.
=> /lib/libdl.so.2
=> /lib/libc.so.6
=> /lib/ld-linux.so.2
[CHP]: the program needs 3 libs.
[CHP]: registering the app....
=> 17719:31:9:/tmp/bash_20031102_123131_17719.dump
[CHP]: dump signal (31) succesfully sent to target process (pid=17719)
[CHP]: wait 10 seconds before continuing...
[CHP]: dump file correctly created
(file=/tmp/bash_20031102_123131_17719.dump)
[CHP]: added a new entry to the list of registered procs.
[CHP]: number of saved dumps for the registered proc: 1
[CHP]: the list of registered procs contains 1 entries.
[TST]: round #2
[TST]: try registering again process with pid=17719
to test the saved-procs linked list.
[CHP]: pid: [17719] cmdline: [/bin/bash]
[CHP]: registering the libs needed by program /bin/bash.
=> /lib/libdl.so.2
=> /lib/libc.so.6
=> /lib/ld-linux.so.2
[CHP]: the program needs 3 libs.
[CHP]: registering the app....
=> 17719:31:9:/tmp/bash_20031102_123141_17719.dump
[CHP]: dump signal (31) succesfully sent to target process (pid=17719)
[CHP]: wait 10 seconds before continuing...
[CHP]: dump file correctly created
(file=/tmp/bash_20031102_123141_17719.dump)
[CHP]: proc yet registered.
[CHP]: updated the proc entry.
[CHP]: number of saved dumps for the registered proc: 2
[TST]: round #3
[TST]: try registering again process with pid=17719
to test the saved-procs linked list.
[CHP]: pid: [17719] cmdline: [/bin/bash]
[CHP]: registering the libs needed by program /bin/bash.
=> /lib/libdl.so.2
[CHP]: the program needs 1 libs.
[CHP]: registering the app....
=> 17719:31:9:/tmp/bash_20031102_123151_17719.dump
[CHP]: dump signal (31) succesfully sent to target process (pid=17719)
[CHP]: wait 10 seconds before continuing...
[CHP]: dump file correctly created
(file=/tmp/bash_20031102_123151_17719.dump)
[CHP]: proc yet registered.
[CHP]: updated the proc entry.
[CHP]: number of saved dumps for the registered proc: 3
[TST]: results...
[TST]: you should see just one entry with 3 dumps
=> Entry #1
Required libs (3 libs found):
- /lib/libdl.so.2
- /lib/libc.so.6
- /lib/ld-linux.so.2
Dump filenames (3 dump files found):
- /tmp/bash_20031102_123131_17719.dump
- /tmp/bash_20031102_123141_17719.dump
- /tmp/bash_20031102_123151_17719.dump
[TST]: notice we waited 10 seconds between a round and another one.
[TST]: test end.
- [gomd-devel] <DAEMON>: major update for chpox support (register+checkpoint are done),
Gian Paolo Ghilardi <=