pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmocore/+/39346?usp=email )
Change subject: osmo_io: Increase default queue max_length from 32 to 1024
......................................................................
osmo_io: Increase default queue max_length from 32 to 1024
The default value is way too low, and can be hit easily by apps
submitting several messages in one main loop run.
This is the case for instance of the Abis OML protocol, where a cascade
of "State Changed Event Reports" are sent for the whole object tree.
Set the default to a saner bigger value. In the end, increasing the
value doesn't hurt normal use of apps, and 1024 is still a fairly small
number to avoid the app eating the whole system memory if something
unexpected happens.
Change-Id: I92d5369af523f6297d45d4b534bb0f349ae74485
(cherry picked from commit 9cbc92e80e8a70131851b363c4438c216e559335)
---
M src/core/osmo_io.c
1 file changed, 2 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/46/39346/1
diff --git a/src/core/osmo_io.c b/src/core/osmo_io.c
index af096e6..98d8ef3 100644
--- a/src/core/osmo_io.c
+++ b/src/core/osmo_io.c
@@ -637,7 +637,7 @@
* The created osmo_io_fd is initialized with some default settings:
* * msgb allocations size: OSMO_IO_DEFAULT_MSGB_SIZE (1024)
* * msgb headroom: OSMO_IO_DEFAULT_MSGB_HEADROOM (128)
- * * tx_queue depth: 32
+ * * tx_queue depth: 1024
*
* Those values may be adjusted from their defaults by using osmo_iofd_set_alloc_info() and
* osmo_iofd_set_txqueue_max_length() on the osmo_io_fd.
@@ -696,7 +696,7 @@
iofd->msgb_alloc.size = OSMO_IO_DEFAULT_MSGB_SIZE;
iofd->msgb_alloc.headroom = OSMO_IO_DEFAULT_MSGB_HEADROOM;
- iofd->tx_queue.max_length = 32;
+ iofd->tx_queue.max_length = 1024;
INIT_LLIST_HEAD(&iofd->tx_queue.msg_queue);
return iofd;
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/39346?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: libosmocore
Gerrit-Branch: pespin/rel-1.10.0
Gerrit-Change-Id: I92d5369af523f6297d45d4b534bb0f349ae74485
Gerrit-Change-Number: 39346
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmocore/+/39347?usp=email )
Change subject: gsmtap: Increase txqueue max_length from 64 to 1024
......................................................................
gsmtap: Increase txqueue max_length from 64 to 1024
The default value may be too low for main loop iterations writing a lot
of output. Increase it to a saner value.
Change-Id: Ie737e1d060ea3ee48631604bbae1b8b84cf787b9
(cherry picked from commit 5edb7d54a8265ad6f44afdd0d07eda041f54ed98)
---
M src/core/gsmtap_util.c
1 file changed, 2 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/47/39347/1
diff --git a/src/core/gsmtap_util.c b/src/core/gsmtap_util.c
index b64c7b0..62d3ffa 100644
--- a/src/core/gsmtap_util.c
+++ b/src/core/gsmtap_util.c
@@ -496,8 +496,8 @@
if (osmo_iofd_register(gti->out, gti->wq.bfd.fd) < 0)
goto err_cleanup;
- /* osmo write queue previously used was set up with value of 64 */
- osmo_iofd_set_txqueue_max_length(gti->out, 64);
+ /* Use a big enough tx queue to avoid gsmtap messages being dropped: */
+ osmo_iofd_set_txqueue_max_length(gti->out, 1024);
}
return gti;
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/39347?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: libosmocore
Gerrit-Branch: pespin/rel-1.10.0
Gerrit-Change-Id: Ie737e1d060ea3ee48631604bbae1b8b84cf787b9
Gerrit-Change-Number: 39347
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmocore/+/39348?usp=email )
Change subject: osmo_io: Improve osmo_iofd_notify_connected() documentation
......................................................................
osmo_io: Improve osmo_iofd_notify_connected() documentation
The mentioned scenario happens when using osmo_stream_cli inside
libosmo-abis BTS code connecting to an osmo-bsc in the loopback
interface.
The client sends SYN and the server sends SYN+ACK and then quickly sends
an IPA ID GET.
Change-Id: Ica20a050b98d117995a5b625b23ab9faa61aabee
(cherry picked from commit 59753c57a5d084549b43e63e3f0a0f6b4d21d766)
---
M src/core/osmo_io.c
1 file changed, 12 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/48/39348/1
diff --git a/src/core/osmo_io.c b/src/core/osmo_io.c
index 98d8ef3..9c93e25 100644
--- a/src/core/osmo_io.c
+++ b/src/core/osmo_io.c
@@ -994,12 +994,22 @@
/*! Request notification of the user if/when a client socket is connected.
* Calling this function will request osmo_io to notify the user (via
- * write call-back) once a non-blocking outbound connect() of the
- * socket completes.
+ * write call-back with res=0 and msgb=NULL) once a non-blocking outbound
+ * connect() of the socket completes.
*
* This only works for connection oriented sockets in either
* OSMO_IO_FD_MODE_READ_WRITE or OSMO_IO_FD_MODE_RECVMSG_SENDMSG mode.
*
+ * The fact that the write call-back is called with msgb=NULL can be used to
+ * distinguish before this "connected" notification and a socket write failure.
+ *
+ * If the server transmits data quick enough after accepting the connection,
+ * it may happen that a read call-back is triggered towards the user before this
+ * special write-callback, since both events may come together from the kernel.
+ * Hence under those scenarios where server starts the communication, it is
+ * important not to assume or require that the write-callback(res=0, msgb=NULL)
+ * will be the first one triggered.
+ *
* \param[in] iofd the file descriptor */
void osmo_iofd_notify_connected(struct osmo_io_fd *iofd)
{
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/39348?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: libosmocore
Gerrit-Branch: pespin/rel-1.10.0
Gerrit-Change-Id: Ica20a050b98d117995a5b625b23ab9faa61aabee
Gerrit-Change-Number: 39348
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Attention is currently required from: csaba.sipos.
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-bsc/+/39315?usp=email
to look at the new patch set (#3).
The following approvals got outdated and were removed:
Verified-1 by Jenkins Builder
Change subject: nokia_site: add reset_type attribute
......................................................................
nokia_site: add reset_type attribute
Change-Id: I0f31cd711768c963e5c14c0f4969ff76cb05c12b
---
M src/osmo-bsc/bts_nokia_site.c
1 file changed, 24 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/15/39315/3
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/39315?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: I0f31cd711768c963e5c14c0f4969ff76cb05c12b
Gerrit-Change-Number: 39315
Gerrit-PatchSet: 3
Gerrit-Owner: csaba.sipos <metro4(a)freemail.hu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: csaba.sipos <metro4(a)freemail.hu>
Attention is currently required from: daniel, laforge, neels, osmith, pespin.
fixeria has posted comments on this change by pespin. ( https://gerrit.osmocom.org/c/libosmo-netif/+/39316?usp=email )
Change subject: stream: Introduce osmo_stream_{cli,srv}_set_segmentation_cb2
......................................................................
Patch Set 1:
(1 comment)
Patchset:
PS1:
> I'll need this most probably when moving osmo-pcap-server to use osmo_stream_srv, in order to segmen […]
Please explain in COMMIT_MSG why you're adding this API.
--
To view, visit https://gerrit.osmocom.org/c/libosmo-netif/+/39316?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: libosmo-netif
Gerrit-Branch: master
Gerrit-Change-Id: I6e8dd6ece13397074075f05a1a0a8dbdd80d8848
Gerrit-Change-Number: 39316
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: daniel <dwillmann(a)sysmocom.de>
Gerrit-Comment-Date: Wed, 15 Jan 2025 16:31:24 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
kirr has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmocom-bb/+/39344?usp=email )
Change subject: trx_toolkit/clck_gen: Fix DeprecationWarning about Thread.setDaemon
......................................................................
trx_toolkit/clck_gen: Fix DeprecationWarning about Thread.setDaemon
This warning is currently emitted each time trx_toolkit unittests are run:
(osmo.venv) kirr@deca:~/src/osmocom/bb/src/target/trx_toolkit$ python -m unittest discover
/home/kirr/src/osmocom/bb/src/target/trx_toolkit/clck_gen.py:71: DeprecationWarning: setDaemon() is deprecated, set the daemon attribute instead
self._thread.setDaemon(True)
...............................................
----------------------------------------------------------------------
Ran 47 tests in 0.997s
OK
-> Fix it by using Thread.daemon attribute directly as suggested by
https://docs.python.org/3/library/threading.html#threading.Thread.setDaemon
Change-Id: I6ef70762f671b86342daa35a097532f0b620aaca
---
M src/target/trx_toolkit/clck_gen.py
1 file changed, 1 insertion(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/44/39344/1
diff --git a/src/target/trx_toolkit/clck_gen.py b/src/target/trx_toolkit/clck_gen.py
index 15b653f..bf56f64 100755
--- a/src/target/trx_toolkit/clck_gen.py
+++ b/src/target/trx_toolkit/clck_gen.py
@@ -68,7 +68,7 @@
# Initialize and start a new thread
self._thread = threading.Thread(target = self._worker)
- self._thread.setDaemon(True)
+ self._thread.daemon = True
self._thread.start()
def stop(self):
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/39344?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: I6ef70762f671b86342daa35a097532f0b620aaca
Gerrit-Change-Number: 39344
Gerrit-PatchSet: 1
Gerrit-Owner: kirr <kirr(a)nexedi.com>
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>