This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
Pau Espin Pedrol gerrit-no-reply at lists.osmocom.orgPau Espin Pedrol has submitted this change and it was merged. ( https://gerrit.osmocom.org/12339 )
Change subject: sysmobts_mgr: Prepare code for gpsd < 2.96 support
......................................................................
sysmobts_mgr: Prepare code for gpsd < 2.96 support
API prior to that version allocates the pointer internally. Let's change
current code to always use a pointer and in current supported code (gpsd
>= 2.96) point it to a user-allocated struct.
Follow-up patch will introduce necessary ifdefs to support older gpsd.
Change-Id: Iaeb5ac527cc3e58168027021d0f60afa93d1fb6f
---
M src/osmo-bts-sysmo/misc/sysmobts_mgr.h
M src/osmo-bts-sysmo/misc/sysmobts_mgr_calib.c
2 files changed, 10 insertions(+), 8 deletions(-)
Approvals:
Jenkins Builder: Verified
Stefan Sperling: Looks good to me, but someone else must approve
Neels Hofmeyr: Looks good to me, but someone else must approve
Pau Espin Pedrol: Looks good to me, approved
diff --git a/src/osmo-bts-sysmo/misc/sysmobts_mgr.h b/src/osmo-bts-sysmo/misc/sysmobts_mgr.h
index 88f4e24..b62707c 100644
--- a/src/osmo-bts-sysmo/misc/sysmobts_mgr.h
+++ b/src/osmo-bts-sysmo/misc/sysmobts_mgr.h
@@ -96,7 +96,8 @@
/* gps structure to see if there is a fix */
int gps_open;
struct osmo_fd gpsfd;
- struct gps_data_t gpsdata;
+ struct gps_data_t *gpsdata;
+ struct gps_data_t gpsdata_buf;
struct osmo_timer_list fix_timeout;
/* Loop/Re-try control */
diff --git a/src/osmo-bts-sysmo/misc/sysmobts_mgr_calib.c b/src/osmo-bts-sysmo/misc/sysmobts_mgr_calib.c
index b0b5edd..c3e821e 100644
--- a/src/osmo-bts-sysmo/misc/sysmobts_mgr_calib.c
+++ b/src/osmo-bts-sysmo/misc/sysmobts_mgr_calib.c
@@ -86,14 +86,14 @@
osmo_timer_del(&mgr->calib.fix_timeout);
osmo_fd_unregister(&mgr->calib.gpsfd);
- gps_close(&mgr->calib.gpsdata);
- memset(&mgr->calib.gpsdata, 0, sizeof(mgr->calib.gpsdata));
+ gps_close(mgr->calib.gpsdata);
+ memset(mgr->calib.gpsdata, 0, sizeof(*(mgr->calib.gpsdata)));
mgr->calib.gps_open = 0;
}
static void mgr_gps_checkfix(struct sysmobts_mgr_instance *mgr)
{
- struct gps_data_t *data = &mgr->calib.gpsdata;
+ struct gps_data_t *data = mgr->calib.gpsdata;
/* No 2D fix yet */
if (data->fix.mode < MODE_2D) {
@@ -119,7 +119,7 @@
{
int rc;
struct sysmobts_mgr_instance *mgr = fd->data;
- rc = compat_gps_read(&mgr->calib.gpsdata);
+ rc = compat_gps_read(mgr->calib.gpsdata);
if (rc == -1) {
LOGP(DCALIB, LOGL_ERROR, "gpsd vanished during read.\n");
calib_state_reset(mgr, CALIB_FAIL_GPS);
@@ -143,7 +143,8 @@
{
int rc;
- rc = gps_open("localhost", DEFAULT_GPSD_PORT, &mgr->calib.gpsdata);
+ mgr->calib.gpsdata = &mgr->calib.gpsdata_buf;
+ rc = gps_open("localhost", DEFAULT_GPSD_PORT, mgr->calib.gpsdata);
if (rc != 0) {
LOGP(DCALIB, LOGL_ERROR, "Failed to connect to GPS %d\n", rc);
calib_state_reset(mgr, CALIB_FAIL_GPS);
@@ -151,12 +152,12 @@
}
mgr->calib.gps_open = 1;
- gps_stream(&mgr->calib.gpsdata, WATCH_ENABLE, NULL);
+ gps_stream(mgr->calib.gpsdata, WATCH_ENABLE, NULL);
mgr->calib.gpsfd.data = mgr;
mgr->calib.gpsfd.cb = mgr_gps_read;
mgr->calib.gpsfd.when = BSC_FD_READ | BSC_FD_EXCEPT;
- mgr->calib.gpsfd.fd = mgr->calib.gpsdata.gps_fd;
+ mgr->calib.gpsfd.fd = mgr->calib.gpsdata->gps_fd;
if (osmo_fd_register(&mgr->calib.gpsfd) < 0) {
LOGP(DCALIB, LOGL_ERROR, "Failed to register GPSD fd\n");
calib_state_reset(mgr, CALIB_FAIL_GPS);
--
To view, visit https://gerrit.osmocom.org/12339
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: Iaeb5ac527cc3e58168027021d0f60afa93d1fb6f
Gerrit-Change-Number: 12339
Gerrit-PatchSet: 3
Gerrit-Owner: Pau Espin Pedrol <pespin at sysmocom.de>
Gerrit-Reviewer: Jenkins Builder (1000002)
Gerrit-Reviewer: Neels Hofmeyr <nhofmeyr at sysmocom.de>
Gerrit-Reviewer: Pau Espin Pedrol <pespin at sysmocom.de>
Gerrit-Reviewer: Stefan Sperling <stsp at stsp.name>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20181218/beff7a58/attachment.htm>