Project

General

Profile

Actions

Feature #4935

closed

osmo-pcu: Split BTS class (and struct struct gprs_rlcmac_bts) to PCU+BTS

Added by pespin about 3 years ago. Updated about 3 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Target version:
-
Start date:
01/07/2021
Due date:
% Done:

100%

Spec Reference:

Description

In current code base we have a big fat global class called BTS (bts.h) which holds all global information about BTS plus BTS specific bits.
This is totally wrong, and as we extend the code we keep extending lots of accesses to this singleton BTS class making everything more messy.

We should identify which fields belong to each bts node and which belong to the entire BSS/PCU and create a new object for it (this one is the once which can be accessed through a singleton/global variable).
Then finally have bts objects in a list inside that PCU object, potentially create one for each info_ind.

Then I guess each GprsMS object needs to have a field pointing to the BTS it is attached to?

Actions #1

Updated by pespin about 3 years ago

  • Assignee set to pespin

I plan to have a look at this soon since this kind of separation will ease adding new stuff (and avoid making the situation worse) when adding new features soon.

Actions #2

Updated by pespin about 3 years ago

There's already a "the_pcu" global bariable which is actually of type "struct gprs_bssgp_pcu". So I think we should create a new "struct gprs_pcu" class and move that exsiting struct to be under "bssgp" field in the new global class instance.

Actions #3

Updated by pespin about 3 years ago

  • Status changed from New to In Progress
  • % Done changed from 0 to 40

WIP patch doing initial work can be found here:
https://gerrit.osmocom.org/c/osmo-pcu/+/22162 WIP: Split PCU global PCU object from BTS object

Actions #4

Updated by pespin about 3 years ago

  • Status changed from In Progress to Feedback
  • % Done changed from 40 to 80

Some of the patches have already been merged.
Other patches combining the BTS + gprs_rlcmac_bts structs, moving bts objects under PCU structre and supporting multiple bts objects have been submitted to gerrit.

I think that's a good set of changes for now, and provide a good base to further improvements and features later on.

Once merged, the ticket can be closed.

Actions #5

Updated by pespin about 3 years ago

  • Status changed from Feedback to Resolved
  • % Done changed from 80 to 100

Merged, closing.

Actions

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)