gomd-devel
[Top][All Lists]
Advanced

[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.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]