Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | ipcpd: Fix some bad locking | dimitri staessens | 2017-04-03 | 3 | -48/+43 |
| | |||||
* | tools: Fix oping client output | dimitri staessens | 2017-04-03 | 1 | -2/+2 |
| | |||||
* | irmd: Fix dealloc of pending flow | dimitri staessens | 2017-04-02 | 1 | -2/+5 |
| | |||||
* | ipcpd: Add dynamic threadpooling for IPCPs | dimitri staessens | 2017-04-02 | 2 | -26/+253 |
| | |||||
* | irmd: Fix thread creation order | dimitri staessens | 2017-04-02 | 1 | -1/+1 |
| | |||||
* | Merged in dstaesse/ouroboros/be-rbuff-ll (pull request #451) | dimitri staessens | 2017-04-01 | 3 | -14/+38 |
|\ | | | | | | | lib: Fix some issues in lockless rbuff | ||||
| * | ipcpd: Revert timeout in fmgr | dimitri staessens | 2017-04-01 | 1 | -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 rbuff | dimitri staessens | 2017-04-01 | 2 | -8/+37 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-rbuff-ll (pull request #450) | dimitri staessens | 2017-04-01 | 3 | -404/+789 |
|\| | | | | | | | lib: Lockless implementation of the rbuff | ||||
| * | lib: Lockless implementation of the rbuff | dimitri staessens | 2017-04-01 | 3 | -404/+789 |
| | | |||||
* | | tools: oping: Fix bad calculation | Sander Vrijders | 2017-04-01 | 1 | -1/+1 |
|/ | | | | This fixes a potential overflow when calculating the packet loss. | ||||
* | irmd: Add dynamic threadpool | dimitri staessens | 2017-04-01 | 1 | -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 use | dimitri staessens | 2017-04-01 | 2 | -31/+65 |
| | |||||
* | lib: Fix data race in rdrbuff | dimitri staessens | 2017-04-01 | 1 | -7/+5 |
| | | | | The blocks should be accessed inside the lock (or later with CAS). | ||||
* | lib: Fix use-after-free when destroying cdap_req | dimitri staessens | 2017-04-01 | 2 | -1/+6 |
| | |||||
* | lib: Fix missing assignment in flow_alloc | dimitri staessens | 2017-04-01 | 1 | -5/+13 |
| | |||||
* | lib: Some fixes in CDAP | dimitri staessens | 2017-04-01 | 1 | -1/+10 |
| | |||||
* | ipcpd: Fix CDAP return checks at enrollment | dimitri staessens | 2017-04-01 | 1 | -4/+4 |
| | |||||
* | Merged in sandervrijders/ouroboros/be-logs (pull request #446) | Sander Vrijders | 2017-03-31 | 2 | -11/+6 |
|\ | | | | | | | ipcpd: normal: Fix logs | ||||
| * | ipcpd: normal: Fix logs | Sander Vrijders | 2017-03-31 | 2 | -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 typedef | dimitri staessens | 2017-03-31 | 1 | -2/+0 |
|/ | |||||
* | Merged in sandervrijders/ouroboros/be-btree (pull request #444) | Sander Vrijders | 2017-03-31 | 2 | -26/+62 |
|\ | | | | | | | lib: Fix bugs in B-tree | ||||
| * | lib: Fix bugs in B-tree | Sander Vrijders | 2017-03-31 | 2 | -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_flow | dimitri staessens | 2017-03-31 | 6 | -21/+17 |
| | | | | | | | | This fixes the bug in handling multiple concurrent flow allocations. | ||||
* | | Merged in dstaesse/ouroboros/be-cdap-cancel (pull request #442) | dimitri staessens | 2017-03-31 | 3 | -1/+15 |
|\ \ | |/ |/| | | | lib: Cancel outstanding CDAP requests on destroy | ||||
| * | lib: Cancel outstanding CDAP requests on destroy | dimitri staessens | 2017-03-31 | 3 | -1/+15 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-new-api (pull request #441) | dimitri staessens | 2017-03-31 | 1 | -2/+2 |
|\| | | | | | | | irmd: Fix assignment bug | ||||
| * | irmd: Fix assignment bug | dimitri staessens | 2017-03-31 | 1 | -2/+2 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-new-api (pull request #439) | dimitri staessens | 2017-03-31 | 15 | -398/+175 |
|\| | | | | | | | lib: Revise flow allocation API | ||||
| * | lib: Revise flow allocation API | dimitri staessens | 2017-03-31 | 15 | -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/neighbors | dimitri staessens | 2017-03-30 | 1 | -3/+4 |
|/ | |||||
* | ipcpd: normal: Fix cleanup of FRCT instance | Sander Vrijders | 2017-03-30 | 1 | -9/+14 |
| | | | | | The FRCT instance was not properly cleaned when the PFF could not find the next hop. | ||||
* | lib: Fix invalid access in CDAP | Sander Vrijders | 2017-03-30 | 1 | -2/+5 |
| | | | | This fixes an invalid access to an object that was already freed. | ||||
* | ipcpd: normal: Fix enrollment bug | Sander Vrijders | 2017-03-30 | 1 | -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 staessens | 2017-03-30 | 1 | -1/+1 |
|\ | | | | | | | lib: Fix heap-use-after-free in CDAP | ||||
| * | lib: Fix heap-use-after-free in CDAP | dimitri staessens | 2017-03-30 | 1 | -1/+1 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-less-locks (pull request #435) | dimitri staessens | 2017-03-30 | 1 | -45/+20 |
|\| | | | | | | | lib: Reduce locking overhead in rdrbuff | ||||
| * | lib: Reduce locking overhead in rdrbuff | dimitri staessens | 2017-03-30 | 1 | -45/+20 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-irmd-fix-acc (pull request #434) | dimitri staessens | 2017-03-29 | 1 | -0/+1 |
|\| | | | | | | | irmd: Fix shutdown with active accept | ||||
| * | irmd: Fix shutdown with active accept | dimitri staessens | 2017-03-29 | 1 | -0/+1 |
| | | |||||
* | | Merged in dstaesse/ouroboros/be-fix-irmd-shutdown (pull request #433) | dimitri staessens | 2017-03-29 | 1 | -21/+25 |
|\| | | | | | | | irmd: Exit blocking threads from irm_sanitizer | ||||
| * | irmd: Exit blocking threads from irm_sanitizer | dimitri staessens | 2017-03-29 | 1 | -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 Vrijders | 2017-03-29 | 7 | -15/+322 |
|\ \ | |/ |/| | | | Be unidirected graph | ||||
| * | ipcpd: normal: Add graph regression test | Sander Vrijders | 2017-03-29 | 5 | -8/+285 |
| | | | | | | | | | | This adds a regression test for the graph component to test the routing table. | ||||
| * | ipcpd: normal: Make graph undirected | Sander Vrijders | 2017-03-29 | 3 | -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. | ||||
* | | irmd: Set failed flows to FLOW_NULL before destroy | dimitri staessens | 2017-03-29 | 2 | -1/+1 |
|/ | |||||
* | lib: Fix locks in dev.c | dimitri staessens | 2017-03-29 | 1 | -7/+5 |
| | |||||
* | lib: Revise handling CDAP messages | dimitri staessens | 2017-03-29 | 3 | -66/+114 |
| | | | | | | | | | | | | | Fixes a number of issues in CDAP. CDAP keeps track if a message is being processed, and moves it to the end of the request list if it is. It will now correctly wait for new messages. The invoke_ids are generated locally per CDAP instance, invoke_ids can't be used to track incoming requests, we need to keep track of the fd. The keys are now identifiers (taken from the same local pool as the invoke_ids) that are used to track requests. | ||||
* | ipcpd: Correctly read MGMT type PDUs from rdrbuff | dimitri staessens | 2017-03-28 | 1 | -35/+36 |
| | | | | They were not consumed upon reading, causing the rdrbuff to fill up. | ||||
* | ipcpd: Fix memleaks in fmgr | dimitri staessens | 2017-03-28 | 1 | -0/+4 |
| |