Dennis Potter
e2061e58fc
Events are now monitored in a separate thread. The segmentation faults we saw earlier were caused because we exited ib_start before we created a protection domain, which is used by memory_allocation
2018-07-07 12:49:22 +02:00
Dennis Potter
2bf122991c
Started to convert the RDMA_CM_EVENT loop to a separate thread and added a new state to the node. This commit is still broken
2018-07-05 18:26:32 +02:00
Dennis Potter
b2fcfdca9d
Checked all tools for the presence of log_parse()
2018-07-05 14:40:32 +02:00
Dennis Potter
781f405a48
Adhered to coding style
2018-07-04 19:04:08 +02:00
b84210b91d
cmake: add support for infiniband node-type
2018-07-04 17:50:26 +02:00
Dennis Potter
3275a09a4e
Added missing ib.h file
2018-07-04 17:27:15 +02:00
4d09482fdb
Merge branch 'infiniband' into develop
...
# Conflicts:
# Makefile
# Makefile.config
# Makefile.help
# lib/Makefile.villas-ext.inc
# lib/Makefile.villas.inc
# lib/memory.c
# lib/nodes/Makefile.inc
2018-07-04 16:50:36 +02:00
Dennis Potter
12d256b64a
Added function declaration
2018-07-04 16:34:38 +02:00
Dennis Potter
08682bec9b
Added LOG_IB
2018-07-04 16:34:08 +02:00
Dennis Potter
51519c06df
Implemented new memory system implementation in infiniband node
2018-07-04 15:15:24 +02:00
5391cab32d
reorder state member of some classes as they would raise a compiler error otherwise (designated initializers are not really supported in C++)
2018-07-04 15:07:54 +02:00
5268beacb0
remove old function declaration
2018-07-04 11:53:57 +02:00
Dennis Potter
f3a5b81649
Merge branch 'infiniband-memory' into infiniband
2018-07-04 10:50:21 +02:00
e4f3a83c49
several fixes to silence the c++ compiler
2018-07-03 20:43:05 +02:00
1026539a4b
Merge branch 'cmake' into develop
...
# Conflicts:
# lib/Makefile.villas.inc
2018-07-03 18:30:21 +02:00
Dennis Potter
6c7c7b7ed4
Fixed indentations
2018-07-03 11:13:59 +02:00
da8124e472
memory: use hash_table to store allocation metadata
2018-07-02 19:00:55 +02:00
Dennis Potter
669d75a666
Basic implementation of zero-copying is done. The is still a problem with rread = hook_read_list. It doesn't return anything after the fourth read
2018-07-02 16:03:16 +02:00
bb70be0b2c
memory: refactored memory subsystem
2018-07-02 15:57:56 +02:00
Dennis Potter
97e25fb2b2
Added memory_ib.h
2018-07-02 14:20:32 +02:00
93750a2bcd
Merge branch 'develop' into infiniband-memory
2018-07-02 13:09:24 +02:00
8e252bbb4b
hash_table: added simple hash table with linked lists
2018-07-02 13:07:45 +02:00
b9f463ebee
node: extend struct node_type with a new function pointer for checking node configuration
2018-07-02 10:59:45 +02:00
7860c38bfe
plugins: improve documentation of REGISTER_PLUGIN macro
2018-07-02 10:51:01 +02:00
d872691dbe
fix documentation of kernel code
2018-06-30 01:29:56 +02:00
9ecdb54832
node: add new function node_memtype() to get node specific memory allocators
2018-06-29 17:32:07 +02:00
34e6891192
iec61850: fix ether_aton() call on OS X
2018-06-29 14:36:50 +02:00
58a13ae92e
cmake: fix some #ifdefs
2018-06-29 14:36:50 +02:00
4fa5914bc6
cmake: make use of HAS_EVENTFD
2018-06-29 14:36:24 +02:00
58e4d7e394
cmake: add new defines to config.h.in
2018-06-29 14:36:24 +02:00
eb446d2ac9
add missing GPL license header
2018-06-29 09:07:47 +02:00
ffec25bbfd
use "#include <villas/...>" path for all includes
2018-06-29 09:06:04 +02:00
951c388f53
add/replace missing "#pragma once"
2018-06-29 08:37:37 +02:00
312cdc2fbe
revert whitespace changes
2018-06-29 08:37:14 +02:00
02464fc10c
config.h is automatically generated. Do not commit it
2018-06-29 08:01:18 +02:00
Dennis Potter
1e2d4158f0
Added possibility to add port dynamically, added some config warnings and added a WR refresh function to ib_read
2018-06-28 17:24:28 +02:00
Sonja Kolen
4ec3cf030b
Added extern "C" wrapper in all headers of libvillas to use it in C++ code
2018-06-28 13:42:50 +02:00
Dennis Potter
5598f93582
Implemented disconnect function on source and target side. The cleanup function doesn't go through completely yet, probably because rdma_destroy_id blocks because not everything in the rdma_cm_id is destroyed yet.
2018-06-28 12:46:16 +02:00
Dennis Potter
1df18da3f2
Added Work Completion threads. Send Completion thread checks for errors, Receive Completion Queue is still empty.
2018-06-27 17:01:47 +02:00
Dennis Potter
7631ec98ed
Refactored the rdma_cm_id structure
2018-06-27 11:21:28 +02:00
Dennis Potter
9e5836001d
Node is able to send messages. A lot is hardcoded and this was only meant to be a first setup of a working node.
2018-06-27 10:37:46 +02:00
Dennis Potter
077355d8ba
Started to implement memory managemen and registration. Not yet working and in an early stage. Still some debugging and testing printfs
2018-06-24 13:02:04 +02:00
Dennis Potter
4f6c2543b5
Fixed bugs in connection. A source node is now able to connect to a target node.
2018-06-23 19:05:33 +02:00
Dennis Potter
a0f0410e73
This commit should be able to create a connection between two nodes.
...
This commit isn't checked for bugs and no memory management is done.
Furthermore, no poll threads are implemented.
2018-06-23 14:53:37 +02:00
Dennis Potter
4220ff8111
Implemented request to resolve address and built an rdma_cm_event framework
2018-06-22 13:02:41 +02:00
Dennis Potter
a1b7a9cda6
Initial commit with (empty) infiniband node
2018-06-21 11:56:28 +02:00
Daniel Krebs
1e7c46d7aa
comedi: better debug output
2018-06-15 19:29:23 +02:00
Daniel Krebs
fe302f9649
comedi: implement ADC and DAC directions, only DAC tested
...
The write / DAC direction has been tested with two output signals, see
etc/comedi.conf for reference. For now, the buffer size may not be
(considerably) smaller than 32kB, Comedi stops working for unknown
reasons. To compensate for the latency (always approx. one buffer size)
if only small sample rates are required, configure the path for
upsampling (sample-and-hold via rate parameter) at the same rate as
the out direction of the comedi node.
2018-06-15 15:47:10 +02:00
79d5257408
comedi: started implementation
2018-06-15 14:56:27 +02:00
59269a72b6
remove some superfluous comments
2018-06-15 14:56:27 +02:00