summaryrefslogtreecommitdiffstats
path: root/src/vnet/session
AgeCommit message (Collapse)AuthorFilesLines
2021-02-05session svm: non blocking mqFlorin Coras2-4/+3
Avoid synchronizing producers and the consumer. Instead, only use mutex or spinlock (if eventfds are configured) to synchronize producers. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ie2aafbdc2e07fced5d5e46ee2df6b30a186faa2f
2021-01-26session: clear ct fifo flag prior to notificationFlorin Coras1-6/+7
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I6db15780d87426eee852aa020c50cbdf45dc1f95
2021-01-25svm: add custom q implementation for mqFlorin Coras4-16/+17
Add separate queue implementation for the message queue as it's custom tailored for fifo segments as opposed to binary api. Also move eventfds to the private data structures. Type: refactor Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I6df0c824ecd94c7904516373f92a9fffc6b04736
2021-01-09session svm: fix fifo migrationFlorin Coras3-24/+25
Allocate and attach a new pair of private fifos in the right private slice when a session is cloned. This ensures that private fifos are not shared between workers. Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ib700d18104d2ca79aa8a07434cdcdcab0bef13a5
2021-01-07vcl session: switch to generic cert key apisFlorin Coras4-101/+14
Remove the deprecated tls apis. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ia1e12bd813671146f0aca22e83d04c23ac13e595
2020-12-29session: remove fifo segment va allocatorFlorin Coras3-46/+7
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I7b2fd896dfa6df46916f46327975b95561809f00
2020-12-29svm vcl: allow random offsets for fifo segments in appsFlorin Coras2-12/+12
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I1658a9c19d8eae4c9a42c0a111d4ad343b8eb8a4
2020-12-29svm: allow mq attachments at random offsetsFlorin Coras6-45/+56
Type: feature Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ic373cd2c11272da539eb4b0db27227f36f2f9688
2020-12-28session: convert evt q segment to fifo segmentFlorin Coras3-19/+21
Type: refactor Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I63a44e11322f6fe27255820524e022f6d710b083
2020-12-24svm: split fifo into private and shared structsFlorin Coras8-56/+59
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Id8e77e8b2623be719fd43a95e181eaa5b7df2b6e
2020-12-23svm: remove fifo segment heapFlorin Coras1-5/+3
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I518e096fe13847759806ff62009e73fd8f7451b7
2020-12-14session: free segment manager only from mainFlorin Coras1-4/+32
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Idb62154191e85651263be9ae116dd87b93e3a140
2020-12-14misc: move to new pool_foreach macrosDamjan Marion7-50/+50
Type: refactor Change-Id: Ie67dc579e88132ddb1ee4a34cb69f96920101772 Signed-off-by: Damjan Marion <damarion@cisco.com>
2020-12-04udp session: fix deq notification for dgramsFlorin Coras1-1/+4
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I1440c11fb9d962a05d877aebb4de364c86f9953e
2020-12-01session: make pacer worker load awareFlorin Coras2-5/+14
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I71b9d54311fcad808fcdaad0df2dca8c161d580e
2020-12-01session: allow small pacer burstsFlorin Coras4-19/+28
Instead of enforcing a "strict" release of data, which relies on frequent rescheduling of sessions, allow some pacer coalescing, i.e., short bursts, that can minimize load on scheduler/session layer and potentially leverage tso. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I67e38e5b8dc335bd214113b70c68c27ae92bd6da
2020-11-25session: add startup option to poll in mainFlorin Coras2-2/+8
Type: improvement Needed to support multi-worker tests Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I68d5590cece24a744513dc6c324dfb2861a38a94
2020-11-24svm: support for multi-segment enqueuesFlorin Coras2-23/+50
Type: feature Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I06c7022a6afbb146b23cbd3a430497ec9e8be73d
2020-11-24session: init lookup before dgram accept notificationFlorin Coras1-1/+3
Avoids potential session pointer invalidation Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ide9ba0ab732707d3dda6019ebb77f0b9489dfda7
2020-11-13session: fix fifo tuning init on connectFlorin Coras1-8/+6
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I6f81d2010e98d0a5fbdc315abc04737bbcc1c434
2020-11-09session: remove support for shm bapi attachmentFlorin Coras4-55/+30
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I21bda0c46406aff54ad8fe5e44491e8e332de170
2020-11-09session: delegate fifo ooo lookup init to transportsFlorin Coras3-4/+9
Fifo chunk ooo lookup data structures are private (not allocated on segment heap) and should only be initialized by transport protocols that require out-of-order enqueues/dequeues (like tcp). Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Iaa15d6850385bf903cc501c54c2752e8e811449e
2020-11-09session: default to using memfd mq segmentsFlorin Coras1-0/+1
First step towards deprecating the use of binary api's segment for mq allocation. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I9d3d17e4d406575d64e0426bb65465130a84980a
2020-11-09vlib: fix trace number accountingBenoît Ganne1-11/+15
When using classifier to filter traces, not all packets will be traced. In that case, we should only count traced packets. Type: fix Change-Id: I87d1e217b580ebff8c6ade7860eb43950420ae78 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2020-11-04session: fix ct server session thread indexFlorin Coras1-1/+2
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I835b61f0b88a7324b09d82400debd78ad8b95401
2020-11-03session: reduce max session node frame sizeFlorin Coras2-4/+5
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I9e6b5e245533c9ea7bb8dc4f784a31fcb0da88bd
2020-10-29session: fix ct cleanup before full establishementFlorin Coras1-1/+6
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I58fb0e05f62eae45818c23e8e148ff6758ba463a
2020-10-29vcl session: minimize ct io eventsFlorin Coras1-8/+11
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ic4072fbc182fff38a28b415be0bb16f0559a4064
2020-10-27session: per worker state for ct sessionsFlorin Coras4-87/+131
Type: feature Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Id6f7b2b969eb50eb7611e4e9ca77b7ef0e0519a1
2020-10-26session: fix feature disableFlorin Coras3-2/+22
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I69e912ddf64d8ec89f8d93e02a201781b99de0bd
2020-10-26session: fix ct local listener session indexFlorin Coras1-0/+1
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I015443caefb13306858b4ccadeb0b979ea87299a
2020-10-19ip: Move the IP6 fib into ip6_[m]fib.cNeale Ranns1-0/+2
Type: improvement reduce the compile time by moving the bihash includes out of ip[46].h Signed-off-by: Neale Ranns <nranns@cisco.com> Change-Id: I6b9216e10aff1013071f9238b3e1ebbdd205bd80
2020-10-19hsa: cleanup sock server testFlorin Coras1-1/+1
Type: refactor Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I769174f0023d00a59bc5a03cf0a05996b616742b
2020-10-13session: listeners verbose format alignmentFlorin Coras1-3/+3
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ic8e98d7372af3bfde36bface49f9b90de5f3c64b
2020-10-13session: allow custom config of segment basevaFlorin Coras1-0/+2
Type: improvement Change-Id: If9ea09d652c228004492cf47854a7f6c1f8b3bc2 Signed-off-by: Florin Coras <fcoras@cisco.com>
2020-10-10session: app_name should format with %vjiangxiaoming2-4/+6
Type: fix Signed-off-by: jiangxiaoming <jiangxiaoming@outlook.com> Change-Id: Ib096ad14e6ddbaff52429a416ea4d245703a368d
2020-09-30session: init size and watermarks on all seg managersFlorin Coras4-10/+22
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I0cfe04277d80d9c81499651f893fb2d126ac8c85
2020-09-30svm: harmonize ssvm namesFlorin Coras2-3/+2
Type: refactor Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I26e4ad6bfd9e0be7745f6ba948bf51550fd4215e
2020-09-30svm session: use new clib mem apis for segmentsFlorin Coras4-15/+22
"sh memory map" now reports shared memory segments mapped by session layer for applications. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I7debdcd06c7728abfb5cf817a1ccc37de495472c
2020-09-25vppinfra session: file platform independent private dataFlorin Coras2-5/+5
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Id43b0b6db2b42ee5801236df0bd7f7225e1e081c
2020-09-24session tcp udp tls quic: improve cli formattingFlorin Coras3-6/+12
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Iae5dbb8aaaf82d8e95c2ee8bbbe6844c9dd49f80
2020-09-23session: fix sapi coverity warningFlorin Coras1-0/+2
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ib00ac02eabb06a300d01697b89d97b26dd3c4330
2020-09-22lisp: Move to pluginNeale Ranns1-1/+1
Type: refactor Change-Id: I54df533a8f863c4e49742903cf2457f18b4fc506 Signed-off-by: Neale Ranns <nranns@cisco.com>
2020-09-21session: use wrk instead of thread index in nodeFlorin Coras1-10/+12
Type: refactor Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ia36d86eb108f0651fc3af8b4dbdc2d0b49e283da
2020-09-18session: grab worker barrier for sapi msgsFlorin Coras1-0/+5
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I7cdbcfeb6f77a720e190daf9fe555320e586bba8
2020-09-18session: fix vpp exit abnormal due to application as a proxy server with ldpfanyf1-1/+9
Type: fix The function of application_setup_proxy() be called when application run as a proxy server, "app_wrk->first_segment_manager" be realloced in this function, but variable of "sm" point original memory location. Signed-off-by: fanyf <fanyufei521@outlook.com> Change-Id: I753c9fb60d1c0794d5eede9f3fab48381a802e3c
2020-09-16vcl: refactor bapi client index for sapi reuseFlorin Coras2-1/+3
Type: refactor Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ibebb6f7d4e610570693e213acd2f6d9332c563c6
2020-09-14session: del app worker on socket detachFlorin Coras1-5/+11
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ic904abedcd270c95e782159170d457bc396424a0
2020-09-14session: add unix socket api for app attachmentFlorin Coras6-18/+743
This is an af_unix socket alternative to the binary api. To enable it, add use-app-socket-api under session stanza in startup.conf. When the socket api is enabled, attachments through the binary api are disabled. The socket api only works with memfd fifo segments, i.e., shm segments are not supported. Type: feature Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I55ffcee201d004846daeeec85c700c7e7a578d43
2020-09-08svm session: document unsupported fifo deq combinationsFlorin Coras1-0/+4
Type: fix - Document that ooo dequeues with ooo lookups cannot be done in combination with in order dequeues. - Added assert to capture this scenario and de-initialized rbtrees for cut-through tx fifo Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ic40d020b3f0391fcf022ea3c906b86121744144f