forked from Mellanox/libvma
-
Notifications
You must be signed in to change notification settings - Fork 0
/
journal.txt
2056 lines (1816 loc) · 85.8 KB
/
journal.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Version 8.4.9-0:
Date + Time 2017-11-13
=============================================================
Added:
- RM #1179641 Override MTU from route over interface MTU
- RM #1179641 Add parsing route table metrics
- RM #1190054 Rename VMA_SPEC parameter 6973 to 7750
- RM #1176937 Add VMA_TCP_QUICKACK environment variable
- RM #1176937 Add TCP_QUICKACK option support
- RM #1176937 Add delayed ack control into LWIP
- RM #1151606 Modify valgrind suppression file
- RM #1182826 Check if the module parameters exists
- RM #847360 Add Coverity badge to README.md
- RM #1172255 Disable parser warning coverity checker
Fixed:
- RM #1182981 Fix TCP zero-window probe message sequence number
- RM #1181379 Fix TCP zero window probe when there is data in-flight
- RM #1185978 Fix compilation for --enable-opt-log=high
- RM #1164732 Fix possible deadlock during connect
- RM #1185372 Fix traffic is not offloaded for high VMA_RX_WRE values
Version 8.4.8-0:
Date + Time 2017-10-10
=============================================================
Added:
- RM #1163086 Remove pkg.m4 from sources
- RM #1156840 Add TCP Tx window availability
Fixed:
- RM #1160823 Fix a crash when reg_mr fails
Version 8.4.7-0:
Date + Time 2017-10-08
=============================================================
Added:
- RM #1151343 Update MP RQ dropped packet statistics in case of bad CSUM
- RM #1150137 Remove VMA_THROW from functions signature
Fixed:
- RM #1150011 Fix ioctl() FIONREAD return value
- RM #1154650 Fix IP fragmentation threshold
- RM #1152517 Fix flags order to compile VMA with O3
Version 8.4.6-0:
Date + Time 2017-09-27
=============================================================
Fixed:
- RM #1153175 Modify On Device Memory reg_mr API according to libmlx5/libibverbs
- RM #1150366 Align memory barrier to verbs's one
- RM #1151606 Modify valgrind suppresion file
- RM #1147574 Fix missing argument in modify_qp_to_ready_state()
- RM #1148076 Remove volatile when handling CQE
Version 8.4.5-0:
Date + Time 2017-09-19
=============================================================
Added:
- RM #1065079 Add On Device Memory support
- RM #1117626 Move epoll's poll_os logic to the internal thread
- RM #1073223 Enable Debian package timestamp
Fixed:
- RM #1088208 consider cache_line when getting CQE
- RM #1137302 Solve gcc7.x [deprecated]
- RM #1137302 Solve gcc7.x [format-overflow]
- RM #1137302 Solve gcc7.x [array-bounds]
- RM #1137302 Solve gcc7.x [implicit-fallthrough]
- RM #1062367 Fix TCP window deadlock in case of a small window
- RM #1134718 Fix lack of interface reinitialization (Tx PRM implementation)
- RM #1141586 Fix Valgrind issue - uninitialized byte(s)
- RM #1041212 Fix wrong handling of UDP setsockopt() using UDP_MAP_REMOVE
Version 8.4.4-0:
Date + Time 2017-09-10
=============================================================
Added:
- RM #1081001 Add netmap API VMA wrapper
- RM #1089826 Add statistics to Multi-Packet rings
Fixed:
- RM #1131365 Update output example and default parameters in README.txt
- RM #1096849 Fix for the first packet checksum in case VLAN trunk
- RM #1127632 Remove ambiguous line from insufficient hugepage warning
- RM #1079751 Fix possible crash when migration occurs
- RM #1114239 Fix compilation error when configuring using disable-exp-cq
- RM #1094542 Reduce interval for syncing time_converter clock parameters
- RM #1117819 Nullify application name after freeing its pointer
Version 8.4.3-0:
Date + Time 2017-08-14
=============================================================
Fixed:
- RM #1115999 Fix DUMMY_SEND packets in new PostSend PRM
Version 8.4.2-0:
Date + Time 2017-08-08
=============================================================
Added:
- RM #1097641 Add a dummy packet send during getsockname()
- RM #1055917 Enable dynamic signaling for Tx PostSend PRM
- RM #1055917 Enable dynamic WQE size inlining in BlueFlame
- RM #1055917 Amend VMAPOLL Tx to use MLX5 PostSend PRM
- RM #1055917 Enable TX Post-Send PRM for non-VMAPOLL
- RM #1055917 Add scatter/gather array helper
- RM #933949 Add KVM virtualization detection
- RM #1049758 Support ioctl() with FIONREAD flag
- RM #1061103 Improve performance of epoll implementation
- RM #1080207 Add an option to gracefully exit() on startup failure
- RM #1063479 Add valgrind detection macros
- RM #1078695 Disable ring migration for RING_LOGIC_PER_USER_ID
- RM #1049980 Eliminate coverity-8.7 failures
- RM #1063164 Update License date to 2017
Fixed:
- RM #884440 Fix handling of SO_LINGER in case l_linger is zero
- RM #863457 Change logic of interface selection in attach receiver
- RM #1097116 Reduce amount of log messaging for DBG level
- RM #1085670 Fix VMA_POLL crash when exiting
- RM #1043830 Add set of gtest cases
- RM #1043830 Fix flags parameter verification for UDP flow
- RM #1043830 Fix incorrect setting EEXIST in global_ring_wakeup
- RM #1043830 Fix error processing for send operations
- RM #1079098 Fix array out of range in vma_extra api
- RM #1063479 Fix some Valgrind issues in VMA
- RM #1075811 Fix csbuild reported errors (one error is suppressed)
Version 8.4.1-0:
Date + Time 2017-07-04
=============================================================
Added:
- RM #959307 Link VMA with libnl1 or libnl3 based on libibverbs
- RM #1050652 Improve Jenkins - increase csbuild detection timeout, upgrade to cppcheck ver 1.79
Fixed:
- RM #1065276 Fix incorrect logging strings
Version 8.3.7-0:
Date + Time 2017-06-19
=============================================================
Fixed:
- RM #1055915 Fix tcp performance related to MP_RQ
Version 8.3.6-0:
Date + Time 2017-06-14
=============================================================
Added:
- RM #953382 Support Precision Time Protocol (PTP)
- RM #788404 Support Packet Pacing (socket option SO_MAX_PACING_RATE)
- RM #1048224 Improve performance while searching for non-offloaded data
- RM #1055915 Improve performance under MP-RQ mode
- RM #1052605 Increase monitored epoll fds, CQs and RINGs in vma_stats
- RM #1061898 Disable flow tag when TCP GRO is used
Fixed:
- RM #1041107 Fix flow_tag handling on VLAN interfaces
- RM #1031172 Fix Checkmarx security application reported issues
Version 8.3.5-0:
Date + Time 2017-05-25
=============================================================
Fixed:
- RM #1050059 Fix corruption in the net device ring map
Version 8.3.4-0:
Date + Time 2017-05-24
=============================================================
Added:
- RM #1014125 Support cyclic buffer handling of multi packets based on HW Striding-RQ
- RM #1014125 Separate buffer memory allocation from buffer pool logic
- RM #968024 Improve latency with PRM implementation for poll cq
- RM #1037898 Reduce latency max numbers (high percentile) by avoiding malloc calls at runtime
- RM #1026406 Add libvma-debug.so installation (supporting max log level FUNC_ALL)
- RM #998528 Verify --enable-vmapoll configuration is supported by OFED
- RM #959833 Do not offload ConnectX-3 interfaces in vmapoll mode
- RM #1023040 Show VMA Git number in VMA banner at startup
- RM #1025933 Add -Wundef flag to VMA compilation
- RM #1036427 Print driver (OFED) version in VMA banner
- RM #847360 Remove Coverity badge from README.md file
- RM #1010036 Update VMA_TCP_TIMESTAMP_OPTION description in README.txt
- RM #1042006 Delete redundant files from libvma home directory
Fixed:
- RM #962481 Fix cqe error under vmapoll mode
- RM #1008712 Fix mutual exclusion access in ring bond
- RM #1027871 Fix valgrind uninitialized struct epoll_event
- RM #1037215 Fix autotool detection of rdma_lib_reset
- RM #1020667 Fix VMA_CQ_POLL_BATCH_MAX incorrect value in README.txt
- RM #1043382 Fix VMA_PROGRESS_ENGINE_WCE_MAX value in README.txt
Version 8.3.3-0:
Date + Time 2017-04-25
=============================================================
Added:
- RM #1030331 Update global_sn update in cq_mgr_mlx5 class
Fixed:
- RM #1030299 Fix wrong consumer index in request notification
- RM #1027659 Fix timestamp cqe conversion in prm poll
- RM #1030134 Fix RX UDP hardware timestamp calculation
- RM #1029468 Fix crash in cq_mgr_mlx5 destructor
- RM #1029287 Fix RX UDP local if in buffer descriptor
Version 8.3.2-0:
Date + Time 2017-04-20
=============================================================
Added:
- RM #968024 Improve latency by direct cq polling instead of interfacing libibverbs
- RM #1006374 Optimize Tx data path - prepare in advance TCP next buffer and segment
- RM #1006374 Optimize Tx data path - remove redundant variable
- RM #1006374 Optimize Tx data path - reorder ring and qp_mgr::send() operations
- RM #1025129 Reduce TCP lock contention in case of high rate polling
- RM #1023714 Remove redundant if statement from dst_entry_udp fast path
- RM #1023040 Show VMA Git number in VMA banner at startup
- RM #996086 Add configuration option --enable-opt-log levels (max VMA log level is DEBUG)
- RM #1011829 Add VMA_TCP_NODELAY parameter (Nagle algorithm)
Fixed:
- RM #1005856 Fix MC flow_tag id when flow_tag is not supported
Version 8.3.1-0:
Date + Time 2017-03-28
=============================================================
Added:
- RM #933410 Support IPoIB on ConnectX-4
- RM #968200 Support Flow tag for vmapoll mode
- RM #968200 Support flow tag for multicast flows
- RM #987802 Support Flow tag for non-VMAPOLL modes
- RM #996018 Add README file for GTEST suite
Version 8.2.10-0:
Date + Time 2017-03-22 (branch: fast_update_release_20032017)
=============================================================
Fixed:
- RM #922411 Fix usage of AC_SUBST in rdma_lib_reset() detection
Version 8.2.9-0:
Date + Time 2017-03-21 (branch: fast_update_release_20032017)
=============================================================
Added:
- RM #964022 Optimize vma_list.h for performance
- RM #972524 Optimize data-path by removing unnecessary if statements
- RM #973211 Optimize buffer pool code
- RM #981372 Optimize mem_buf_desc_t class
- RM #987687 Request buffer for next packet after send_ring_buffer()
- RM #965720 Add new specification VMA_SPEC=multi_ring_latency
- RM #972524 Protect pointer access to OS API
- RM #981342 Remove buffer disorder statistics
- RM #964360 Reduce page fault events in mlx5_send() call
- RM #968751 Add boolean configuration parameter VMA_RX_POLL_ON_TX_TCP
- RM #969414 Set log severity to ERROR (was DEBUG) in case of insufficient buffers in pool
- RM #953380 Support dynamic routing in case of "add route" event
- RM #910917 Return error on socket API if exception occurred
Fixed:
- RM #922411 Fix fork() in child process
- RM #922411 Fix rdma_lib_reset() auto detection
- RM #957729 Fix potential race condition in vma_stats
- RM #906042 Fix VMA errno when reaching TCP max backlog to match OS
- RM #973194 Fix configure on parameters that caused compilation errors
- RM #987687 Fix request buffer for next packet after send_ring_buffer()
- RM #1003524 Fix fanotify_init() failure on aarch64 architecture
Version 8.2.8-0:
Date + Time 2017-01-25
=======================
Added:
- RM #954841 Update README.txt file with last modification date
Fixed:
- RM #962718 Fix peer-notification daemon removal on Ubuntu 14.10
- RM #955209 Fix vma_extra.h zero-copy example
Version 8.2.7-0:
Date + Time 2017-01-18
=======================
Added:
- RM #954841 Document VMA_SPEC "latency" in README.txt file
Fixed:
- RM #946914 Fix epoll_create() should return an error if size is 0
Version 8.2.6-0:
Date + Time 2017-01-08
=======================
Added:
- RM #850311 Update log info when link is down on VMA bringup
- RM #802922 Added TCP server-client window size exerciser test
Fixed:
- RM #943551 Fix received UDP vlan over bond (fail_over_mac=1) prints an error
Version 8.2.5-0:
Date + Time 2016-12-28
=======================
Added:
- RM #784338 Add VMA gtest (vmapoll API)
- RM #784338 Add testbed application (vmapoll API)
- RM #784338 Extend jenkins tests (vmapoll API)
- RM #865066 Use one vma_extra.h file for both vmapoll and legacy socket API
- RM #850311 Add support for socket offload even if link is down on VMA bringup
- RM #850270 Add VMA_TCP_CTL_THREAD=2 parameter under spec 6973
- RM #925571 Add textual vma spec support and a new latency spec
- RM #865066 Merge experimental branch (vmapoll API) into master branch
Fixed:
- RM #924683 Fix src addr when sending MCAST with IP_MULTICAST_IF option
- RM #896067 Fix remove ring event during socket closure (vmapoll API)
Version 8.2.4-0:
Date + Time 2016-12-27
=======================
Added:
- RM #933236 Improve peer-notification debian package removal procedure
Version 8.2.3-0:
Date + Time 2016-12-26
=======================
Fixed:
- RM #768398 Fix peer-notification vma daemon package removal under debian
Version 8.2.2-0:
Date + Time 2016-12-20
=======================
Added:
- RM #768398 Peer-notification daemon implementation (on half-open TCP connections)
- RM #842842 Move udp rx hw timestamp conversion from cq_mgr to sockinfo_udp
- RM #825055 Implement "Dummy Send" for improving low msg rate latency
Fixed:
- RM #910917 Fix vma crash after installing libvma from GitHub on RH7.3 inbox drivers
Version 8.2.1-0:
Date + Time 2016-12-14
=======================
Added:
- RM #897296 Advanced routing update
- RM #866429 Add HW and SW timestamps to user callback data
Fixed:
- RM #898505 Fix connecting twice to dest IP through non-exiting GW causes seg fault
- RM #897296 Fix resolving the correct outgoing interface for route decision
- RM #888475 Fix core dump for IB pkeys under bond
- RM #888475 Fix IB not offloaded in case of two bonds over pkeys
- RM #865172 Fix illegal memory access by netlink wrapper.
- RM #911076 Fix rcvmsg failure with MSG_VMA_ZCOPY_FORCE on OS socket
- RM #824880 Fix gtest compilation for gcc 4.4.7
Version 8.1.7-0:
Date + Time 2016-09-21
=======================
Added:
- RM #824880 Add Google Test based infrastructure
Fixed:
- RM #857641 Fix setsockopt with IGMPv3 IP_DROP_SOURCE_MEMBERSHIP option
Version 8.1.6-0:
Date + Time 2016-09-16
=======================
Fixed:
- RM #864201 Fix double freeing of pbuf in LWIP split function
Version 8.1.5-0:
Date + Time 2016-09-08
=======================
Added:
- RM #749133 IGMPv3 - add support for 'Source Specific Multicast'
- RM #770746 Add csbuild support into jenkins
- RM #770746 Update jenkins with valgrind support
- RM #848172 Code updates to comply with Coverity 8.5 version
Fixed:
- RM #846042 Fix failure to receive fragmented multicast packets over ConnectX3-IB
- RM #843662 Fix log WARNING to DEBUG in case not an mlx4 driver on IPoIB interface
- RM #844374 Fix error handling while registering a socket with plural epoll instances
- RM #847025 Fix extra API tests failing on make with vlogger.h not found
Version 8.1.4-0:
Date + Time 2016-08-24
=======================
Added:
- RM #847360 update github's README.md file
- RM #848239 Remove unused utility functions
Fixed:
- RM #848172 Fix multiple Coverity warnings (potential leaks, dead code, potential garbage values)
Version 8.1.3-0:
Date + Time 2016-08-18
=======================
Added:
- RM #786030 Revise RDTSC logic to consider CPU speeds taken from /proc/cpuinfo
- RM #801695 VMA out-of-box sockperf tuning for low latency (VMA_SPEC=10)
- RM #825799 Add locking to setsockopt() TCP to protect against pcb changes
- RM #847904 On bringup check if an interface is a bond by looking at its base name
Version 8.1.2-0:
Date + Time 2016-08-15
=======================
Added:
- RM #826700 Act gracefully when running on upstream drivers for non supported features
- RM #802922 LWIP - Split head of TCP unsent segment when bigger than send window size and NODELAY flag is set
-RM #825888 Dump fd statistics into VMA logger using vma_stats
- RM #840733 Avoid using mce_sys global variable in fast path to minimize cache hit and improve performance
- RM #822441 Support SW checksum validation for ingress TCP/UDP IP packets
- RM #803783 Allow local TCP connections for offloaded bounded listen sockets
- RM #828809 Control the number of post sends until requesting completion SIGNAL
- RM #825842 Add option for LWIP debug printing
- RM #841302 Coverity enhancements. Add support for ccpcheck and clang
- RM #827622 Add jenkins support for inbox
Fixed:
- RM #822562 Fix segmentation fault in vma_stats when exceeding fds string length
- RM #817046 Coverity fixes
- RM #836374 Fix exp-cq help message when executing "./configure --help"
Version 8.1.1-0:
Date + Time 2016-07-19
=======================
Added:
- RM #775233 Allow excluding logging levels to improve performance
- RM #781540 Wait for Rx WQE's when closing RING (QP)
- RM #777358 Un-offload UDP socket that is bound to any non-offloaded interfaces (e.g. loopback 127.0.0.1)
- RM #816006 TCP send flows for non-blocked socket - add Rx CQ poll
- RM #820855 Explicitly set QP init attr cap of max send SG to 2
- RM #820858 Update message regarding no steering rules in mlx4 to adapt to upstream drivers
- RM #804206 DNS server (UDP,port 53) to be handled by OS by default (libvma.conf)
- RM #786406 Jenkins - add building of source RPM
- RM #823037 Replace deprecated API (e.g. inet_addr) with ipv6 supporting API (e.g inet_pton)
Fixed:
- RM #783976 Fix VMA not able to receive data on epoll_wait()
- RM #806219 Fix segfault when running with CTL_THREAD_NO_WAKEUP
- RM #793030 Fix rpm rebuild failure
- RM #784234 Fix epoll is not cleared from vma_stats
Version 8.0.4-0:
Date + Time 2016-05-29
=======================
Added:
- RM #781384 add log details on UDP setsockopt(SO_BINDTODEVICE) and add python test code
Fixed:
- RM #781967 Fix ./configure failures on some distros - add pkg.m4 into distribution
- RM #775440 Fix 'make distclean' breakage
Version 8.0.3-0:
Date + Time 2016-05-18
=======================
Added:
- RM #770746 Jenkins - Modify valgrind suppresion file
- RM #770746 Jenkins - Extend jenkins check
Fixed:
- RM #778470 Fix segfault in sockperf pingpong, TCP socket on management interface, epoll
- RM #778287 Fix usage of get_env_params() method in mce_sys_var struct (broke version 8.0.2-0)
Version 8.0.2-0:
Date + Time 2016-05-15
=======================
Added:
- RM #763018 Search neigh table using both dst addr and ifindex
- RM #682675 Convert m_ready_fds (epoll_info.h) from std::tr1::unordered_map to vma_list
- RM #768358 Convert socket_fd_vec (epoll_wait_call.cpp) from std::vector into vma_list
- RM #776821 Support multiple node names in vma_list
- RM #764912 Expand vma_stats to include Send-Q & Recv-Q
- RM #737508 Add internal thread TCP timer handling mode: immediate/deferred
- RM #764913 Add vma_stats -v 5 PID column (netstat like)
- RM #736343 Add "--disable-exp-cq" parameter to control CQ polling using experimental verbs API
- RM #381520 Disable VMA's CQ interrupt moderation logic if missing MLNX_OFED's experimental CQ moderiation API
- RM #770746 Add jenkins check support on github pull request
- RM #773091 Add Intel compiler support
- RM #777322 Update logging on iomux flows
- RM #777958 Document limitation of using VMA_RING_ALLOCATION_LOGIC_RX|TX with select()/poll()
- RM #735940 Skip 'OFED Version' logging in VMA banner if ofed_info is not supported
Fixed:
- RM #756851 Fix TCP WIN SCALE incompatibility with RFC-1323, section 2.2/2.3
- RM #774912 Fix realloc size parameter in event_handler_manager class
- RM #777063 Fix usage of safe_mce_sys() calls instead of unsafe mce_sys calls
Version 8.0.1-0:
Date + Time 2016-03-10
=======================
Added:
- RM #747132 Change VMA license from "GPLv2 or commercial" to "GPLv2 or BSD" (dual license).
- RM #736034 Prepare Fedora 24 RPM spec file
- RM #748216 remove (old) non-scaled rcv window support from VMA
- RM #675823 return ENOMEM if select() uses 'ndfs' larger then the system's FD_SETSIZE
- RM #736029 Add VMA limits file "30-libvma-limits.conf" to make install
- RM #688734 BuildRequires should be flexible for environments with paralel versions of libnl-devel
- RM #682871 specify rpm build depenedcy on devel packages
Fixed:
- RM #692387 Fix vma_stats does not use the right shared memory for cleaning.
- RM #690836 Fix ib1 (second IB interface, port 2) is not recognized
- RM #739323 Fix crash when running in DEBUG and interface does not have an ip address
- RM #737218 Fix zero_copy_rx() handling of iov scattered data
- RM #740071 Fix TCP crash when executing setsockopt() SO_RCVBUF on listening socket
- RM #688876 fix misleading user message about libnl package
- RM #688877 fix wrong package name librdma_cm-devel in error message
- RM #742951 Fix GCC 6.0.0-0.13 compilation errors
Version 7.0.14-0:
Date + Time 2016-01-14
=======================
Added:
- RM #682804 full support for IP/UDP/TCP software checksum in environments where HW checksum offloading is not supported
- RM #678967 rpms updates to comply with rpmlint
- RM #568607 remove config_parser.y (in addition to removal of config_scanner.l) from compilation
- RM #541581 removed debug log that created false alarm at exit of application
Version 7.0.13-0:
Date + Time 2016-01-09
=======================
Added:
- RM #678967 Updates based on Fedora and Redhat submission guidelines
- RM #682804 Make VMA compile with infiniband group upstream where TX/RX checksum offload is missing (Fedora 23)
- RM #635537 Restore default of VMA_EXCEPTION_HANDLING=-1 (log debug) to
increase cases of offloaded traffic
- RM #541581 add debug log of wqe RX checksum errors
Fixed:
- RM #568607 Avoid lex warning: push config_scanner.c based on Flex 2.5.39 and remove config_scanner.l from compilation
- RM #651946 Fix releasing of used RX buffers without socket lock
Version 7.0.12-0:
Date + Time 2015-12-24
=======================
Added:
- RM #635537 Change default of VMA_EXCEPTION_HANDLING=0 - log debug and try recovery
- RM #651946 improve RX/TX stddev and latency for UDP and TCP sockets
- RM #661421 support log level input as strings
- RM #652089 Add FORTIFY definition to CFLAGS/CXXFLAGS in configure and makefile
- RM #668321 avoid lex -Werror issues by generating correct C source files in advance
- RM #631197 create log severity "details" (between info and debug)
Fixed:
- RM #623252 Fix make dist/clean for lex files errors (due to FORTIFY)
- RM #659575 Fix a crash when closing the process while other threads
are waiting on some sockets
Version 7.0.11-0:
Date + Time 2015-11-17
=======================
Fixed:
- RM #647577 global ctors are called after library constructor results
in unsafe values
- RM #618523 LAG bond receive double amount of multicast traffic if
LACP not working
- RM #647962 Fix a crash when all bond's slaves ports are taken down
and then up
- RM #649148 Fix a segfault in vma_stats -v 4
- RM #648405 Issue WARNING - vlan over bond while fail_ove_mac=1 is
not supported, fallback to OS
Version 7.0.10-0:
Date + Time 2015-11-08
=======================
Fixed:
- RM #623139 In neighbor rdma_resolve_addr, pass src if multicast
- RM #641777 fix compilation issue on ubuntu 15.10
- RM #553389 handle failures due to "no file descriptors"
- RM #618620 Bond LAG - Wrong hash with xmit_hash_policy=1 (L3+L4)
Version 7.0.9-0:
Date + Time 2015-10-26
=======================
Added:
- RM #591755 Handling of socket API exception flows
- RM #630037 Build RPM/DEB support
Fixed:
- RM #623139 handle addr_resolve() in neighbor
- RM #632455 Handle correctly msg_flag returned by recvmmesg()
- RM #VMA error when running getsockopt with an invalid level and an
invalid optlen
- RM #632654 should initialize all globals in fork()/daemon()
- RM #Fix make dist
Version 7.0.8-0:
Date + Time 2015-10-15
=======================
Added:
- RM #591741 Support bonding LAG
- RM #591741 support vlan over bond
- RM #591738 Support UDP RX HW time stamping
- RM #591764 Make VMA_MTU not needed
- RM #610758 optimize UDP TX
- RM #611344 Align checksum offload with latest libibverbs 1.2.0
- RM #612658 Replace PANIC at VMA startup with gracefull resource releasing
- RM #591747 remove sockperf from VMA rpm/deb packaging
- RM #618636 Support TCP Timestamp option
Fixed:
- RM #606490 possible race in neigh_entry state machine
- RM #612231 TCP accept() call does not exit when socket is closed
- RM #592216 Fix a crash when FD limit is less than required for initialization
- RM #612841 calculate MTU of VLAN interface rather than VLAN base interface
- RM #618624 TCP recv() might keep spining due to uninitialized member
Version 7.0.7-0:
Date + Time 2015-9-8
=======================
Added:
- RM #591755 infrastructure for exception flow in vma
- RM #601270 optimize accept() call
Fixed:
- RM #559317 duplicate tcp port when binding to INPORT_ANY while REUSEADDR is on
- RM #590813 MC ADD_MEMBERSHIP status to follow OS failure
- RM #599332 Fix install libvma.conf for PREFIX directory
- RM #599814 deadlock between epoll_wait and socket add/del from epfd
- RM #601200 use static cpuset allocation instead of dynamic
Version 7.0.6-0:
Date + Time 2015-9-2
=======================
Added:
- RM #541581 Support RX CSUM verification offload - align to MLNX_OFED 3.1
- RM #597700 Handle VMA exception flows - patch 1
Fixed:
- RM #577677 backlog params will now be taken from sysctl_reader.h
- RM #589972 provide info to the user if ulimit -n is too small
- RM #563682 fix a crash when ibv_create_flow failed
- RM #596462 fallback to OS in case ibv_create_flow failed
- RM #597449 Do not load vma resources if not required
Version 7.0.5-0:
Date + Time 2015-8-11
=======================
Added:
- RM #561857 Support non-standard vlan names
- RM #564158 provide 'sysctl' services for the rest of VMA objects to access
- RM #557948 Option to avoid system calls on tcp fd
- RM #562770 improve connection establishment rate
- RM #582394 Support flow-steering priority scheme on ConnectX-4
- RM #587515 Adapt vma to ConnectX-4 send inline demands
- RM #531820 Modify the syn throttling feature
Fixed:
- RM #565962 Wrong TCP backlog handling
- RM #349852 fix cubic congestion control algorithm
- RM #549313 neigh post_send_tcp, fix check buffer validity
- RM #559589 Close on exec for netlink sockets, to fix crash on exec
- RM #554834 Fix issue when tcp header bigger than packet length
- RM #575582 Wrong handling of TCP window scale option
- RM #575697 VMA can't send FIN while snd_buf is full
- RM #552441 fix a possible crash in case of multithread udp recvfrom
- RM #565588 fix SO_LINGER functionality different than OS
- RM #576497 for upstream RH7.2 look at interface dev_port and not dev_id
- RM #559317 Continue processing CQ for ready FD after failure on one of them
- RM #560899 tcp socket hang in syn_recv state
- RM #501206 fix SO_RCVBUF and SO_SNDBUF for TCP
- RM #581915 incorrect errno when giving getsockopt an invalid level value
- RM #588042 Adjust tcp receive window to the socket receive buffer size
Version 7.0.4-0:
Date + Time 2015-7-8
=======================
Fixed:
- RM #550714 fix rx buffer leak in case packet is coming when tcp state is "closed"
- RM #550714 enable reclaim buffers for tcp socket from internal thread in "no batching" mode
Version 7.0.3-0:
Date + Time 2015-7-8
=======================
Added:
- RM #561831 add a script for testing epoll and poll returned events
- RM #561831 Support returning error events for poll
- RM #560658 support SO_LINGER socket option
Fixed:
- RM #560210 periodic monitoring of active slave changes on bond interfaces
to support proper device removal and bond events without rdma_cm
- RM #561831 fix error events for epoll
- RM #545457 fix libnl rpm&deb dependency
- RM #560940 fix compilation warnings
- RM #547669 "netstat like" vma_stats to work when no process running
Version 7.0.2-0:
Date + Time 2015-6-26
=======================
Fixed:
- RM #545457 libnl dependency - fix headers mismatch
- RM #560835 crash in tcp socket when calling recv with 0 length buffer
- RM #557948 Avoid system calls on tcp fd - fixes
Version 7.0.1-0:
Date + Time 2015-6-24
=======================
Added:
- RM #557948 Option to avoid system calls on tcp fd
- RM #549313 Improve latency spikes in connection establishment - continue
- RM #58689 Add buffer pool statistics to vma_stats
- RM #555850 keep hash on vma_stats header and check for version
compatibility based on it
- RM #Convert std::deque into an improved version of Linux kernel list
- RM #545457 libnl dependency - add libnl3
- RM #50714 expand vma batching mode to reclaim unused buffers
Fixed:
- RM #559303 Wrong handling with the reference count of the memory buffers
- RM #543246 Clean VMA Checkmarx vulnerability report
- RM #558710 Non-blocked TCP connection attempt to non-existing server
does not wake up with failure
- RM #550714 VMA stops accepting connections after large number of connections
Version 7.0.0-0:
Date + Time 2015-6-09
=======================
Added:
- RM #549313 Improve latency spikes in connection establishment
- RM #553380 Improve high jitter on close
Fixed:
- RM #550706 vlan not using the naming conventions
- RM #548134 error: ~sockinfo() not all buffers were freed for TCP
- RM #554592 connection hangs in closed state when using epoll
- RM #548131 cqe status is Local Protection Error
- RM #551630 VMA not reading routing tables properly
Version 6.9.1-0:
Date + Time 2015-5-21
=======================
Added:
- RM #546272 - vma_stats (-v 5) shows netstat like view
(particularly similar to 'netstat -tunaep')
Version 6.9.0-0:
Date + Time 2015-5-10
=======================
Added:
- RM #543022 handle DEVICE_FATAL event to support hot-unplug
- RM #541581 Support RX CSUM verification offload
- RM #533217 Support creating vma_stats shared memory files in a given
directory
- RM #531820 Add syn/fin throttling support
- RM #501215 let the tcp timer run from the user thread when possible
- RM #501210 Add retransmission counters
Fixed:
- RM #535204 fix crash when there is no route back to syn sender
- RM #531810 address resolution for new neighbor block for 1 msec
- RM #509794 Don't wait in tcp prepare_to_close for last ack
it will be handled by the tcp timer.
- RM #515391 if destroy flow failed, continue destroying the rfs
object
- RM #501206 fix SO_RCVBUF and SO_SNDBUF for TCP
- RM #491134 Available send work requestes are affected by return time
of buffers to pool
Version 6.8.4-0:
Date + Time 2015-3-24
=======================
Fixed:
- RM #515391 if destroy flow failed - continue destroying the rfs object
- RM #509794 Don't wait in tcp prepare_to_close for last ack it will be
handled by the tcp timer
- RM #501206 fix SO_RCVBUF for TCP #2
- RM #501215 let the tcp timer run from the user thread when possible
- RM #501210 Add retransmission counters
- RM #501206 fix SO_RCVBUF and SO_SNDBUF for TCP
- RM #491134 Available send work requestes are affected by return time
of buffers to pool
Version 6.8.3-0:
Date + Time 2015-1-6
=======================
Fixed:
- RM #429310 Fix bug in TCP zero callback DROP case
Version 6.8.2-0:
Date + Time 2014-12-29
=======================
Added:
- RM #327504 update sockperf version 2.5.254
Version 6.8.1-0:
Date + Time 2014-12-29
=======================
Added:
- RM #327504 update sockperf version 2.5.253
Fixed:
- RM #429310 Modify udp_lat test to latest VMA extra API
Version 6.8.0-0:
Date + Time 2014-12-19
=======================
Added:
- RM #429310 Support TCP zero copy
- RM #434108 extract lwip patchs and backport some of latest lwip
changes
Version 6.7.2-0:
Date + Time 2014-8-21
=======================
Fixed:
- RM #408235 Support for PPC64 on older GCC
Version 6.7.1-0:
Date + Time 2014-8-6
=======================
Added:
- RM #408075 Add support for ARM64
- RM #408235 Add support for PPC64
- RM #408072 Align to upstream ETH flow steering
- RM #407928 Add support for Ubuntu14.04
- RM #407742 Add support for routing rules and secondary tables
Fixed:
- RM #401603 VMA_SPEC=29 should not set tx bufs
- RM #390002 loading libhugetlbfs with libvma crash on startup
- RM #390019 unclosed listen socket become ready at process shutdown
- RM #389691 shutdown listen socket - freeing a lock by mistake
Version 6.6.4-0:
Date + Time 2014-4-23
=======================
Fixed:
- RM #387249 wrong tcp packet count for vma_stats
- RM #387745 VMA_INTERNAL_THREAD_CPUSET causes seg-fault
Version 6.6.3-0:
Date + Time 2014-4-10
=======================
Added:
- RM #386387 add vma_spec parameter for memcached
Fixed:
- RM #375244 Align VMA with latest MLNX_OFED 2.2 experimental verbs - round #2
- RM #363428 TCP Listen port not seen in vma_stats
- RM #386389 print monitoring warnings only once, and in INFO log level
- RM #385473 Epoll, process interrupts per ring, instead of globaly
for all rings
Version 6.6.2-0:
Date + Time 2014-3-31
=======================
Added:
- RM #379150 support for accept4
- RM #381520 Support adaptive interrupt moderation per CQ
- RM #381708 Add ring statistics to vma_stats
- RM #378076 Allow L2 only rules for ETH MC
- RM #375244 Align VMA with latest MLNX_OFED 2.2 experimental verbs
Fixed:
- RM #384372 lwip unsent queue might be released to the RX buffer pool
instead of TX
- RM #384370 TCP TX buffer management issues - multiple parallel usage
of the mem_buf_desc->next pointer
- RM #381917 lacking consideration of igmp_max_memberships parameter
- RM #380783 Truncate existing VMA logs
- RM #379169 VMA ERROR is raised when trying to get IPV4 of non
existing interface
- RM #379080 rfs access is not protected in ring dtor
- RM #378103 filter MC loopback on RX flow
- RM #34322 No support for SO_BINDTODEVICE on already offloaded connected TCP socket
Version 6.6.1-0:
Date + Time 2014-2-25
=======================
Added:
- RM #375244 Align VMA with latest MLNX_OFED 2.2 experimental verbs
- RM #374399 Add udp_connect rule to libvma.conf
- RM #372972 handle SOCK_NONBLOCK and SOCK_CLOEXEC socket() flags
Fixed:
- RM #376409 bind to MC address might lead to not-offloaded TX traffic
- RM #372976 multicast dest should ignore gateway when registering neigh
- RM #372792 net_device_table_mgr: Remove unnecessary epoll_wait
- RM #371374 small modification to UDP RX software packet timestamp support
Version 6.6.0-0:
Date + Time 2014-2-2
=======================
Added:
- RM #371374 Add software UDP RX packet timestamp support
- RM #371550 improve wakeup mechanism
- RM #371337 support multiple cmsg messages
- RM #371081 vma stats: add a parameter for number of print cycles
- RM #34322 Add support for SO_BINDTODEVICE
- RM #368408 allow 3 tuple rules for TCP (dst ip, dst port), instead
of 5 tuple rules
- RM #368154 enlrage hash-map bucket numbers to 4096 (from 256)
- RM #367852 minor performance improvment in flow tuple comparison
- RM #367852 minor performance improvment in epoll/epfd
- RM #363758 Add the low_pps_tcp_send and time_measurements tests to
VMA repo
Fixed:
- RM #360776 epoll_pwait/epoll_wait with bad flow return wrong errno
- RM #371207 Seg-fault as a result of a race in ONESHOT timer removal
- RM #369921 route table is too small, new limit is 4096
- RM #368906 VMA_INTERNAL_THREAD_CPUSET does not working correctly
- RM #368905 local loopback (127.0.0.1) try to follow route table and
might reach an offloaded interface
- RM #368597 calling listen() for the second time when the socket is
in ready to listen state, generate VMA PANIC
- RM #367849 flow-tuple second ctor parameter list - wrong order
- RM #367857 tcp is_readable, ring_map_lock might be unlocked without taking the lock
- RM #367755 using "VMA_TIMER_RESOLUTION_MSEC=1000" with TCP causes
seg-fault
- RM #367744 route entry might not have valid route val, which can
lead to seg-fault
- RM #367697 Delete rx channel from global fd collection
- RM #365650 Issues with MLX4_SINGLE_THREADED=1
- RM #367389 IB pkey interface MTU is not read correctly
- RM #365538 Loading VMA with Redis server give a seg-fault
- RM #364303 bounded socket should send with bounded interface src ip,
even if routing table lead to different one
- RM #364174 vlogger: pass buffer as string in fprintf
- RM #364015 Seg-fault, missing initialization of a key for an
hash-map
- RM #363470 DEADLOCK in TX ring migration
- RM #362475 In ring migration, with limited number of rings, there
might be infinite loop
- RM #362368 In ring migration, buffers from previous rings might be
lost.
Version 6.5.9-0:
Date + Time 2013-12-23
=======================
Fixed:
- RM #361117 fixed a typo causing contiguous pages allocation issues
Version 6.5.8-0:
Date + Time 2013-12-22
=======================
Fixed:
- RM #361121 Expand raw packet QP error message to include alternatives
- RM #361117 Add configure check for IBV_ACCESS_ALLOCATE_MR
- RM #360776 epoll_pwait/epoll_wait with bad flow generates an error
- RM #360770 route gateway which lead to the same route entry does not work
Version 6.5.7-0:
Date + Time 2013-12-18
=======================
Fixed:
- RM #360098 fix coverity errors
- RM #359537 IB, non-blocking TCP connect take long time
Version 6.5.6-0:
Date + Time 2013-12-11
=======================
Fixed:
- RM #359314 TCP migration + new TX buffer management - segfault
- RM #359330 seg-fault when trying to close tcp socket in the middle of connect.
Version 6.5.5-0:
Date + Time 2013-12-11
=======================
Added:
- RM #100993 New TX Buffers Managment Logic
- RM #355605 create timers groups to lower to load of handling many timers
- RM #317 Loopback support on Ethernet (Multicast & Unicast)
Fixed:
- RM #357115 VMA does not consider gateway information in route table
in case there are multiple source ip for the interface
Version 6.5.4-0:
Date + Time 2013-12-02
=======================
Added:
- RM #349852 Add congestion control algorithms to LWIP
Fixed:
- RM #349737 ubuntu13.10 compilation errors
- RM #349765 VMA does not support select with more than 1024 sockets
- RM #349767 internal thread does not able to handle thouthands of request
- RM #349924 wakeup mechanism - race condition when going to sleep
- RM #349769 separate TX buffer managment from QP WR credits
- RM #351353 wakeup mechanism is not fit for multithread access to the same fd
- RM #352158 logical resource deadlock - multithread access to the same ring
- RM #355154 TCP recv part of sent data and close the socket raises "VMA ERROR"
Version 6.5.3-0:
Date + Time 2013-11-07
=======================
Fixed:
- RM #348637 IP_PKTINFO doesn't work properly with multicast
- RM #348638 Add member ship for the same socket twice should fail
- RM #347702 TCP listen socket accept socket on offloaded interface, but the
accepted socket is not offloaded
- RM #340484 Extra API libvma.conf rules - required to end with "\n"
- RM #343162 Extra API offload_thread should not affect accepted sockets
Version 6.5.2-0:
Date + Time 2013-10-21
=======================
Added:
- RM #343162 Support creating all sockets on a given thread as offloaded/not-offloaded
- RM #342335 Support debian packaging from source tarball
Version 6.5.1-0:
Date + Time 2013-10-15
=======================
Added:
- RM #327504 update sockperf version 2.5.233
- RM #216808 Support VMA compilation on Ubuntu
- RM #340484 improve VMA blacklist - libvma.conf
- RM #339564 support IP_PKTINFO in UDP recvmsg
- RM #333651 improve TCP recv latency
Fixed:
- RM #333393 Multithread, fix IGMP handling
Version 6.5.0-0: