summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* | ipcpd: shim-eth-llc: Remove pthread_cancelSander Vrijders2017-04-041-78/+117
| | | | | | | | | | This removes cancellation calls from the shim Ethernet. The different threads now check if the IPCP is still operational or not.
* | ipcpd: shim-eth-llc: Deprecate PACKET_RX|TX_RINGSander Vrijders2017-04-041-203/+11
| | | | | | | | | | | | This deprecates these special socket options of the raw socket since they are less efficient for regular packet I/O. They should be more performant for batch processing of SDUs.
* | ipcpd: shim-eth-llc: Add thread for mgmt framesSander Vrijders2017-04-041-29/+101
|/ | | | | | This adds a thread to handle management frames, since otherwise a deadlock can occur by blocking SDUs until flow allocation can be handled.
* ipcpd: Fix lock order in local sdu_loopdimitri staessens2017-04-041-1/+1
|
* lib, irmd, ipcpd: Stabilize flow allocationdimitri staessens2017-04-046-105/+186
|
* ipcpd: Fix some bad lockingdimitri staessens2017-04-033-48/+43
|
* tools: Fix oping client outputdimitri staessens2017-04-031-2/+2
|
* irmd: Fix dealloc of pending flowdimitri staessens2017-04-021-2/+5
|
* ipcpd: Add dynamic threadpooling for IPCPsdimitri staessens2017-04-022-26/+253
|
* irmd: Fix thread creation orderdimitri staessens2017-04-021-1/+1
|
* Merged in dstaesse/ouroboros/be-rbuff-ll (pull request #451)dimitri staessens2017-04-013-14/+38
|\ | | | | | | lib: Fix some issues in lockless rbuff
| * ipcpd: Revert timeout in fmgrdimitri staessens2017-04-011-6/+1
| | | | | | | | | | | | | | Since there are no SDUs on most QoS cubes, the fmgr was always timing out on most QoS cubes, causing considerable delays in most SDUs. The timeout was reset to a very small value (so the bug in glibc 2.25 will cause lockups again).
| * lib: Fix some issues in lockless rbuffdimitri staessens2017-04-012-8/+37
| |
* | Merged in dstaesse/ouroboros/be-rbuff-ll (pull request #450)dimitri staessens2017-04-013-404/+789
|\| | | | | | | lib: Lockless implementation of the rbuff
| * lib: Lockless implementation of the rbuffdimitri staessens2017-04-013-404/+789
| |
* | tools: oping: Fix bad calculationSander Vrijders2017-04-011-1/+1
|/ | | | This fixes a potential overflow when calculating the packet loss.
* irmd: Add dynamic threadpooldimitri staessens2017-04-011-31/+196
| | | | | | | | | | | This makes the IRMd add/remove worker threads dynamically. IRMD_TPM_TIMEOUT sets a timer in the threadpool manager for checking idle threads. Each time this timer expires, it will reduce the threadpool by one. IRMD_MIN_AV_THREADS is the minimum number of available worker threads. If the number of active threads goes under this threshold, the threadpool manager will create threads to get the number of threads to IRMD_MAX_AV_THREADS, unless IRMD_MAX_THREADS is reached.
* lib: Add a check if a bitmap ID is in usedimitri staessens2017-04-012-31/+65
|
* lib: Fix data race in rdrbuffdimitri staessens2017-04-011-7/+5
| | | | The blocks should be accessed inside the lock (or later with CAS).
* lib: Fix use-after-free when destroying cdap_reqdimitri staessens2017-04-012-1/+6
|
* lib: Fix missing assignment in flow_allocdimitri staessens2017-04-011-5/+13
|
* lib: Some fixes in CDAPdimitri staessens2017-04-011-1/+10
|
* ipcpd: Fix CDAP return checks at enrollmentdimitri staessens2017-04-011-4/+4
|
* Merged in sandervrijders/ouroboros/be-logs (pull request #446)Sander Vrijders2017-03-312-11/+6
|\ | | | | | | ipcpd: normal: Fix logs
| * ipcpd: normal: Fix logsSander Vrijders2017-03-312-11/+6
| | | | | | | | | | This removes some logs in the graph component and replaces prints of uin64_t variables with an architecture agnostic variant.
* | lib: Fix double typedefdimitri staessens2017-03-311-2/+0
|/
* Merged in sandervrijders/ouroboros/be-btree (pull request #444)Sander Vrijders2017-03-312-26/+62
|\ | | | | | | lib: Fix bugs in B-tree
| * lib: Fix bugs in B-treeSander Vrijders2017-03-312-26/+62
| | | | | | | | | | This fixes some bugs in the B-tree implementation. The test has also been rewritten to be more thorough.
* | irmd: Keep track of qos in irm_flowdimitri staessens2017-03-316-21/+17
| | | | | | | | This fixes the bug in handling multiple concurrent flow allocations.
* | Merged in dstaesse/ouroboros/be-cdap-cancel (pull request #442)dimitri staessens2017-03-313-1/+15
|\ \ | |/ |/| | | lib: Cancel outstanding CDAP requests on destroy
| * lib: Cancel outstanding CDAP requests on destroydimitri staessens2017-03-313-1/+15
| |
* | Merged in dstaesse/ouroboros/be-new-api (pull request #441)dimitri staessens2017-03-311-2/+2
|\| | | | | | | irmd: Fix assignment bug
| * irmd: Fix assignment bugdimitri staessens2017-03-311-2/+2
| |
* | Merged in dstaesse/ouroboros/be-new-api (pull request #439)dimitri staessens2017-03-3115-398/+175
|\| | | | | | | lib: Revise flow allocation API
| * lib: Revise flow allocation APIdimitri staessens2017-03-3115-398/+175
| | | | | | | | | | | | The flow_alloc_res and flow_alloc_resp calls have been removed. The flow_alloc and flow_accept calls are now both blocking and take an additional timeout argument.
* | ipcpd: Add missing lock in normal/neighborsdimitri staessens2017-03-301-3/+4
|/
* ipcpd: normal: Fix cleanup of FRCT instanceSander Vrijders2017-03-301-9/+14
| | | | | The FRCT instance was not properly cleaned when the PFF could not find the next hop.
* lib: Fix invalid access in CDAPSander Vrijders2017-03-301-2/+5
| | | | This fixes an invalid access to an object that was already freed.
* ipcpd: normal: Fix enrollment bugSander Vrijders2017-03-301-0/+2
| | | | | | This fixes a bug in enrollment where only the first enrollment would happen correctly since the booleans indicating whether boot, members, and DIF name were sent were not initialized back to false.
* Merged in dstaesse/ouroboros/be-cdap-fix (pull request #436)dimitri staessens2017-03-301-1/+1
|\ | | | | | | lib: Fix heap-use-after-free in CDAP
| * lib: Fix heap-use-after-free in CDAPdimitri staessens2017-03-301-1/+1
| |
* | Merged in dstaesse/ouroboros/be-less-locks (pull request #435)dimitri staessens2017-03-301-45/+20
|\| | | | | | | lib: Reduce locking overhead in rdrbuff
| * lib: Reduce locking overhead in rdrbuffdimitri staessens2017-03-301-45/+20
| |
* | Merged in dstaesse/ouroboros/be-irmd-fix-acc (pull request #434)dimitri staessens2017-03-291-0/+1
|\| | | | | | | irmd: Fix shutdown with active accept
| * irmd: Fix shutdown with active acceptdimitri staessens2017-03-291-0/+1
| |
* | Merged in dstaesse/ouroboros/be-fix-irmd-shutdown (pull request #433)dimitri staessens2017-03-291-21/+25
|\| | | | | | | irmd: Exit blocking threads from irm_sanitizer
| * irmd: Exit blocking threads from irm_sanitizerdimitri staessens2017-03-291-21/+25
| | | | | | | | | | | | Some blocking calls caused mainloops to never exit. The irm_sanitizer will now clean up those structs before exiting. This will speed up regular exit and avoids non-cancelling threads.
* | Merged in sandervrijders/ouroboros/be-unidirected-graph (pull request #432)Sander Vrijders2017-03-297-15/+322
|\ \ | |/ |/| | | Be unidirected graph
| * ipcpd: normal: Add graph regression testSander Vrijders2017-03-295-8/+285
| | | | | | | | | | This adds a regression test for the graph component to test the routing table.
| * ipcpd: normal: Make graph undirectedSander Vrijders2017-03-293-7/+37
| | | | | | | | | | | | This turns the directed graph into an undirected one. Only one side of the flow creates an FSDB entry. The graph structure creates an edge object for every vertex involved when an edge is updated or removed.