summaryrefslogtreecommitdiffstats
path: root/src/vnet/session/session.c
AgeCommit message (Expand)AuthorFilesLines
2019-12-11api: Use vl_msg_push/pop_heapNathan Skrzypczak1-3/+2
2019-12-10api: multiple connections per processDave Barach1-1/+1
2019-11-29session: no cleanup notification for forced deletesFlorin Coras1-1/+2
2019-11-19session: Fix out of order mqNathan Skrzypczak1-1/+2
2019-11-18session: extra checks in session validationSrikanth Akula1-0/+26
2019-11-12session: session enable in multiworkerNathan Skrzypczak1-1/+16
2019-11-05session tcp: refactor pacer timeFlorin Coras1-1/+1
2019-10-30tls: fix on tcp connection resetZeyu Zhang1-1/+2
2019-10-28session: allow transport cleanup only if not deletedFlorin Coras1-2/+3
2019-10-28session: app-closed to transport-deleted on delete notifyFlorin Coras1-1/+1
2019-10-10tcp: retry lost retransmitsFlorin Coras1-1/+1
2019-10-08session: add is_migrating flagNathan Skrzypczak1-0/+1
2019-10-01session: allow transport cleanup in any stateFlorin Coras1-3/+2
2019-09-25session: fix cleanup in closing statesFlorin Coras1-3/+1
2019-09-24session: avoid transport cleanup if previously deletedFlorin Coras1-2/+3
2019-09-20session: fix msg freeing on errorNathan Skrzypczak1-8/+7
2019-09-13session: add session enable option in config fileNathan Skrzypczak1-0/+2
2019-08-30session: move svm_fifo_clear_deq_ntf to before calling the app callbackVladimir Kropylev1-2/+2
2019-08-29svm: fix fifo hdr freelist allocationFlorin Coras1-0/+2
2019-08-27session: move ctrl messages from bapi to mqFlorin Coras1-4/+4
2019-08-19session: add explicit reset apiFlorin Coras1-6/+40
2019-08-13session: fix enqueue notification on 32bit systemsFlorin Coras1-3/+10
2019-08-09tls: mark as no lookup transportFlorin Coras1-1/+1
2019-08-08udp: fix connections moveAloys Augustin1-0/+28
2019-08-01session: session pool migration notificationFlorin Coras1-0/+15
2019-07-26session: separate ctrl, new and old eventsFlorin Coras1-5/+2
2019-07-26session tcp: handle rxt and acks as custom eventsFlorin Coras1-0/+25
2019-07-25session: add transport deleted stateFlorin Coras1-8/+11
2019-07-23session: reorganize dispatch logicFlorin Coras1-2/+2
2019-07-19session: improve event loggingFlorin Coras1-11/+2
2019-07-17session: use llist in session node evt handlingFlorin Coras1-14/+11
2019-07-16session: fix node enable sequenceVladimir Kropylev1-1/+1
2019-07-15session: allow transports to generate closed notificationsFlorin Coras1-26/+27
2019-07-09session: notify app of session and transport cleanupFlorin Coras1-3/+18
2019-07-08session: add flag to disable session lookupNathan Skrzypczak1-2/+2
2019-07-03quic: fifo notifications fixAloys Augustin1-0/+1
2019-06-29svm: rename fifo tx notifications to reflect useFlorin Coras1-2/+2
2019-06-28session: add half_open_has_fifos for UDPCNathan Skrzypczak1-6/+23
2019-06-27session: Add transport vft protocol optionsNathan Skrzypczak1-1/+2
2019-06-24session: full lock on session_send_evt_to_threadNathan Skrzypczak1-10/+2
2019-06-19session: call session_dequeue_notify after svm_fifo_dequeue_dropVladimir Kropylev1-1/+4
2019-06-17session: use listener_handle instead of listener_indexNathan Skrzypczak1-2/+3
2019-05-25tcp: handle fin+rst in same frameFlorin Coras1-1/+8
2019-05-08session: send tx events when data is dequeuedFlorin Coras1-0/+4
2019-04-30svm: more fifo refactor/cleanupFlorin Coras1-8/+7
2019-04-25session: use teps in accept/connect notificationsFlorin Coras1-6/+4
2019-04-24Add get_endpoint in transport vftAloys Augustin1-1/+15
2019-04-16svm_fifo rework to avoid contention on cursizeSirshak Das1-3/+3
2019-04-16Allow sessions to be allocated in app's RX callbacksAloys Augustin1-3/+11
2019-04-09session: fix session flagsFlorin Coras1-3/+0
="n">name, 48); name_u32 = (u32 *) name; __get_cpuid (0x80000002, &eax, &ebx, &ecx, &edx); name_u32[0] = eax; name_u32[1] = ebx; name_u32[2] = ecx; name_u32[3] = edx; __get_cpuid (0x80000003, &eax, &ebx, &ecx, &edx); name_u32[4] = eax; name_u32[5] = ebx; name_u32[6] = ecx; name_u32[7] = edx; __get_cpuid (0x80000004, &eax, &ebx, &ecx, &edx); name_u32[8] = eax; name_u32[9] = ebx; name_u32[10] = ecx; name_u32[11] = edx; s = format (s, "%s", name); vec_free (name); return s; #elif defined(__aarch64__) return format (s, "armv8"); #else /* ! __x86_64__ */ return format (s, "unknown"); #endif } static inline char const * flag_skip_prefix (char const *flag) { if (memcmp (flag, "x86_", sizeof ("x86_") - 1) == 0) return flag + sizeof ("x86_") - 1; if (memcmp (flag, "aarch64_", sizeof ("aarch64_") - 1) == 0) return flag + sizeof ("aarch64_") - 1; return flag; } u8 * format_cpu_flags (u8 * s, va_list * args) { #if defined(__x86_64__) #define _(flag, func, reg, bit) \ if (clib_cpu_supports_ ## flag()) \ s = format (s, "%s ", flag_skip_prefix(#flag)); foreach_x86_64_flags return s; #undef _ #elif defined(__aarch64__) #define _(flag, bit) \ if (clib_cpu_supports_ ## flag()) \ s = format (s, "%s ", flag_skip_prefix(#flag)); foreach_aarch64_flags return s; #undef _ #else /* ! ! __x86_64__ && ! __aarch64__ */ return format (s, "unknown"); #endif } /* * fd.io coding-style-patch-verification: ON * * Local Variables: * eval: (c-set-style "gnu") * End: */