Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

version 3.0.2 #6

Merged
merged 45 commits into from
May 9, 2023
Merged

Conversation

AlexanderGrissik
Copy link
Collaborator

No description provided.

alexbriskin and others added 30 commits May 8, 2023 16:26
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
* Refactor TX preconditions to separate functions
* Decouple precondition testing from side-effects such as flag setting
* Move outside the critical section non-critical operations
* Remove unnecessary goto statements and labels
* Replace imperative calculations with standard algorithm
inside loops

Signed-off-by: Alex Briskin <abriskin@nvidia.com>
1. Move xlio_ti to qp_mgr.h
2. Change xlio_send_attr from typedef to struct name
3. Add const/noexcept method attributes
4. Remove unused attr union from xlio_tx_call_attr_t

Signed-off-by: Alex Briskin <abriskin@nvidia.com>
tcp_split_rexmit function used to split tcp segments
by taking the pbuf chain of the orig segment and split
it so the head pbuf will remain in the orig segment,
and the second pbuf + its chain will be part of a new segment.
The split was done incorrectly so the second pbuf had a wrong
tot_len value. It wokred fine if the second pbuf has no
chained pbufs.

Signed-off-by: Iftah Levi <iftahl@nvidia.com>
* Move the nvme tests to nvme/nvme.cc
* Move the nvme ops to sockinfo_nvme.{h,cpp}
* Put the input processing logic in nvme_parse_input_args.cpp
* Refactor TX preconditions to separate functions
* Decouple precondition testing from side-effects such as flag setting
* Move outside the critical section non-critical operations
* Remove unnecessary goto statements and labels
* Replace imperative calculations with standard algorithm
inside loops
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
- Add const to get_lkey signature
- iovec_veiw => pdu
- nvme_pdu_mdesc = NVMEoTCP_TX::pdu + mem_desc
- Update unit tests

Signed-off-by: Alex Briskin <abriskin@nvidia.com>
- Update tests
- Fix setsockopt

Signed-off-by: Alex Briskin <abriskin@nvidia.com>
- Add dependency injection for send_segment and send_pdu functions
- Implement segmentation of PDUs

Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
alexbriskin and others added 15 commits May 8, 2023 16:26
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alexander Grissik <agrissik@nvidia.com>
Signed-off-by: Igor Ivanov <igori@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Call single tcp_tx inside nvme_ops::tx.
Refactor nvme_ops to *only* receive complete NVMe PDUs.

Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alex Briskin <abriskin@nvidia.com>
…::attr

Signed-off-by: Alex Briskin <abriskin@nvidia.com>
Signed-off-by: Alexander Grissik <agrissik@nvidia.com>
Controlled by XLIO_SKIP_POLL_IN_RX:
SKIP_POLL_IN_RX_DISABLE = 0
SKIP_POLL_IN_RX_ENABLE = 1
SKIP_POLL_IN_RX_EPOLL_ONLY = 2

By default, TCP sockets will poll CQ in Rx (SKIP_POLL_IN_RX_DISABLE).
In case of SKIP_POLL_IN_RX_ENABLE - All TCP sockets will skip CQ poll.
In case of SKIP_POLL_IN_RX_EPOLL_ONLY - Only sockets that were added
to epoll will skip CQ polling.

Signed-off-by: Iftah Levi <iftahl@nvidia.com>
To allow GRO + flow tag.
Controlled by XLIO_DISABLE_FLOW_TAG.
Default value is 0 (flow tag enabled).

Signed-off-by: Iftah Levi <iftahl@nvidia.com>
Signed-off-by: Alexander Grissik <agrissik@nvidia.com>
Signed-off-by: Alexander Grissik <agrissik@nvidia.com>
@AlexanderGrissik AlexanderGrissik merged commit 5eeda05 into Mellanox:master May 9, 2023
@mpodles mpodles mentioned this pull request Apr 11, 2024
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants