lists.osmocom.org
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

gerrit-log

Thread Start a new thread
Download
Threads by month
  • ----- 2026 -----
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2025 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
gerrit-log@lists.osmocom.org

July 2023

  • 1 participants
  • 3051 discussions
[S] Change in pysim[master]: utils.py: remove superfluous import from itself
by laforge 29 Jul '23

29 Jul '23
Attention is currently required from: lynxis lazus. laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/pysim/+/34002 ) Change subject: utils.py: remove superfluous import from itself ...................................................................... Patch Set 3: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34002 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: Ied513a08cc8b5091dd467106250f1e6b5067c3a8 Gerrit-Change-Number: 34002 Gerrit-PatchSet: 3 Gerrit-Owner: lynxis lazus <lynxis(a)fe80.eu> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Attention: lynxis lazus <lynxis(a)fe80.eu> Gerrit-Comment-Date: Sat, 29 Jul 2023 06:22:04 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
1 0
0 0
[S] Change in pysim[master]: Fix the remaining functions using the broken Card.update_ust() call
by lynxis lazus 29 Jul '23

29 Jul '23
lynxis lazus has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/34008 ) Change subject: Fix the remaining functions using the broken Card.update_ust() call ...................................................................... Fix the remaining functions using the broken Card.update_ust() call Card.update_ust() got replaced by the file operation ust_update(). In addition to Change-Id I7a6a77b872a6f5d8c478ca75dcff8ea067b8203e Fixes: f8d2e2ba0892 ("split pySim/legacy/{cards,utils} from pySim/{cards,utils}") Change-Id: Ie6405cae37493a2101e5089a8d11766fbfed4518 --- M pySim/ts_31_102.py M pySim/ts_31_103.py 2 files changed, 27 insertions(+), 8 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/08/34008/1 diff --git a/pySim/ts_31_102.py b/pySim/ts_31_102.py index a90139d..c7a58f1 100644 --- a/pySim/ts_31_102.py +++ b/pySim/ts_31_102.py @@ -660,12 +660,14 @@ super().__init__() def do_est_service_enable(self, arg): - """Enable a service within EF.UST""" - self._cmd.card.update_est(int(arg), 1) + """Enable a service within EF.EST""" + selected_file = self._cmd.lchan.selected_file + selected_file.ust_update(self._cmd, [int(arg)], []) def do_est_service_disable(self, arg): - """Disable a service within EF.UST""" - self._cmd.card.update_est(int(arg), 0) + """Disable a service within EF.EST""" + selected_file = self._cmd.lchan.selected_file + selected_file.ust_update(self._cmd, [], [int(arg)]) # TS 31.102 Section 4.2.48 class EF_ACL(TransparentEF): @@ -1062,11 +1064,13 @@ def do_prose_service_activate(self, arg): """Activate a service within EF.5G_PROSE_ST""" - self._cmd.card.update_ust(int(arg), 1) + selected_file = self._cmd.lchan.selected_file + selected_file.ust_update(self._cmd, [int(arg)], []) def do_prose_service_deactivate(self, arg): """Deactivate a service within EF.5G_PROSE_ST""" - self._cmd.card.update_ust(int(arg), 0) + selected_file = self._cmd.lchan.selected_file + selected_file.ust_update(self._cmd, [], [int(arg)]) # TS 31.102 Section 4.4.13.3 (Rel 17) class EF_5G_PROSE_DD(TransparentEF): diff --git a/pySim/ts_31_103.py b/pySim/ts_31_103.py index 19ade2b..4327a1a 100644 --- a/pySim/ts_31_103.py +++ b/pySim/ts_31_103.py @@ -111,11 +111,13 @@ def do_ist_service_activate(self, arg): """Activate a service within EF.IST""" - self._cmd.card.update_ist(int(arg), 1) + selected_file = self._cmd.lchan.selected_file + selected_file.ust_update(self._cmd, [int(arg)], []) def do_ist_service_deactivate(self, arg): """Deactivate a service within EF.IST""" - self._cmd.card.update_ist(int(arg), 0) + selected_file = self._cmd.lchan.selected_file + selected_file.ust_update(self._cmd, [], [int(arg)]) def do_ist_service_check(self, arg): """Check consistency between services of this file and files present/activated. -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34008 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: Ie6405cae37493a2101e5089a8d11766fbfed4518 Gerrit-Change-Number: 34008 Gerrit-PatchSet: 1 Gerrit-Owner: lynxis lazus <lynxis(a)fe80.eu> Gerrit-MessageType: newchange
1 0
0 0
[S] Change in pysim[master]: ARA-M: fix encoding of the PkgRefDO when using aram_store_ref_ar_do
by lynxis lazus 29 Jul '23

