[devel] [PATCH 1/2] immnd: Make IMMSV_FEVS_MAX_PENDING environment variable [#3260]
Immnd allows IMMSV_FEVS_MAX_PENDING sourced from enviroment variable, or uses default value (16) otherwise --- src/imm/common/immsv_api.h | 4 src/imm/immnd/ImmModel.cc | 2 +- src/imm/immnd/immnd_cb.h | 1 + src/imm/immnd/immnd_evt.c | 41 ++ src/imm/immnd/immnd_main.c | 15 ++ 5 files changed, 36 insertions(+), 27 deletions(-) diff --git a/src/imm/common/immsv_api.h b/src/imm/common/immsv_api.h index c37a624ed..f809c8168 100644 --- a/src/imm/common/immsv_api.h +++ b/src/imm/common/immsv_api.h @@ -77,10 +77,6 @@ typedef enum { ACCESS_CONTROL_ENFORCING = 2 } OsafImmAccessControlModeT; -/*Max # of outstanding fevs messages towards director.*/ -/*Note max-max is 255. cb->fevs_replies_pending is an uint8_t*/ -#define IMMSV_DEFAULT_FEVS_MAX_PENDING 16 - #define IMMSV_MAX_OBJECTS 1 #define IMMSV_MAX_ATTRIBUTES 128 #define IMMSV_MAX_ADMO_NAME_LENGTH 256 diff --git a/src/imm/immnd/ImmModel.cc b/src/imm/immnd/ImmModel.cc index 2d750040e..8631dc21f 100644 --- a/src/imm/immnd/ImmModel.cc +++ b/src/imm/immnd/ImmModel.cc @@ -1614,7 +1614,7 @@ SaAisErrorT immModel_nextResult(IMMND_CB* cb, void* searchOp, TRACE_2( "ERR_TRY_AGAIN: Too many pending incoming fevs " "messages (> %u) rejecting sync iteration next request", - IMMSV_DEFAULT_FEVS_MAX_PENDING); + cb->mFevsMaxPending); return SA_AIS_ERR_TRY_AGAIN; } err = ImmModel::instance(>immModel)->nextSyncResult(rsp, *op); diff --git a/src/imm/immnd/immnd_cb.h b/src/imm/immnd/immnd_cb.h index bb3bb8493..bc2d75b05 100644 --- a/src/imm/immnd/immnd_cb.h +++ b/src/imm/immnd/immnd_cb.h @@ -209,6 +209,7 @@ typedef struct immnd_cb_tag { NCS_PATRICIA_TREE immnd_clm_list; /* IMMND_IMM_CLIENT_NODE - node */ tmr_t splitbrain_tmr; bool splitbrain_tmr_run; + uint8_t mFevsMaxPending; /* Max pending fevs messages towards director */ } IMMND_CB; /* CB prototypes */ diff --git a/src/imm/immnd/immnd_evt.c b/src/imm/immnd/immnd_evt.c index 0e801a942..64c5223c4 100644 --- a/src/imm/immnd/immnd_evt.c +++ b/src/imm/immnd/immnd_evt.c @@ -1787,7 +1787,7 @@ static uint32_t immnd_evt_proc_search_next(IMMND_CB *cb, IMMND_EVT *evt, IMMSV_OM_RSP_SEARCH_NEXT **rspList = NULL; MDS_DEST implDest = 0LL; bool retardSync = - ((cb->fevs_replies_pending >= IMMSV_DEFAULT_FEVS_MAX_PENDING) && + ((cb->fevs_replies_pending >= cb->mFevsMaxPending) && cb->mIsCoord && (cb->syncPid > 0)); SaUint32T resultSize = 0; IMMSV_OM_RSP_SEARCH_BUNDLE_NEXT bundleSearch = {0, NULL}; @@ -2767,10 +2767,10 @@ static uint32_t immnd_evt_proc_admowner_init(IMMND_CB *cb, IMMND_EVT *evt, goto agent_rsp; } - if (cb->fevs_replies_pending >= IMMSV_DEFAULT_FEVS_MAX_PENDING) { + if (cb->fevs_replies_pending >= cb->mFevsMaxPending) { TRACE_2( "ERR_TRY_AGAIN: Too many pending incoming fevs messages (> %u) rejecting admo_init request", - IMMSV_DEFAULT_FEVS_MAX_PENDING); + cb->mFevsMaxPending); send_evt.info.imma.info.admInitRsp.error = SA_AIS_ERR_TRY_AGAIN; goto agent_rsp; } @@ -2895,10 +2895,10 @@ static uint32_t immnd_evt_proc_impl_set(IMMND_CB *cb, IMMND_EVT *evt, goto agent_rsp; } - if (cb->fevs_replies_pending >= IMMSV_DEFAULT_FEVS_MAX_PENDING) { + if (cb->fevs_replies_pending >= cb->mFevsMaxPending) { TRACE_2( "ERR_TRY_AGAIN: Too many pending incoming fevs messages (> %u) rejecting impl_set request", - IMMSV_DEFAULT_FEVS_MAX_PENDING); + cb->mFevsMaxPending); send_evt.info.imma.info.implSetRsp.error = SA_AIS_ERR_TRY_AGAIN; goto agent_rsp; } @@ -3061,10 +3061,10 @@ static uint32_t immnd_evt_proc_ccb_init(IMMND_CB *cb, IMMND_EVT *evt, goto agent_rsp; } - if (cb->fevs_replies_pending >= IMMSV_DEFAULT_FEVS_MAX_PENDING) { + if (cb->fevs_replies_pending >= cb->mFevsMaxPending) { TRACE_2( "ERR_TRY_AGAIN: Too many pending incoming fevs messages (> %u) rejecting ccb_init request", - IMMSV_DEFAULT_FEVS_MAX_PENDING); + cb->mFevsMaxPending); send_evt.info.imma.info.ccbInitRsp.error = SA_AIS_ERR_TRY_AGAIN; goto agent_rsp; } @@ -3220,11 +3220,10 @@ static uint32_t immnd_evt_proc_rt_update(IMMND_CB *cb, IMMND_EVT *evt, writbale. */ - if (cb->fevs_replies_pending >= - IMMSV_DEFAULT_FEVS_MAX_PENDING) { + if (cb->fevs_replies_pending >= cb->mFevsMaxPending) { TRACE_2( "ERR_TRY_AGAIN: Too many pending incoming fevs messages (> %u) rejecting rt_update
[devel] [PATCH 2/2] imma: Correctly use IMMA_SYNCR_TIMEOUT [#3260]
--- src/imm/agent/imma_oi_api.cc | 2 +- src/imm/agent/imma_om_api.cc | 2 +- src/imm/agent/imma_proc.cc | 5 +++-- src/imm/immd/immd_cb.h | 1 - 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/imm/agent/imma_oi_api.cc b/src/imm/agent/imma_oi_api.cc index 8e9a1f2b0..c79d0e315 100644 --- a/src/imm/agent/imma_oi_api.cc +++ b/src/imm/agent/imma_oi_api.cc @@ -3510,7 +3510,7 @@ int imma_oi_resurrect(IMMA_CB *cb, IMMA_CLIENT_NODE *cl_node, bool *locked, osafassert(locked && *locked); osafassert(cl_node && cl_node->stale); SaImmOiHandleT immOiHandle = cl_node->handle; - SaTimeT timeout = 0; + SaTimeT timeout = IMMSV_WAIT_TIME; m_NCS_UNLOCK(>cb_lock, NCS_LOCK_WRITE); *locked = false; diff --git a/src/imm/agent/imma_om_api.cc b/src/imm/agent/imma_om_api.cc index 55fdcc2d8..f34e7645c 100644 --- a/src/imm/agent/imma_om_api.cc +++ b/src/imm/agent/imma_om_api.cc @@ -9761,7 +9761,7 @@ int imma_om_resurrect(IMMA_CB *cb, IMMA_CLIENT_NODE *cl_node, bool *locked) { osafassert(locked && *locked); osafassert(cl_node && cl_node->stale); SaImmHandleT immHandle = cl_node->handle; - SaTimeT timeout = 0; + SaTimeT timeout = IMMSV_WAIT_TIME; SaAisErrorT err_resurrect = SA_AIS_OK; m_NCS_UNLOCK(>cb_lock, NCS_LOCK_WRITE); diff --git a/src/imm/agent/imma_proc.cc b/src/imm/agent/imma_proc.cc index ea035827f..723550904 100644 --- a/src/imm/agent/imma_proc.cc +++ b/src/imm/agent/imma_proc.cc @@ -1570,6 +1570,7 @@ uint32_t imma_proc_resurrect_client(IMMA_CB *cb, SaImmHandleT immHandle, unsigned int sleep_delay_ms = 500; unsigned int max_waiting_time_ms = 2 * 1000; /* 2 secs */ unsigned int msecs_waited = 0; + SaTimeT timeout = IMMSV_WAIT_TIME; if (m_NCS_LOCK(>cb_lock, NCS_LOCK_WRITE) != NCSCC_RC_SUCCESS) { TRACE_3("Lock failure"); @@ -1583,7 +1584,7 @@ uint32_t imma_proc_resurrect_client(IMMA_CB *cb, SaImmHandleT immHandle, cl_node, cl_node ? cl_node->exposed : 0); goto failure; } - + timeout = cl_node->syncr_timeout; if (!cl_node->stale) { TRACE_3( "imma_proc_resurrect_client: Handle %llx was not stale, " @@ -1623,7 +1624,7 @@ uint32_t imma_proc_resurrect_client(IMMA_CB *cb, SaImmHandleT immHandle, /* send the request to the IMMND */ if (imma_mds_msg_sync_send(cb->imma_mds_hdl, &(cb->immnd_mds_dest), _evt, _evt, - IMMSV_WAIT_TIME) != NCSCC_RC_SUCCESS) { + timeout) != NCSCC_RC_SUCCESS) { TRACE_3("Failure in MDS send"); goto exposed; } diff --git a/src/imm/immd/immd_cb.h b/src/imm/immd/immd_cb.h index e9710ff71..51f52aba8 100644 --- a/src/imm/immd/immd_cb.h +++ b/src/imm/immd/immd_cb.h @@ -23,7 +23,6 @@ #include #define IMMD_EVT_TIME_OUT 100 -#define IMMSV_WAIT_TIME 100 #define m_IMMND_IS_ON_SCXB(m, n) ((m == n) ? 1 : 0) #define m_IMMD_IS_LOCAL_NODE(m, n) (m == n) ? 1 : 0 -- 2.20.1 ___ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel
[devel] [PATCH 0/2] Review Request for immnd: Make IMMSV_FEVS_MAX_PENDING environment variable [#3260]
Summary: immnd: Make IMMSV_FEVS_MAX_PENDING environment variable [#3260] Review request for Ticket(s): 3260 Peer Reviewer(s): Thien, Surbhi, Thang Pull request to: *** LIST THE PERSON WITH PUSH ACCESS HERE *** Affected branch(es): develop Development branch: ticket-3260 Base revision: 8259816e20e83658f04f0264af19cafa0cdd2755 Personal repository: git://git.code.sf.net/u/minh-chau/review Impacted area Impact y/n Docsn Build systemn RPM/packaging n Configuration files n Startup scripts n SAF servicesn OpenSAF servicesn Core libraries n Samples n Tests n Other n Comments (indicate scope for each "y" above): - *** EXPLAIN/COMMENT THE PATCH SERIES HERE *** revision 9e93db5df437d64d674f6b96c0ddba2e72677950 Author: Minh Chau Date: Wed, 12 May 2021 10:52:10 +1000 imma: Correctly use IMMA_SYNCR_TIMEOUT [#3260] revision 52ed58179ea6781c9fb69a6cb057c180cec47dee Author: Minh Chau Date: Wed, 12 May 2021 10:51:53 +1000 immnd: Make IMMSV_FEVS_MAX_PENDING environment variable [#3260] Immnd allows IMMSV_FEVS_MAX_PENDING sourced from enviroment variable, or uses default value (16) otherwise Complete diffstat: -- src/imm/agent/imma_oi_api.cc | 2 +- src/imm/agent/imma_om_api.cc | 2 +- src/imm/agent/imma_proc.cc | 5 +++-- src/imm/common/immsv_api.h | 4 src/imm/immd/immd_cb.h | 1 - src/imm/immnd/ImmModel.cc| 2 +- src/imm/immnd/immnd_cb.h | 1 + src/imm/immnd/immnd_evt.c| 41 +++-- src/imm/immnd/immnd_main.c | 15 +++ 9 files changed, 41 insertions(+), 32 deletions(-) Testing Commands: - *** LIST THE COMMAND LINE TOOLS/STEPS TO TEST YOUR CHANGES *** Testing, Expected Results: -- *** PASTE COMMAND OUTPUTS / TEST RESULTS *** Conditions of Submission: - *** HOW MANY DAYS BEFORE PUSHING, CONSENSUS ETC *** Arch Built StartedLinux distro --- mipsn n mips64 n n x86 n n x86_64 n n powerpc n n powerpc64 n n Reviewer Checklist: --- [Submitters: make sure that your review doesn't trigger any checkmarks!] Your checkin has not passed review because (see checked entries): ___ Your RR template is generally incomplete; it has too many blank entries that need proper data filled in. ___ You have failed to nominate the proper persons for review and push. ___ Your patches do not have proper short+long header ___ You have grammar/spelling in your header that is unacceptable. ___ You have exceeded a sensible line length in your headers/comments/text. ___ You have failed to put in a proper Trac Ticket # into your commits. ___ You have incorrectly put/left internal data in your comments/files (i.e. internal bug tracking tool IDs, product names etc) ___ You have not given any evidence of testing beyond basic build tests. Demonstrate some level of runtime or other sanity testing. ___ You have ^M present in some of your files. These have to be removed. ___ You have needlessly changed whitespace or added whitespace crimes like trailing spaces, or spaces before tabs. ___ You have mixed real technical changes with whitespace and other cosmetic code cleanup changes. These have to be separate commits. ___ You need to refactor your submission into logical chunks; there is too much content into a single commit. ___ You have extraneous garbage in your review (merge commits etc) ___ You have giant attachments which should never have been sent; Instead you should place your content in a public tree to be pulled. ___ You have too many commits attached to an e-mail; resend as threaded commits, or place in a public tree for a pull. ___ You have resent this content multiple times without a clear indication of what has changed between each re-send. ___ You have failed to adequately and individually address all of the comments and change requests that were proposed in the initial review. ___ You have a misconfigured ~/.gitconfig file (i.e. user.name, user.email etc) ___ Your computer have a badly configured date and time; confusing the the threaded patch review. ___ Your changes affect IPC mechanism, and you don't present any results for in-service upgradability test. ___ Your changes affect user manual and documentation, your patch series do not contain the patch that updates the Doxygen manual. ___ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel
[devel] [PATCH 2/2] imma: Correctly use IMMA_SYNCR_TIMEOUT [#3260]
--- src/imm/agent/imma_oi_api.cc | 2 +- src/imm/agent/imma_om_api.cc | 2 +- src/imm/agent/imma_proc.cc | 5 +++-- src/imm/immd/immd_cb.h | 1 - 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/imm/agent/imma_oi_api.cc b/src/imm/agent/imma_oi_api.cc index 8e9a1f2b0..c79d0e315 100644 --- a/src/imm/agent/imma_oi_api.cc +++ b/src/imm/agent/imma_oi_api.cc @@ -3510,7 +3510,7 @@ int imma_oi_resurrect(IMMA_CB *cb, IMMA_CLIENT_NODE *cl_node, bool *locked, osafassert(locked && *locked); osafassert(cl_node && cl_node->stale); SaImmOiHandleT immOiHandle = cl_node->handle; - SaTimeT timeout = 0; + SaTimeT timeout = IMMSV_WAIT_TIME; m_NCS_UNLOCK(>cb_lock, NCS_LOCK_WRITE); *locked = false; diff --git a/src/imm/agent/imma_om_api.cc b/src/imm/agent/imma_om_api.cc index 55fdcc2d8..f34e7645c 100644 --- a/src/imm/agent/imma_om_api.cc +++ b/src/imm/agent/imma_om_api.cc @@ -9761,7 +9761,7 @@ int imma_om_resurrect(IMMA_CB *cb, IMMA_CLIENT_NODE *cl_node, bool *locked) { osafassert(locked && *locked); osafassert(cl_node && cl_node->stale); SaImmHandleT immHandle = cl_node->handle; - SaTimeT timeout = 0; + SaTimeT timeout = IMMSV_WAIT_TIME; SaAisErrorT err_resurrect = SA_AIS_OK; m_NCS_UNLOCK(>cb_lock, NCS_LOCK_WRITE); diff --git a/src/imm/agent/imma_proc.cc b/src/imm/agent/imma_proc.cc index ea035827f..723550904 100644 --- a/src/imm/agent/imma_proc.cc +++ b/src/imm/agent/imma_proc.cc @@ -1570,6 +1570,7 @@ uint32_t imma_proc_resurrect_client(IMMA_CB *cb, SaImmHandleT immHandle, unsigned int sleep_delay_ms = 500; unsigned int max_waiting_time_ms = 2 * 1000; /* 2 secs */ unsigned int msecs_waited = 0; + SaTimeT timeout = IMMSV_WAIT_TIME; if (m_NCS_LOCK(>cb_lock, NCS_LOCK_WRITE) != NCSCC_RC_SUCCESS) { TRACE_3("Lock failure"); @@ -1583,7 +1584,7 @@ uint32_t imma_proc_resurrect_client(IMMA_CB *cb, SaImmHandleT immHandle, cl_node, cl_node ? cl_node->exposed : 0); goto failure; } - + timeout = cl_node->syncr_timeout; if (!cl_node->stale) { TRACE_3( "imma_proc_resurrect_client: Handle %llx was not stale, " @@ -1623,7 +1624,7 @@ uint32_t imma_proc_resurrect_client(IMMA_CB *cb, SaImmHandleT immHandle, /* send the request to the IMMND */ if (imma_mds_msg_sync_send(cb->imma_mds_hdl, &(cb->immnd_mds_dest), _evt, _evt, - IMMSV_WAIT_TIME) != NCSCC_RC_SUCCESS) { + timeout) != NCSCC_RC_SUCCESS) { TRACE_3("Failure in MDS send"); goto exposed; } diff --git a/src/imm/immd/immd_cb.h b/src/imm/immd/immd_cb.h index e9710ff71..51f52aba8 100644 --- a/src/imm/immd/immd_cb.h +++ b/src/imm/immd/immd_cb.h @@ -23,7 +23,6 @@ #include #define IMMD_EVT_TIME_OUT 100 -#define IMMSV_WAIT_TIME 100 #define m_IMMND_IS_ON_SCXB(m, n) ((m == n) ? 1 : 0) #define m_IMMD_IS_LOCAL_NODE(m, n) (m == n) ? 1 : 0 -- 2.20.1 ___ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel
[devel] [PATCH 1/2] immnd: Make IMMSV_FEVS_MAX_PENDING environment variable [#3260]
Immnd allows IMMSV_FEVS_MAX_PENDING sourced from enviroment variable, or uses default value (16) otherwise --- src/imm/common/immsv_api.h | 4 src/imm/immnd/ImmModel.cc | 2 +- src/imm/immnd/immnd_cb.h | 1 + src/imm/immnd/immnd_evt.c | 41 ++ src/imm/immnd/immnd_main.c | 13 5 files changed, 34 insertions(+), 27 deletions(-) diff --git a/src/imm/common/immsv_api.h b/src/imm/common/immsv_api.h index c37a624ed..f809c8168 100644 --- a/src/imm/common/immsv_api.h +++ b/src/imm/common/immsv_api.h @@ -77,10 +77,6 @@ typedef enum { ACCESS_CONTROL_ENFORCING = 2 } OsafImmAccessControlModeT; -/*Max # of outstanding fevs messages towards director.*/ -/*Note max-max is 255. cb->fevs_replies_pending is an uint8_t*/ -#define IMMSV_DEFAULT_FEVS_MAX_PENDING 16 - #define IMMSV_MAX_OBJECTS 1 #define IMMSV_MAX_ATTRIBUTES 128 #define IMMSV_MAX_ADMO_NAME_LENGTH 256 diff --git a/src/imm/immnd/ImmModel.cc b/src/imm/immnd/ImmModel.cc index 2d750040e..8631dc21f 100644 --- a/src/imm/immnd/ImmModel.cc +++ b/src/imm/immnd/ImmModel.cc @@ -1614,7 +1614,7 @@ SaAisErrorT immModel_nextResult(IMMND_CB* cb, void* searchOp, TRACE_2( "ERR_TRY_AGAIN: Too many pending incoming fevs " "messages (> %u) rejecting sync iteration next request", - IMMSV_DEFAULT_FEVS_MAX_PENDING); + cb->mFevsMaxPending); return SA_AIS_ERR_TRY_AGAIN; } err = ImmModel::instance(>immModel)->nextSyncResult(rsp, *op); diff --git a/src/imm/immnd/immnd_cb.h b/src/imm/immnd/immnd_cb.h index bb3bb8493..bc2d75b05 100644 --- a/src/imm/immnd/immnd_cb.h +++ b/src/imm/immnd/immnd_cb.h @@ -209,6 +209,7 @@ typedef struct immnd_cb_tag { NCS_PATRICIA_TREE immnd_clm_list; /* IMMND_IMM_CLIENT_NODE - node */ tmr_t splitbrain_tmr; bool splitbrain_tmr_run; + uint8_t mFevsMaxPending; /* Max pending fevs messages towards director */ } IMMND_CB; /* CB prototypes */ diff --git a/src/imm/immnd/immnd_evt.c b/src/imm/immnd/immnd_evt.c index 0e801a942..64c5223c4 100644 --- a/src/imm/immnd/immnd_evt.c +++ b/src/imm/immnd/immnd_evt.c @@ -1787,7 +1787,7 @@ static uint32_t immnd_evt_proc_search_next(IMMND_CB *cb, IMMND_EVT *evt, IMMSV_OM_RSP_SEARCH_NEXT **rspList = NULL; MDS_DEST implDest = 0LL; bool retardSync = - ((cb->fevs_replies_pending >= IMMSV_DEFAULT_FEVS_MAX_PENDING) && + ((cb->fevs_replies_pending >= cb->mFevsMaxPending) && cb->mIsCoord && (cb->syncPid > 0)); SaUint32T resultSize = 0; IMMSV_OM_RSP_SEARCH_BUNDLE_NEXT bundleSearch = {0, NULL}; @@ -2767,10 +2767,10 @@ static uint32_t immnd_evt_proc_admowner_init(IMMND_CB *cb, IMMND_EVT *evt, goto agent_rsp; } - if (cb->fevs_replies_pending >= IMMSV_DEFAULT_FEVS_MAX_PENDING) { + if (cb->fevs_replies_pending >= cb->mFevsMaxPending) { TRACE_2( "ERR_TRY_AGAIN: Too many pending incoming fevs messages (> %u) rejecting admo_init request", - IMMSV_DEFAULT_FEVS_MAX_PENDING); + cb->mFevsMaxPending); send_evt.info.imma.info.admInitRsp.error = SA_AIS_ERR_TRY_AGAIN; goto agent_rsp; } @@ -2895,10 +2895,10 @@ static uint32_t immnd_evt_proc_impl_set(IMMND_CB *cb, IMMND_EVT *evt, goto agent_rsp; } - if (cb->fevs_replies_pending >= IMMSV_DEFAULT_FEVS_MAX_PENDING) { + if (cb->fevs_replies_pending >= cb->mFevsMaxPending) { TRACE_2( "ERR_TRY_AGAIN: Too many pending incoming fevs messages (> %u) rejecting impl_set request", - IMMSV_DEFAULT_FEVS_MAX_PENDING); + cb->mFevsMaxPending); send_evt.info.imma.info.implSetRsp.error = SA_AIS_ERR_TRY_AGAIN; goto agent_rsp; } @@ -3061,10 +3061,10 @@ static uint32_t immnd_evt_proc_ccb_init(IMMND_CB *cb, IMMND_EVT *evt, goto agent_rsp; } - if (cb->fevs_replies_pending >= IMMSV_DEFAULT_FEVS_MAX_PENDING) { + if (cb->fevs_replies_pending >= cb->mFevsMaxPending) { TRACE_2( "ERR_TRY_AGAIN: Too many pending incoming fevs messages (> %u) rejecting ccb_init request", - IMMSV_DEFAULT_FEVS_MAX_PENDING); + cb->mFevsMaxPending); send_evt.info.imma.info.ccbInitRsp.error = SA_AIS_ERR_TRY_AGAIN; goto agent_rsp; } @@ -3220,11 +3220,10 @@ static uint32_t immnd_evt_proc_rt_update(IMMND_CB *cb, IMMND_EVT *evt, writbale. */ - if (cb->fevs_replies_pending >= - IMMSV_DEFAULT_FEVS_MAX_PENDING) { + if (cb->fevs_replies_pending >= cb->mFevsMaxPending) { TRACE_2( "ERR_TRY_AGAIN: Too many pending incoming fevs messages (> %u) rejecting rt_update
[devel] [PATCH 0/2] Review Request for Make IMMSV_FEVS_MAX_PENDING environment variable [#3260]
Summary: immnd: Make IMMSV_FEVS_MAX_PENDING environment variable [#3260] Review request for Ticket(s): 3260 Peer Reviewer(s): Thien, Thang Pull request to: *** LIST THE PERSON WITH PUSH ACCESS HERE *** Affected branch(es): develop Development branch: ticket-3260 Base revision: 8259816e20e83658f04f0264af19cafa0cdd2755 Personal repository: git://git.code.sf.net/u/minh-chau/review Impacted area Impact y/n Docsn Build systemn RPM/packaging n Configuration files n Startup scripts n SAF servicesy OpenSAF servicesn Core libraries n Samples n Tests n Other n Comments (indicate scope for each "y" above): - *** EXPLAIN/COMMENT THE PATCH SERIES HERE *** revision 68f3afd33cf629950ec8388b29ddfca4f3970cb3 Author: Minh Chau Date: Wed, 12 May 2021 10:23:13 +1000 imma: Correctly use IMMA_SYNCR_TIMEOUT [#3260] revision 36f43df693bf8461b8be28d721efcad1f1864fe4 Author: Minh Chau Date: Wed, 12 May 2021 10:23:05 +1000 immnd: Make IMMSV_FEVS_MAX_PENDING environment variable [#3260] Immnd allows IMMSV_FEVS_MAX_PENDING sourced from enviroment variable, or uses default value (16) otherwise Complete diffstat: -- src/imm/agent/imma_oi_api.cc | 2 +- src/imm/agent/imma_om_api.cc | 2 +- src/imm/agent/imma_proc.cc | 5 +++-- src/imm/common/immsv_api.h | 4 src/imm/immd/immd_cb.h | 1 - src/imm/immnd/ImmModel.cc| 2 +- src/imm/immnd/immnd_cb.h | 1 + src/imm/immnd/immnd_evt.c| 41 +++-- src/imm/immnd/immnd_main.c | 13 + 9 files changed, 39 insertions(+), 32 deletions(-) Testing Commands: - *** LIST THE COMMAND LINE TOOLS/STEPS TO TEST YOUR CHANGES *** Testing, Expected Results: -- *** PASTE COMMAND OUTPUTS / TEST RESULTS *** Conditions of Submission: - *** HOW MANY DAYS BEFORE PUSHING, CONSENSUS ETC *** Arch Built StartedLinux distro --- mipsn n mips64 n n x86 n n x86_64 n n powerpc n n powerpc64 n n Reviewer Checklist: --- [Submitters: make sure that your review doesn't trigger any checkmarks!] Your checkin has not passed review because (see checked entries): ___ Your RR template is generally incomplete; it has too many blank entries that need proper data filled in. ___ You have failed to nominate the proper persons for review and push. ___ Your patches do not have proper short+long header ___ You have grammar/spelling in your header that is unacceptable. ___ You have exceeded a sensible line length in your headers/comments/text. ___ You have failed to put in a proper Trac Ticket # into your commits. ___ You have incorrectly put/left internal data in your comments/files (i.e. internal bug tracking tool IDs, product names etc) ___ You have not given any evidence of testing beyond basic build tests. Demonstrate some level of runtime or other sanity testing. ___ You have ^M present in some of your files. These have to be removed. ___ You have needlessly changed whitespace or added whitespace crimes like trailing spaces, or spaces before tabs. ___ You have mixed real technical changes with whitespace and other cosmetic code cleanup changes. These have to be separate commits. ___ You need to refactor your submission into logical chunks; there is too much content into a single commit. ___ You have extraneous garbage in your review (merge commits etc) ___ You have giant attachments which should never have been sent; Instead you should place your content in a public tree to be pulled. ___ You have too many commits attached to an e-mail; resend as threaded commits, or place in a public tree for a pull. ___ You have resent this content multiple times without a clear indication of what has changed between each re-send. ___ You have failed to adequately and individually address all of the comments and change requests that were proposed in the initial review. ___ You have a misconfigured ~/.gitconfig file (i.e. user.name, user.email etc) ___ Your computer have a badly configured date and time; confusing the the threaded patch review. ___ Your changes affect IPC mechanism, and you don't present any results for in-service upgradability test. ___ Your changes affect user manual and documentation, your patch series do not contain the patch that updates the Doxygen manual. ___ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel