Change in osmo-bsc[master]: comments: clarify usage of conn.assignment and .handover scopes
Neels Hofmeyr has submitted this change and it was merged. ( https://gerrit.osmocom.org/12842 ) Change subject: comments: clarify usage of conn.assignment and .handover scopes .. comments: clarify usage of conn.assignment and .handover scopes Change-Id: I7ef602c3ce086aecbc3ae3ae6d3fd33ad2b9f85c --- M include/osmocom/bsc/gsm_data.h 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/include/osmocom/bsc/gsm_data.h b/include/osmocom/bsc/gsm_data.h index 867a46c..f6c5129 100644 --- a/include/osmocom/bsc/gsm_data.h +++ b/include/osmocom/bsc/gsm_data.h @@ -99,6 +99,9 @@ SUBSCR_SCCP_ST_CONNECTED }; +/* Information retrieved during an Assignment Request from the MSC. This is storage of the Assignment instructions + * parsed from the Assignment Request message, to pass on until the gscon and assignment FSMs have decided whether an + * Assignment is actually going to be carried out. Should remain unchanged after initial decoding. */ struct assignment_request { bool aoip; @@ -112,6 +115,9 @@ uint16_t s15_s0; }; +/* State of an ongoing Assignment, while the assignment_fsm is still busy. This serves as state separation to keep the + * currently used lchan and gscon unmodified until the outcome of an Assignment is known. If the Assignment fails, this + * state is simply discarded, and the gscon carries on with the original lchan remaining unchanged. */ struct assignment_fsm_data { struct assignment_request req; bool requires_voice_stream; @@ -204,12 +210,17 @@ /* back pointers */ struct gsm_network *network; - /* the primary / currently active lchan to the BTS/subscriber */ + /* the primary / currently active lchan to the BTS/subscriber. During Assignment and Handover, separate lchans +* are kept in the .assignment or .handover sub-structs, respectively, so that this lchan remains unaffected +* until Assignment or Handover have actually succeeded. */ struct gsm_lchan *lchan; + /* Only valid during an ongoing Assignment; might be overwritten at any time by a failed Assignment attempt. +* Once an Assignment was successful, all relevant state must be copied out of this sub-struct. */ struct assignment_fsm_data assignment; - /* handover information, if a handover is pending for this conn. */ + /* handover information, if a handover is pending for this conn. Valid only during an ongoing Handover +* operation. If a Handover was successful, all relevant state must be copied out of this sub-struct. */ struct handover ho; /* buffer/cache for classmark of the ME of the subscriber */ -- To view, visit https://gerrit.osmocom.org/12842 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I7ef602c3ce086aecbc3ae3ae6d3fd33ad2b9f85c Gerrit-Change-Number: 12842 Gerrit-PatchSet: 2 Gerrit-Owner: Neels Hofmeyr Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder (102)
Change in osmo-bsc[master]: comments: clarify usage of conn.assignment and .handover scopes
Hello Harald Welte, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/12842 to look at the new patch set (#2). Change subject: comments: clarify usage of conn.assignment and .handover scopes .. comments: clarify usage of conn.assignment and .handover scopes Change-Id: I7ef602c3ce086aecbc3ae3ae6d3fd33ad2b9f85c --- M include/osmocom/bsc/gsm_data.h 1 file changed, 13 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/42/12842/2 -- To view, visit https://gerrit.osmocom.org/12842 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I7ef602c3ce086aecbc3ae3ae6d3fd33ad2b9f85c Gerrit-Change-Number: 12842 Gerrit-PatchSet: 2 Gerrit-Owner: Neels Hofmeyr Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder (102)
Change in osmo-bsc[master]: comments: clarify usage of conn.assignment and .handover scopes
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/12842 ) Change subject: comments: clarify usage of conn.assignment and .handover scopes .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/12842 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I7ef602c3ce086aecbc3ae3ae6d3fd33ad2b9f85c Gerrit-Change-Number: 12842 Gerrit-PatchSet: 1 Gerrit-Owner: Neels Hofmeyr Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder (102) Gerrit-Comment-Date: Wed, 06 Feb 2019 08:05:13 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-bsc[master]: comments: clarify usage of conn.assignment and .handover scopes
Neels Hofmeyr has uploaded this change for review. ( https://gerrit.osmocom.org/12842 Change subject: comments: clarify usage of conn.assignment and .handover scopes .. comments: clarify usage of conn.assignment and .handover scopes Change-Id: I7ef602c3ce086aecbc3ae3ae6d3fd33ad2b9f85c --- M include/osmocom/bsc/gsm_data.h 1 file changed, 13 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/42/12842/1 diff --git a/include/osmocom/bsc/gsm_data.h b/include/osmocom/bsc/gsm_data.h index 867a46c..389f9a5 100644 --- a/include/osmocom/bsc/gsm_data.h +++ b/include/osmocom/bsc/gsm_data.h @@ -99,6 +99,9 @@ SUBSCR_SCCP_ST_CONNECTED }; +/* Information retrieved during an Assignment Request from the MSC. This used as storage of the Assignment instructions + * parsed from the Assignment Request message, to pass on until the gscon and assignment FSMs have decided whether an + * Assignment is actually going to be carried out. Must remain unchanged after initial decoding. */ struct assignment_request { bool aoip; @@ -112,6 +115,9 @@ uint16_t s15_s0; }; +/* State of an ongoing Assignment, while the assignment_fsm is still busy. This serves as state separation to keep the + * currently used lchan and gscon unmodified until the outcome of an Assignment is known. If the Assignment fails, this + * state is simply discarded, and the gscon carries on with the original lchan remaining unchanged. */ struct assignment_fsm_data { struct assignment_request req; bool requires_voice_stream; @@ -204,12 +210,17 @@ /* back pointers */ struct gsm_network *network; - /* the primary / currently active lchan to the BTS/subscriber */ + /* the primary / currently active lchan to the BTS/subscriber. During Assignment and Handover, separate lchans +* are kept in the .assignment or .handover sub-structs, respectively, so that this lchan remains unaffected +* until Assignment or Handover have actually succeeded. */ struct gsm_lchan *lchan; + /* Only valid during an ongoing Assignment; might be overwritten at any time by a failed Assignment attempt. +* Once an Assignment was successful, all relevant state must be copied out of this sub-struct. */ struct assignment_fsm_data assignment; - /* handover information, if a handover is pending for this conn. */ + /* handover information, if a handover is pending for this conn. Valid only during an ongoing Handover +* operation. If a Handover was successful, all relevant state must be copied out of this sub-struct. */ struct handover ho; /* buffer/cache for classmark of the ME of the subscriber */ -- To view, visit https://gerrit.osmocom.org/12842 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I7ef602c3ce086aecbc3ae3ae6d3fd33ad2b9f85c Gerrit-Change-Number: 12842 Gerrit-PatchSet: 1 Gerrit-Owner: Neels Hofmeyr