29 Jul '23
lynxis lazus has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/34007 ) Change subject: ARA-M: fix encoding of the PkgRefDO when using aram_store_ref_ar_do ...................................................................... ARA-M: fix encoding of the PkgRefDO when using aram_store_ref_ar_do The command wasn't used the correct dict to allow the encoders to work. Related: OS#6121 Change-Id: Ic2bc179b413a6b139e07e3e55b93ff921cb020a9 --- M pySim/ara_m.py 1 file changed, 13 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/07/34007/1 diff --git a/pySim/ara_m.py b/pySim/ara_m.py index e2e6da1..8144381 100644 --- a/pySim/ara_m.py +++ b/pySim/ara_m.py @@ -354,7 +354,7 @@ ref_do_content += [{'aid_ref_empty_do': None}] ref_do_content += [{'dev_app_id_ref_do': opts.device_app_id}] if opts.pkg_ref: - ref_do_content += [{'pkg_ref_do': opts.pkg_ref}] + ref_do_content += [{'pkg_ref_do': {'package_name_string': opts.pkg_ref}}] # AR ar_do_content = [] if opts.apdu_never: -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34007 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: Ic2bc179b413a6b139e07e3e55b93ff921cb020a9 Gerrit-Change-Number: 34007 Gerrit-PatchSet: 1 Gerrit-Owner: lynxis lazus <lynxis(a)fe80.eu> Gerrit-MessageType: newchange
1 0
0 0
[S] Change in libosmo-netif[master]: example: Remove calls to osmo_ipa_process_msg()
by arehbein 29 Jul '23

29 Jul '23
arehbein has abandoned this change. ( https://gerrit.osmocom.org/c/libosmo-netif/+/33205 ) Change subject: example: Remove calls to osmo_ipa_process_msg() ...................................................................... Abandoned The Gerrit patch upload from July 24 included this change from in another -- To view, visit https://gerrit.osmocom.org/c/libosmo-netif/+/33205 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmo-netif Gerrit-Branch: master Gerrit-Change-Id: I53283ec7bd7f07dfa612681ae84af93d5cd098b9 Gerrit-Change-Number: 33205 Gerrit-PatchSet: 12 Gerrit-Owner: arehbein <arehbein(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-CC: daniel <dwillmann(a)sysmocom.de> Gerrit-CC: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: abandon
1 0
0 0
[S] Change in osmo-pcu[master]: cosmetic: Document foce_two_phase feature based on specs
by pespin 28 Jul '23

28 Jul '23
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-pcu/+/34006 ) Change subject: cosmetic: Document foce_two_phase feature based on specs ...................................................................... cosmetic: Document foce_two_phase feature based on specs Change-Id: I4f8e3d0dcb721d51838b50aba5b40d0551c8d0c5 --- M src/bts.cpp 1 file changed, 15 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/06/34006/1 diff --git a/src/bts.cpp b/src/bts.cpp index 177544a..fe48018 100644 --- a/src/bts.cpp +++ b/src/bts.cpp @@ -970,6 +970,12 @@ LOGP(DRLCMAC, LOGL_DEBUG, "MS requests single TS uplink transmission " "(one phase packet access)\n"); if (bts->pcu->vty.force_two_phase) { + /* 3GPP TS 44.018 3.5.2.1.3.1: "If the establishment cause in the + * CHANNEL REQUEST message indicates a request for one phase packet access, + * the network may grant either a one phase packet access or a single block + * packet access for the mobile station. If a single block packet access is + * granted, it forces the mobile station to perform a two phase packet access." + */ LOGP(DRLCMAC, LOGL_DEBUG, "Forcing two phase access\n"); chan_req.single_block = true; } -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/34006 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: I4f8e3d0dcb721d51838b50aba5b40d0551c8d0c5 Gerrit-Change-Number: 34006 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newchange
1 0
0 0
[S] Change in libosmo-gprs[master]: rlcmac: Initial selection of packet-access-procedure mode based on or...
by pespin 28 Jul '23

