Commit graph

14 commits

Author SHA1 Message Date
Kurtis Heimerl
768815e07f Oh kay. Lots of patches trying to catch up to mainline:
r4232: Major change in hos entries are removed from a TransactionTable.

>From now on, the only place were entries are actually removed is in TransactionTable::innerRemove.
Anywhere else, the remove methods just set a flag to tag the entry for later removal be innerRemove.
This allows us to survive situations where we try to touch transactions that have been removed already.  We still log at the ERR level, but no more segfaults.

Updated all of the TransactionTable "find" methods to not return pointers to dead or removed tranactions.

Updated find-by-channel search to return the transaction entry with the highest transaction number, which fixes a bug that sometimes picked up the wrong transaction records during EA TCH assignment.

r4253: New exception class for when someone tries to use a "removed" transaction.

r4254: Updated copyright notice.

r4265: Unlock TransactionEntry::mLock while blocked on SIP message FIFOs in SIPEngine.  This does wonders to reduce lock contention and make everything more snappy.

Use Mutex::tryLock in TransactionEntry::dead and if lock is held, assume that it is not dead.  This also does a lot to reduce lock contention.

r4294: Change Um congestion response back to SIP 503.

r4295: When deleting an entry that has failed to respond to paging, send a SIP 480 response so the switch knows that transaction is dead.

r4412: Fixed bug that was causing SIPInterface to crash when the IMSI cannot be extracted from the To: header.

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4497 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2012-11-22 05:30:27 +00:00
Kurtis Heimerl
bc4c48640a Alexander's patch #1:
This patch makes a step towards using a system-wide sqlite3 lib. It
moves sqlite3util.cpp/.h to CommonLibs and leaves only original
sqlite3 files in the sqlite3 dir of OpenBTS.

I do not claim any copyright over this change, as it's very basic.
Looking forward to see it merged into mainline.

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4467 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2012-11-14 03:51:51 +00:00
Kurtis Heimerl
0e14711300 Alexander's patch #3: Configuration Tests should not include crashing
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4459 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2012-11-11 10:15:43 +00:00
Kurtis Heimerl
05ea53e57f merged private Config to public: r4211:
Changes to ConfigurationTable class.  Cleaner locking operations, fewer messages for normal operations, ALERT logging for truly abnormal operations.

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4348 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2012-10-26 06:25:56 +00:00
Kurtis Heimerl
c884251468 Public release now works with g++4.7. In 4.7, unistd.h is no longer imported by default
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3918 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2012-07-22 05:09:00 +00:00
Kurtis Heimerl
f52e2498ad Harvind found a bug in BitVector.cpp:
Basically the unpack method and fillField method assume MSB-first bit packing.   The unpack method calls fillField for each byte that needs to be unpacked.  The problem occurs on its final call to fillField when it has a partial byte to unpack; it uses the LSB bits instead of the MSB bits.

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3288 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2012-03-08 07:13:15 +00:00
Kurtis Heimerl
54e663c127 Locking gethostbyname call, as Alexander notes that it is not thread safe
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2865 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-12-24 02:53:10 +00:00
Kurtis Heimerl
725cff522e Reverted bad function header. There are no timing inversion deadlocks, I made those up.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2836 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-12-17 00:05:31 +00:00
Kurtis Heimerl
27a8acc789 Alexander's change. Fixes MTC bug by supporting 64bit processors in Timeval. Math was bad.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2835 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-12-17 00:03:24 +00:00
Kurtis Heimerl
150ab7edde Fixing Thomas's MTC receive bug. We don't have a ticket for it, but there seemed to be a timing inversion deadlock in Interthread.h. We mostly duck it, instead of solving it.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2822 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-12-15 06:23:39 +00:00
David Burgess
8d5a3c690d git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2583 19bc5d8c-e614-43d4-8b26-e1612bc8e597 2011-11-20 00:22:41 +00:00
David Burgess
6f3d8f57f6 Remove Makefile.in from SVN. Doesn't belong here.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2309 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-10-12 07:47:02 +00:00
David Burgess
46a41b4a5c Fixed the license notices.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2305 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-10-12 01:23:28 +00:00
David Burgess
c0a5c1509e Putting the actual OpenBTS P2.8 source code into the public SVN branch.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2242 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-10-07 02:40:51 +00:00