6th question is as follows:

(6) About the first_continue_pass static variable in the ft_event functions.

Related frameworks are following.

Framework         : bml
Component         : r2
The source file   : ompi/mca/bml/r2/bml_r2_ft.c
The function name : mca_bml_r2_ft_event

Framework         : crcp
Component         : bkmrk
The source file   : ompi/mca/crcp/bkmrk/crcp_bkmrk_pml.c
The function name : ompi_crcp_bkmrk_pml_ft_event

Framework         : pml
Component         : ob1
The source file   : ompi/mca/pml/ob1/pml_ob1.c
The function name : mca_pml_ob1_ft_event
Component         : csum
The source file   : ompi/mca/pml/csum/pml_csum.c
The function name : mca_pml_csum_ft_event

I think the first_continue_pass variable exists to identify
whether mca_pml.pml_ft_event(OPAL_CRS_CONTINUE) has been called at the first 
time
or at second time in INC-continue section when ompi_cr_continue_like_restart is 
true.

When mca_pml.pml_ft_event(OPAL_CRS_CONTINUE) is called at the first time,
first_continue_pass variable is true, if it is called by 
ompi_cr_coord_pre_continue function.

When mca_pml.pml_ft_event(OPAL_CRS_CONTINUE) is called at the second time,
first_continue_pass variable is false, if it is called by 
ompi_cr_coord_post_continue function,

However, I think that there is a problem, if ompi_cr_continue_like_restart 
isn't true.

If ompi_cr_continue_like_restart isn't true and when checkpoint is executed in 
an odd number of times,
INC-continue section is executed under the condition which first_continue_pass 
is true.

If ompi_cr_continue_like_restart isn't true and when checkpoint is executed in 
an even number of times,
INC-continue section is executed under the condition which first_continue_pass 
is false.

Therefor, mca_pml.pml_ft_event(OPAL_CRS_CONTINUE) is called in INC-continue 
section just once
if ompi_cr_continue_like_restart isn't true.

This behavior is incorrect.
I think that the first_continue_pass be always true if 
ompi_cr_continue_like_restart isn't true.

Reply via email to