28 Jul '23
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmo-gprs/+/34005 ) Change subject: rlcmac: Initial selection of packet-access-procedure mode based on originating cause ...................................................................... rlcmac: Initial selection of packet-access-procedure mode based on originating cause Change-Id: I930a1fcf23506f75562a6795f9a6e42b187d2974 --- M include/osmocom/gprs/rlcmac/llc_queue.h M src/rlcmac/gre.c M src/rlcmac/llc_queue.c 3 files changed, 43 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/libosmo-gprs refs/changes/05/34005/1 diff --git a/include/osmocom/gprs/rlcmac/llc_queue.h b/include/osmocom/gprs/rlcmac/llc_queue.h index 7149f76..dd7528c 100644 --- a/include/osmocom/gprs/rlcmac/llc_queue.h +++ b/include/osmocom/gprs/rlcmac/llc_queue.h @@ -27,6 +27,7 @@ struct gprs_llc_prio_queue { enum gprs_rlcmac_radio_priority radio_prio; /* Radio prio of this queue, range (1..4) */ + enum osmo_gprs_rlcmac_llc_sapi sapi; /* LLC SAPI of this queue */ struct gprs_codel codel_state; struct llist_head queue; /* queued LLC DL data. See enum gprs_rlcmac_llc_queue_prio. */ }; @@ -50,6 +51,7 @@ enum osmo_gprs_rlcmac_llc_sapi sapi, enum gprs_rlcmac_radio_priority radio_prio); struct msgb *gprs_rlcmac_llc_queue_dequeue(struct gprs_rlcmac_llc_queue *q, bool can_discard); enum gprs_rlcmac_radio_priority gprs_rlcmac_llc_queue_highest_radio_prio_pending(struct gprs_rlcmac_llc_queue *q); +enum osmo_gprs_rlcmac_llc_sapi gprs_rlcmac_llc_queue_highest_llc_sapi_pending(struct gprs_rlcmac_llc_queue *q); void gprs_rlcmac_llc_queue_merge_prepend(struct gprs_rlcmac_llc_queue *q, struct gprs_rlcmac_llc_queue *old_q); diff --git a/src/rlcmac/gre.c b/src/rlcmac/gre.c index 59cf0f5..0eb6a8c 100644 --- a/src/rlcmac/gre.c +++ b/src/rlcmac/gre.c @@ -198,6 +198,9 @@ /* Create a new UL TBF and start Packet access procedure to get an UL assignment if needed */ int gprs_rlcmac_entity_start_ul_tbf_pkt_acc_proc_if_needed(struct gprs_rlcmac_entity *gre) { + enum osmo_gprs_rlcmac_llc_sapi tx_sapi; + enum gprs_rlcmac_tbf_ul_ass_type ul_ass_type; + /* TS 44.060 5.3 "In packet idle mode, upper layers may require the * transfer of a upper layer PDU, which implicitly triggers the * establishment of a TBF and the transition to packet transfer mode." */ @@ -212,8 +215,27 @@ gre->ul_tbf = gprs_rlcmac_ul_tbf_alloc(gre); if (!gre->ul_tbf) return -ENOMEM; + + tx_sapi = gprs_rlcmac_llc_queue_highest_radio_prio_pending(gre->llc_queue); + /* 3GPP TS 44.018 3.5.2.1.2 "Initiation of the packet access procedure: channel request" */ + switch (tx_sapi) { + case OSMO_GPRS_RLCMAC_LLC_SAPI_GMM: + /* "If the purpose [...] is to send a Page Response, a Cell update (the mobile + * station was in GMM READY state before the cell reselection) or for any other + * GPRS Mobility Management or GPRS Session Management procedure, the mobile station + * shall request a one phase packet access" */ + ul_ass_type = GPRS_RLCMAC_TBF_UL_ASS_TYPE_1PHASE; + break; + default: + /* "If the purpose [...] is to send user data and the requested RLC mode is + * acknowledged mode, the mobile station shall request either a one phase packet + * access or a single block packet access." */ + /* TODO: We always use 1phase for now... ideally we should decide + * based on amount of Tx data and configured MultiSlot Class? */ + ul_ass_type = GPRS_RLCMAC_TBF_UL_ASS_TYPE_1PHASE; + } /* We always use 1phase for now... */ - return gprs_rlcmac_tbf_ul_ass_start(gre->ul_tbf, GPRS_RLCMAC_TBF_UL_ASS_TYPE_1PHASE); + return gprs_rlcmac_tbf_ul_ass_start(gre->ul_tbf, ul_ass_type); } int gprs_rlcmac_entity_llc_enqueue(struct gprs_rlcmac_entity *gre, diff --git a/src/rlcmac/llc_queue.c b/src/rlcmac/llc_queue.c index 83c926e..d1f923a 100644 --- a/src/rlcmac/llc_queue.c +++ b/src/rlcmac/llc_queue.c @@ -47,6 +47,7 @@ for (i = 0; i < ARRAY_SIZE(q->pq); i++) { for (j = 0; j < ARRAY_SIZE(q->pq[i]); j++) { q->pq[i][j].radio_prio = i; /* enum gprs_rlcmac_radio_priority, range (0..3) */ + q->pq[i][j].sapi = i + 1; /* osmo_gprs_rlcmac_llc_sapi, range (1..11) */ INIT_LLIST_HEAD(&q->pq[i][j].queue); gprs_codel_init(&q->pq[i][j].codel_state); } @@ -222,6 +223,14 @@ return prioq->radio_prio; } +enum osmo_gprs_rlcmac_llc_sapi gprs_rlcmac_llc_queue_highest_llc_sapi_pending(struct gprs_rlcmac_llc_queue *q) +{ + struct gprs_llc_prio_queue *prioq = gprs_rlcmac_llc_queue_find_msg(q); + OSMO_ASSERT(prioq); + return prioq->sapi; +} + + /* Merge old_q messages into q, prepending them. old_q must be freed by the caller. */ void gprs_rlcmac_llc_queue_merge_prepend(struct gprs_rlcmac_llc_queue *q, struct gprs_rlcmac_llc_queue *old_q) { -- To view, visit https://gerrit.osmocom.org/c/libosmo-gprs/+/34005 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmo-gprs Gerrit-Branch: master Gerrit-Change-Id: I930a1fcf23506f75562a6795f9a6e42b187d2974 Gerrit-Change-Number: 34005 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newchange
1 0
0 0
[S] Change in pysim[master]: Reimplement ust_service_activate and ust_service_deactivate for USIM/...
by laforge 28 Jul '23

28 Jul '23
laforge has submitted this change. ( https://gerrit.osmocom.org/c/pysim/+/33985 ) Change subject: Reimplement ust_service_activate and ust_service_deactivate for USIM/EF.UST ...................................................................... Reimplement ust_service_activate and ust_service_deactivate for USIM/EF.UST Fixes: f8d2e2ba0892 ("split pySim/legacy/{cards,utils} from pySim/{cards,utils}") Change-Id: I7a6a77b872a6f5d8c478ca75dcff8ea067b8203e --- M pySim/ts_31_102.py M pySim/ts_31_102_telecom.py 2 files changed, 33 insertions(+), 2 deletions(-) Approvals: laforge: Looks good to me, approved Jenkins Builder: Verified diff --git a/pySim/ts_31_102.py b/pySim/ts_31_102.py index dc674b2..a90139d 100644 --- a/pySim/ts_31_102.py +++ b/pySim/ts_31_102.py @@ -466,11 +466,13 @@ def do_ust_service_activate(self, arg): """Activate a service within EF.UST""" - self._cmd.card.update_ust(int(arg), 1) + selected_file = self._cmd.lchan.selected_file + selected_file.ust_update(self._cmd, [int(arg)], []) def do_ust_service_deactivate(self, arg): """Deactivate a service within EF.UST""" - self._cmd.card.update_ust(int(arg), 0) + selected_file = self._cmd.lchan.selected_file + selected_file.ust_update(self._cmd, [], [int(arg)]) def do_ust_service_check(self, arg): """Check consistency between services of this file and files present/activated. diff --git a/pySim/ts_31_102_telecom.py b/pySim/ts_31_102_telecom.py index a0098c7..575ccae 100644 --- a/pySim/ts_31_102_telecom.py +++ b/pySim/ts_31_102_telecom.py @@ -120,7 +120,26 @@ cmd.lchan.select_file(self) return num_problems + def ust_update(self, cmd, activate=[], deactivate=[]): + service_data, sw = cmd.lchan.read_binary() + service_data = h2b(service_data) + for service in activate: + nbyte, nbit = EF_UServiceTable._bit_byte_offset_for_service(service) + if nbyte > len(service_data): + missing = nbyte - service_data + service_data.extend(missing * "00") + service_data[nbyte] |= (1 << nbit) + + for service in deactivate: + nbyte, nbit = EF_UServiceTable._bit_byte_offset_for_service(service) + if nbyte > len(service_data): + missing = nbyte - service_data + service_data.extend(missing * "00") + service_data[nbyte] &= ~(1 << nbit) + + service_data = b2h(service_data) + cmd.lchan.update_binary(service_data) # TS 31.102 Section 4.4.2.1 class EF_PBR(LinFixedEF): -- To view, visit https://gerrit.osmocom.org/c/pysim/+/33985 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I7a6a77b872a6f5d8c478ca75dcff8ea067b8203e Gerrit-Change-Number: 33985 Gerrit-PatchSet: 3 Gerrit-Owner: lynxis lazus <lynxis(a)fe80.eu> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-CC: dexter <pmaier(a)sysmocom.de> Gerrit-MessageType: merged
1 0
0 0
[S] Change in pysim[master]: Reimplement ust_service_activate and ust_service_deactivate for USIM/...
by laforge 28 Jul '23

28 Jul '23
Attention is currently required from: lynxis lazus. laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/pysim/+/33985 ) Change subject: Reimplement ust_service_activate and ust_service_deactivate for USIM/EF.UST ...................................................................... Patch Set 2: Code-Review+2 (1 comment) File pySim/ts_31_102_telecom.py: https://gerrit.osmocom.org/c/pysim/+/33985/comment/15d67c96_64c88a50 PS1, Line 143: > I guess a library function also shouldn't print hex-dumps to the command line. […] Done -- To view, visit https://gerrit.osmocom.org/c/pysim/+/33985 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I7a6a77b872a6f5d8c478ca75dcff8ea067b8203e Gerrit-Change-Number: 33985 Gerrit-PatchSet: 2 Gerrit-Owner: lynxis lazus <lynxis(a)fe80.eu> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-CC: dexter <pmaier(a)sysmocom.de> Gerrit-Attention: lynxis lazus <lynxis(a)fe80.eu> Gerrit-Comment-Date: Fri, 28 Jul 2023 15:34:37 +0000 Gerrit-HasComments: Yes Gerrit-Has-Labels: Yes Comment-In-Reply-To: laforge <laforge(a)osmocom.org> Gerrit-MessageType: comment
1 0
0 0
[S] Change in osmo-ttcn3-hacks[master]: pcu: TC_dl_multislot_tbf_ms_class_from_sgsn(): Properly wait for USF
by pespin 28 Jul '23

28 Jul '23
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34003 ) Change subject: pcu: TC_dl_multislot_tbf_ms_class_from_sgsn(): Properly wait for USF ...................................................................... pcu: TC_dl_multislot_tbf_ms_class_from_sgsn(): Properly wait for USF Change-Id: I34b31c292c00b6880311906ce6713a8e3c69a0d2 --- M pcu/PCU_Tests.ttcn 1 file changed, 13 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/03/34003/1 diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn index 82ecb57..e381c59 100644 --- a/pcu/PCU_Tests.ttcn +++ b/pcu/PCU_Tests.ttcn @@ -3198,6 +3198,7 @@ var PacketDlAssign dl_tbf_ass; var RlcmacDlBlock dl_block; var uint32_t poll_fn; + var uint32_t dl_fn; var uint32_t sched_fn; var GprsMS ms; timer T := 5.0; @@ -3224,11 +3225,12 @@ f_ms_establish_ul_tbf(ms); /* Wait until PCU starts requesting for UL block on this TBF: */ - f_ms_wait_usf(ms); + dl_fn := f_ms_wait_usf(ms, nr := f_ms_tx_TsTrxBtsNum(ms)); + sched_fn := f_next_pdch_block(dl_fn); /* Send one UL block (with TLLI since we are in One-Phase Access contention resolution) and make sure it is ACKED fine */ - f_ms_tx_ul_data_block(ms, data, with_tlli := true, fn := ms.ul_tbf.start_time_fn, + f_ms_tx_ul_data_block(ms, data, with_tlli := true, fn := sched_fn, nr := f_ms_tx_TsTrxBtsNum(ms)); /* DL ACK/NACK sets poll+rrbp requesting PACKET CONTROL ACK */ f_rx_rlcmac_dl_block_exp_ack_nack(dl_block, poll_fn, nr := f_ms_tx_TsTrxBtsNum(ms)); -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34003 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I34b31c292c00b6880311906ce6713a8e3c69a0d2 Gerrit-Change-Number: 34003 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newchange
1 0
0 0
[M] Change in osmo-ttcn3-hacks[master]: pcu: Introduce test TC_dl_multislot_tbf_ms_class_unknown
by pespin 28 Jul '23

28 Jul '23
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34004 ) Change subject: pcu: Introduce test TC_dl_multislot_tbf_ms_class_unknown ...................................................................... pcu: Introduce test TC_dl_multislot_tbf_ms_class_unknown Related: OS#6118 Change-Id: I9af8792fe4c44b5dd1aab5a2d4b7d3c2a2366d12 --- M pcu/PCU_Tests.ttcn M pcu/expected-results.xml 2 files changed, 86 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/04/34004/1 diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn index e381c59..d844736 100644 --- a/pcu/PCU_Tests.ttcn +++ b/pcu/PCU_Tests.ttcn @@ -3252,6 +3252,75 @@ f_shutdown(__BFILE__, __LINE__, final := true); } +/* Test DL TBF assignment over PACCH if Multislot class is unknown both at PCU + * and SGSN (eg. because MS started 1-phase access and SGSN answered back). + * Since the msclass is unknown, it shouldn't assign multiple timeslots since + * the MS may not support it. Related OS#6118. */ +testcase TC_dl_multislot_tbf_ms_class_unknown() runs on RAW_PCU_Test_CT +{ + var PCUIF_info_ind info_ind := valueof(ts_PCUIF_INFO_default(c_PCUIF_Flags_noMCS)); + var RlcmacDlBlock dl_block; + var octetstring payload; + var template (value) LlcBlockHdr blk_hdr; + var template (value) LlcBlocks blocks; + var uint32_t sched_fn; + var uint32_t dl_fn; + var template RlcmacDlBlock acknack_tmpl; + var GprsMS ms; + var octetstring data := f_rnd_octstring(10); + + /* Initialize NS/BSSGP side */ + f_init_bssgp(); + + /* Only 1 TRX with 8 PDCH */ + f_PCUIF_PDCHMask_set(info_ind, '11111111'B, 0); + f_PCUIF_PDCHMask_set(info_ind, '00000000'B, (1 .. 7)); + + /* Initialize GPRS MS side */ + f_init_gprs_ms(); + ms := g_ms[0]; /* We only use first MS in this test */ + + /* Initialize the PCU interface abstraction */ + f_init_raw(testcasename(), info_ind); + + /* Establish BSSGP connection to the PCU */ + f_bssgp_establish(); + f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli); + + /* Establish an Uplink TBF. 1 TS is assigned over AGCH. */ + f_ms_establish_ul_tbf(ms); + + /* Wait until PCU starts requesting for UL block on this TBF: */ + dl_fn := f_ms_wait_usf(ms, nr := f_ms_tx_TsTrxBtsNum(ms)); + sched_fn := f_next_pdch_block(dl_fn); + + /* Send one UL block (with TLLI since we are in One-Phase Access + * contention resolution) and make sure it is ACKED fine. */ + payload := f_rnd_octstring(16); /* 16 bytes fills the llc block (because TLLI takes 4 bytes) */ + blk_hdr := t_RLCMAC_LLCBLOCK_HDR(length_ind := lengthof(payload), + more := false, e := true); + blocks := { t_RLCMAC_LLCBLOCK(payload, blk_hdr) }; + /* Set CV = 15 to signal there's still more than BS_CV_MAX blocks to be sent */ + f_ms_tx_ul_data_blocks_gprs(ms, blocks, cv := 15, with_tlli := true, fn := sched_fn, nr := f_ms_tx_TsTrxBtsNum(ms)); + + /* UL block should be received in SGSN */ + BSSGP[0].receive(tr_BSSGP_UL_UD(ms.tlli, mp_gb_cfg.bvc[0].cell_id)); + + acknack_tmpl := tr_RLCMAC_UL_ACK_NACK_GPRS(ms.ul_tbf.tfi, + tr_UlAckNackGprs(ms.tlli, + tr_AckNackDescription(final_ack := '0'B))) + f_rx_rlcmac_dl_block_exp_ack_nack(dl_block, sched_fn, acknack_tmpl, nr := f_ms_tx_TsTrxBtsNum(ms)); + + BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, racap := omit)); + dl_block := f_ms_rx_pkt_ass_pacch(ms, sched_fn, tr_RLCMAC_DL_PACKET_ASS, nr := f_ms_tx_TsTrxBtsNum(ms)); + if (f_dltbf_num_slots(ms.dl_tbf) != 1) { + setverdict(fail, "Expected 1 PDCH slots allocated but got ", f_dltbf_num_slots(ms.dl_tbf)); + f_shutdown(__BFILE__, __LINE__); + } + + f_shutdown(__BFILE__, __LINE__, final := true); +} + testcase TC_dl_multislot_tbf_ms_class_from_2phase() runs on RAW_PCU_Test_CT { var PCUIF_info_ind info_ind := valueof(ts_PCUIF_INFO_default(c_PCUIF_Flags_noMCS)); var RlcmacDlBlock dl_block; @@ -7436,6 +7505,7 @@ execute( TC_pcuif_fh_pkt_ass_dl() ); execute( TC_multitrx_multims_alloc() ); execute( TC_dl_multislot_tbf_ms_class_from_sgsn() ); + execute( TC_dl_multislot_tbf_ms_class_unknown() ); execute( TC_dl_multislot_tbf_ms_class_from_2phase() ); execute( TC_ul_multislot_tbf_ms_class_from_2phase() ); execute( TC_ul_tbf_reestablish_with_pkt_resource_req() ); diff --git a/pcu/expected-results.xml b/pcu/expected-results.xml index eccff6f..2a25934 100644 --- a/pcu/expected-results.xml +++ b/pcu/expected-results.xml @@ -93,6 +93,12 @@ PCU_Tests.ttcn:MASKED TC_dl_multislot_tbf_ms_class_from_sgsn testcase </failure> </testcase> + <testcase classname='PCU_Tests' name='TC_dl_multislot_tbf_ms_class_unknown' time='MASKED'> + <failure type='fail-verdict'>Expected 1 PDCH slots allocated but got 4 + PCU_Tests.ttcn:MASKED PCU_Tests control part + PCU_Tests.ttcn:MASKED TC_dl_multislot_tbf_ms_class_unknown testcase + </failure> + </testcase> <testcase classname='PCU_Tests' name='TC_dl_multislot_tbf_ms_class_from_2phase' time='MASKED'/> <testcase classname='PCU_Tests' name='TC_ul_multislot_tbf_ms_class_from_2phase' time='MASKED'/> <testcase classname='PCU_Tests' name='TC_ul_tbf_reestablish_with_pkt_resource_req' time='MASKED'/> -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34004 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I9af8792fe4c44b5dd1aab5a2d4b7d3c2a2366d12 Gerrit-Change-Number: 34004 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newchange
1 0
0 0
  • ← Newer
  • 1
  • ...
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • ...
  • 306
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.