kirr has uploaded this change for review. ( 
https://gerrit.osmocom.org/c/osmocom-bb/+/39535?usp=email )


Change subject: trx_toolkit/transceiver: Use with tx_queue_lock instead of 
manual acquire/release
......................................................................

trx_toolkit/transceiver: Use with tx_queue_lock instead of manual 
acquire/release

- it is a bit faster
- it is a bit more robust as the lock becomes released in case
  some exception is raised before reaching release

Noticed while moving forwarding out of tx_queue_lock in
I7d10c972c45b2b5765e7c3a28f8646508b3c8a82.

Change-Id: I74b194120bcc518d44796b57e36368bdc8de4aab
---
M src/target/trx_toolkit/transceiver.py
1 file changed, 9 insertions(+), 11 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/35/39535/1

diff --git a/src/target/trx_toolkit/transceiver.py 
b/src/target/trx_toolkit/transceiver.py
index 2a638c5..e6af013 100644
--- a/src/target/trx_toolkit/transceiver.py
+++ b/src/target/trx_toolkit/transceiver.py
@@ -312,18 +312,16 @@
                emit = []
                wait = []

-               self._tx_queue_lock.acquire()
+               with self._tx_queue_lock:
+                       for msg in self._tx_queue:
+                               if msg.fn < fn:
+                                       drop.append(msg)
+                               elif msg.fn == fn:
+                                       emit.append(msg)
+                               else:
+                                       wait.append(msg)

-               for msg in self._tx_queue:
-                       if msg.fn < fn:
-                               drop.append(msg)
-                       elif msg.fn == fn:
-                               emit.append(msg)
-                       else:
-                               wait.append(msg)
-
-               self._tx_queue = wait
-               self._tx_queue_lock.release()
+                       self._tx_queue = wait

                for msg in emit:
                        fwd.forward_msg(self, msg)

--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/39535?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: I74b194120bcc518d44796b57e36368bdc8de4aab
Gerrit-Change-Number: 39535
Gerrit-PatchSet: 1
Gerrit-Owner: kirr <[email protected]>
Gerrit-CC: fixeria <[email protected]>
Gerrit-CC: osmith <[email protected]>
Gerrit-CC: pespin <[email protected]>

Reply via email to