Hi Neels,
On Mon, May 29, 2017 at 01:12:29AM +0200, Neels Hofmeyr wrote:
commit
b4999b60d48bcbb5aa575973d068e07ab672e095
Change-Id: Ib13cb4099d12fa71e9e0b8727e19ab29e11909b2
This commit adds PCU sockets to OsmoNITB, but these are not configurable,
which is a problem for the osmo-gsm-tester. We cannot have separate OsmoNITB
processes all write to /tmp/pcu_bts, their paths needs to be configurable.
This is a pity, sorry about missing that. I think the BSC-side PCU
socket has started at a time where even the OsmoBTS PCU socket was not
configurable yet. But the history of course doesn't help here.
It's sad that we only see this now - for a patch that has been in gerrit
for review since March :/
Also they seem to not be cleaned up when the process
exits. I now see failures
of OsmoNITB starting because the /tmp/pcu_bts is still present. This appears
when a different user attempts to start an OsmoNITB, i.e. I had a successful
run with the 'jenkins' user and am then trying as 'neels'. I guess the
PCU
socket file should be cleaned up on exit??
not sure if we do that for mncc and the other sockets. I would try to
follow what's done there. In a crash you cannot reliably clean them up
anyway, so in general one must live with that.
The third point is that I don't understand why the
OsmoNITB or the OsmoBSC need
PCU sockets. The commit log does not explain that unfortunately.
In classic GSM networks the PCU was always co-located with the BSC.
It's only nanoBTS and OsmoBTS that put the PCU with the BTS (which was
more or less required or strongly implied by the fact there's no TDM but
an IP link on Abis).
So if we want to support GPRS/EGPRS for classic BTSs with proprietary
BTSs-side code, we ned to have support for co-locating OsmoPCU with
OsmoBSC (or NITB, but that will die soon anyway). To the PCU this is
fully transparent, i.e. the PCU should not care whether it attaches to
the pcu_sock of a BTS (in the OsmoBTS case) or to that of a BSC. The
protocol is the same.
I would like this commit to be reverted until the
location is configurable, so
that the osmo-gsm-tester can continue to run across several users. (and several
NITBs at once, which we're not using yet, but in principle could want to.)
There are a long series of follow-up commits merged which would all need
to be reverted (otherwise there are clashes and fall-out). So I think
the more realistic approach is to simply make the socket path
configurable, possibly even share some of the setup/cleanup code with
mncc_sock? I have plenty of other Osmocom TODOs on my list for this
Sunday, but will try to look at it tonight. Cannot make promises,
though.
I have a ticket for this in the OsmoGSMTester project,
we may need to move it
to a different parent project or create a new ticket:
https://osmocom.org/issues/2293
I think it's an issue with libbsc, so it should go to the OpenBSC
project in the libbsc category?
Regards,
Harald
--
- Harald Welte <laforge(a)gnumonks.org>
http://laforge.gnumonks.org/
============================================================================
"Privacy in residential applications is a desirable marketing option."
(ETSI EN 300 175-7 Ch. A6)