#
9bd8d1d5 |
|
03-Apr-2019 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
replacing umlaute and fixing address in headers Haldeneggsteig -> Universitaetsstrasse Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>
|
#
a135c2fc |
|
20-Mar-2017 |
Adam Turowski <adam.turowski@inf.ethz.ch> |
network: replacing net_queue_manager with devif as a data path, still WIP so it'll probably break the network stack Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>
|
#
87bf1cc9 |
|
24-Jan-2017 |
Adam Turowski <adam.turowski@inf.ethz.ch> |
net: splitting contmng and netbench libraries, simplyfing dependencies Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>
|
#
d29f9d41 |
|
31-Oct-2016 |
Adam Turowski <adam.turowski@inf.ethz.ch> |
network: replacing the continuation manager with simple queues e1000: small performance tweaks Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>
|
#
ced110dd |
|
26-Feb-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T191: x86_64: frame_identify returns size in bytes Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
878547ec |
|
04-Jun-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Merge of upstream arrakis code. This merge includes the following: * VT-d (IOMMU) support * VMX (Intel CPU virtualization) support * Parallel hake build * MegaRAID driver * Subways fast packet forwarding application * Identify physical address of VNodes * libstorage (VSIC & VSA support) * POSIX support: poll, uname, nanosleep, fsync, poll, pthread attributes, syslog, wait3, ... * TenaciousD (persistent data structures: log & queue) * Hack to skip boot RAM when it's too large * Arranet: Support for raw IP sockets, interrupts * Removal of colorful debug output * MegaRAID blockdevfs support * Arrakis compile wrappers for Autoconf * Patches to binutils & GCC to build Arrakis C++ applications Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch> Signed-off-by: Simon Peter <simpeter@cs.washington.edu> Signed-off-by: Oleg Godunok <ogodunok@gmail.com> Signed-off-by: Antoine Kaufmann <antoinek@cs.washington.edu> Signed-off-by: Jialin Li <lijl@cs.washington.edu> Signed-off-by: Dalton Black <dalton.m.black@gmail.com> Signed-off-by: Taesoo Kim <taesoo@uw.edu>
|
#
6b70fc6a |
|
20-Dec-2013 |
pravin@inf.ethz.ch <pravin@inf.ethz.ch> |
reverted the code to support software filtering for chained incoming packets, as that code was not working.
|
#
8b7f1e74 |
|
19-Nov-2013 |
pravin@inf.ethz.ch <pravin@inf.ethz.ch> |
Network stack is fixed now. HTTPERF is working on both LMP and UMP communication channels.
|
#
4f37ef9e |
|
24-Jun-2013 |
Antoine Kaufmann <antoinek@student.ethz.ch> |
Software filtering now supports chained packets This does not yet work together with IP fragmentation --- include/bfdmuxvm/vm.h | 3 +- include/net_queue_manager/net_queue_manager.h | 4 +- lib/bfdmuxvm/vm.c | 138 ++++++++++++++++----- lib/lwip/src/barrelfish/idc_barrelfish.c | 19 ++- lib/lwip/src/netif/bfeth.c | 21 +--- lib/net_queue_manager/frag.c | 8 +- lib/net_queue_manager/net_soft_filters_srv_impl.c | 113 +++++++++++------ lib/net_queue_manager/queue_manager.c | 6 +- 8 files changed, 210 insertions(+), 102 deletions(-)
|
#
83af38ab |
|
24-Jun-2013 |
Antoine Kaufmann <antoinek@student.ethz.ch> |
Changed net_queue_manager interface for receiving buffer chains --- if/net_queue_manager.if | 3 +- include/net_interfaces/net_interfaces.h | 2 +- include/net_queue_manager/net_queue_manager.h | 7 ++- lib/lwip/src/barrelfish/idc_barrelfish.c | 8 +-- lib/net_interfaces/interface_raw.c | 5 +- lib/net_queue_manager/net_soft_filters_srv_impl.c | 12 +++-- lib/net_queue_manager/queue_manager.c | 58 +++++++++++---------- lib/net_queue_manager/queue_manager_local.h | 4 +- usr/bench/net_latency/elb/benchmark.c | 3 +- usr/drivers/e1000/e1000n.c | 5 +- usr/drivers/e10k/e10k_qdriver.c | 23 ++++++-- usr/drivers/rtl8029/rtl8029.c | 5 +- usr/vmkitmon/pci_vmkitmon_eth.c | 5 +- 13 files changed, 90 insertions(+), 50 deletions(-)
|
#
888c3711 |
|
24-Jun-2013 |
Antoine Kaufmann <antoinek@student.ethz.ch> |
Changed net_queue_manager interface to pass opaque-value per buffer for tx This simplifies the handling of buffer chains --- include/net_queue_manager/net_queue_manager.h | 4 ++-- lib/net_queue_manager/net_soft_filters_srv_impl.c | 4 ++++ lib/net_queue_manager/queue_manager.c | 4 +++- usr/drivers/e1000/e1000n.c | 5 ++--- usr/drivers/e10k/e10k_qdriver.c | 9 ++++----- usr/drivers/lo/lo_qdriver.c | 13 ++++++++----- usr/drivers/rtl8029/rtl8029.c | 7 ++++--- usr/vmkitmon/pci_vmkitmon_eth.c | 4 ++-- 8 files changed, 29 insertions(+), 21 deletions(-)
|
#
ce3665da |
|
24-Jun-2013 |
Antoine Kaufmann <antoinek@student.ethz.ch> |
Carry flags with network packets sent and received Intended for coordinating features like hardware checksumming etc. between the driver and the network stack. --- if/net_queue_manager.if | 5 ++- include/lwip/pbuf.h | 3 ++ include/net_interfaces/flags.h | 18 +++++++++ include/net_interfaces/net_interfaces.h | 6 ++- include/net_queue_manager/net_queue_manager.h | 12 ++++-- lib/lwip/src/barrelfish/idc_barrelfish.c | 9 +++-- lib/lwip/src/core/pbuf.c | 2 + lib/net_interfaces/interface_raw.c | 21 ++++++---- lib/net_queue_manager/frag.c | 17 ++++---- lib/net_queue_manager/net_soft_filters_srv_impl.c | 44 +++++++++++---------- lib/net_queue_manager/queue_manager.c | 26 +++++++----- lib/net_queue_manager/queue_manager_local.h | 3 +- usr/bench/net_latency/elb/benchmark.c | 6 +-- usr/drivers/e1000/e1000n.c | 2 +- usr/drivers/e10k/e10k_qdriver.c | 2 +- usr/drivers/lo/lo_qdriver.c | 3 +- usr/drivers/rtl8029/rtl8029.c | 3 +- usr/vmkitmon/pci_vmkitmon_eth.c | 2 +- 18 files changed, 118 insertions(+), 66 deletions(-) create mode 100644 include/net_interfaces/flags.h
|
#
2868618c |
|
06-Jun-2013 |
pravin@inf.ethz.ch <pravin@inf.ethz.ch> |
partially working version when everything is running on default core. The current execution is **very** slow as everything is in the same core, leading to large number of context switches.
|
#
97bac994 |
|
23-Apr-2013 |
pravin@inf.ethz.ch <pravin@inf.ethz.ch> |
partially working version
|
#
60c50b5d |
|
29-Apr-2012 |
pravin shindep@inf.ethz.ch <pravin shindep@inf.ethz.ch> |
modified loopback driver to work with ump based interface. Also removed all the code from queue_manager which was using bulk_transport
|
#
6d834aae |
|
29-Apr-2012 |
pravin shindep@inf.ethz.ch <pravin shindep@inf.ethz.ch> |
Added local loopback device
|
#
8318b4b8 |
|
16-Apr-2012 |
Antoine Kaufmann <antoinek@student.ethz.ch> |
Extended queue manager library interface to allow for queue termination This is not implemented yet, but it will be used in the ethernet latency benchmark, so multiple runs can be done without reboots, might also be useful in the future when queues are handled more dynamically. --- include/net_queue_manager/net_queue_manager.h | 7 +++++-- lib/net_queue_manager/ethernet_latency_benchmark.c | 3 +++ lib/net_queue_manager/queue_manager.c | 1 + usr/drivers/e1000/e1000n.c | 3 ++- usr/drivers/e10k/e10k_qdriver.c | 13 ++++++++++--- usr/drivers/rtl8029/rtl8029.c | 2 +- 6 files changed, 22 insertions(+), 7 deletions(-)
|
#
774d08d9 |
|
16-Apr-2012 |
Antoine Kaufmann <antoinek@student.ethz.ch> |
Remove waiting_for_netd() from public queue manager interface This stuff really has to be handled internally and transparent for the driver. --- include/net_queue_manager/net_queue_manager.h | 2 -- lib/net_queue_manager/queue_manager_local.h | 1 + usr/drivers/e10k/e10k_qdriver.c | 5 ----- 3 files changed, 1 insertions(+), 7 deletions(-)
|
#
9eec0d55 |
|
16-Apr-2012 |
Antoine Kaufmann <antoinek@student.ethz.ch> |
Added ethersrv_argument() call for net_queue_manager interface This method is inteded to be called by the driver on all command line arguments it does parse itself. The idea is that driver independant stuff like memory affinity etc. can be done in the library, also this might be useful in connection with benchmarks. --- include/net_queue_manager/net_queue_manager.h | 6 +++++ lib/net_queue_manager/queue_manager.c | 4 +++ usr/drivers/e1000/e1000n.c | 28 +++++++++--------------- usr/drivers/e10k/e10k_qdriver.c | 5 ++- usr/drivers/rtl8029/rtl8029.c | 6 +++++ 5 files changed, 30 insertions(+), 19 deletions(-)
|
#
30d54845 |
|
16-Apr-2012 |
Antoine Kaufmann <antoinek@student.ethz.ch> |
Simplified TX path of net_queue_manager interface to driver This is an attempt to simplify the driver interface and push the complexity into the library, more precisely it removes the need for the driver to know about the bulk transfer mechanism. This also simplifies the future implementation of benchmarks using this interface directly. --- include/net_queue_manager/net_queue_manager.h | 13 ++++- lib/net_queue_manager/queue_manager.c | 52 +++++++++++++++++- usr/drivers/e1000/e1000n.c | 69 +++++++------------------ usr/drivers/e10k/e10k_qdriver.c | 52 +++--------------- usr/drivers/rtl8029/rtl8029.c | 49 +++++------------- 5 files changed, 100 insertions(+), 135 deletions(-)
|
#
5c08ea28 |
|
16-Apr-2012 |
Antoine Kaufmann <antoinek@student.ethz.ch> |
Moved managing of RX buffers to net_queue_manager library This step is necessary for hardware filtering, since there we need to tell the card directly the addresses of the buffers in the bulk transfer ring. But with SW filtering the library only allocates some intermediate buffers, from where the packet is then copied to the right buffer. --- include/net_queue_manager/net_queue_manager.h | 39 +++++++- lib/net_queue_manager/net_soft_filters_srv_impl.c | 94 +++++++++++++++++- lib/net_queue_manager/queue_manager.c | 13 ++- lib/net_queue_manager/queue_manager_local.h | 8 ++- usr/drivers/e1000/e1000n.c | 105 ++++----------------- usr/drivers/e10k/e10k.c | 51 ++++------ usr/drivers/e10k/e10k_queue.h | 15 +++- usr/drivers/rtl8029/rtl8029.c | 61 +++++++++---- 8 files changed, 236 insertions(+), 150 deletions(-)
|
#
2a5c477d |
|
02-Mar-2012 |
pravin shindep@inf.ethz.ch <pravin shindep@inf.ethz.ch> |
Renamed interface ether_control to net_soft_filters. Also, rearranged the code and renamed files to match with new interfaces. Modified the hake/RulesDefs.h to simplify the dependency capturing for net_queue_manager related code. --HG-- rename : if/ether_control.if => if/net_soft_filters.if rename : include/ethersrv/ethersrv.h => include/net_queue_manager/net_queue_manager.h rename : lib/ethersrv/Hakefile => lib/net_queue_manager/Hakefile rename : lib/ethersrv/ethersrv_support.c => lib/net_queue_manager/QM_benchmark.c rename : lib/ethersrv/ethersrv_support.h => lib/net_queue_manager/QM_benchmark.h rename : lib/ethersrv/frag.c => lib/net_queue_manager/frag.c rename : lib/ethersrv/ethersrv_ctl.c => lib/net_queue_manager/net_soft_filters_impl.c rename : lib/ethersrv/ethersrv.c => lib/net_queue_manager/queue_manager.c rename : lib/ethersrv/ethersrv_debug.h => lib/net_queue_manager/queue_manager_debug.h rename : lib/ethersrv/ethersrv_local.h => lib/net_queue_manager/queue_manager_local.h
|