Bug Fixes History

The following table describes the issues that have been resolved in previous releases of XLIO.

Internal Ref. Number

Details

3612954

Description: An extra retransmission or TCP payload corruption can occur in rare cases after a TCP fast retransmission takes place.

Keywords: Fast retransmit

Discovered in Version: 3.10

Fixed in Version: 3.20.7

3604029

Description: Library reports error message in multithreaded application using XLIO_RING_MIGRATION_RATIO_RX=-1 XLIO_RING_ALLOCATION_LOGIC_RX=20.

Keywords: error, allocation, logic, migration, thread

Discovered in Version: 3.10

Fixed in Version: 3.20.7

3602243

Description: XLIO does not operate properly when connect is initialized during link down.

Keywords: connect, link, down

Discovered in Version: BlueField_OS_4.2.1_OL_8-2.230906.inbox.dev

Fixed in Version: 3.20.7

3592264

Description: Fixed XLIO compilation with clang-16 compiler

Keywords: clang

Discovered in Version: 3.10

Fixed in Version: 3.20.7

3591210

Description: Fixed TCP stream corruption in case of out of order packets.

Keywords: TCP, corruption, out of order

Discovered in Version: 3.10

Fixed in Version: 3.20.7

3575217

Description: instead of taking the first IP of the outgoing interface as the source IP of the packet, we go over all the IPs that are set for the outgoing interface and choose the most suitable IP in terms of IP + subnet combination.

Keywords: IP, source, packet, subnet

Discovered in Version: 3.10

Fixed in Version: 3.20.7

3574901

Description: Closing an outgoing TCP socket might cause a segmentation fault.

Keywords: TCP, socket, segmentation, fault

Discovered in Version: 3.10

Fixed in Version: 3.20.7

3563140

Description: SocketXtream does not currently support Generic Receive Offload (GRO).

Keywords: SocketXtraem,GRO, generic receive offload

Discovered in Version: 3.10

Fixed in Version: 3.20.7

3531871

Description: Fix incorrect socketxtreme completion filling.

Keywords: socketxtreme

Discovered in Version: 3.10.3

Fixed in Version: 3.20.7

3433495

Description: Fixed segfault caused by thread race during RX ring migration

Keywords: Rx, ring, migration

Discovered in Version: 3.0.1

Fixed in Version: 3.20.7

3286324

Description: Fixed RX ring cleanup infinite loop in case of empty RQ.

Keywords: Rx, ring, cleanup, termination, stuck, hang up

Discovered in Version: 2.0.7

Fixed in Version: 3.20.7

Internal Reference Number

Details

3455917

Description: Fixed the issue where a crash took place if an IPv6 multicast group was not previously configured as part of the routing table.

Keywords: Multicast; MC; IPv6; routing table

Discovered in Version: 3.0.2

Fixed in Version: 3.10.5

3447653

Description: Fixed incorrect pbuf chain split in tcp stack in case of re-transmission.

Keywords: tcp stack; split

Discovered in Version: 2.1.4

Fixed in Version: 3.0.2

3226553

Description: Fixed the issue where SO_BINDTODEVICE failed on a connected TCP socket when the interface was the same as the outgoing one.

Keywords: SO_BINDTODEVICE; TCP; interface

Discovered in Version: 1.3.5

Fixed in Version: 2.1.4

3263352

Description: Fixed TCP MSS calculation from SYN packet.

Keywords: mss; syn

Discovered in Version: 1.3.5

Fixed in Version: 2.1.4

3068125

Description: Added support for Multipath routing.

Keywords: ECMP; multipath routing

Discovered in Version: 1.3.5

Fixed in Version: 2.1.4

3213178

Description: Added support for IPv4/IPv6 local routing tables.

Keywords: Local routing; IPv4; IPv6

Discovered in Version: 2.0.6

Fixed in Version: 2.1.4

3100979

Description:

When VMA_HANDLE_SIGINTR=0, the following issues are no longer encountered:

1. When SIGNIT is caught by VMA, subsequent calls to socket API return EINTR error code immediately.

2. VMA_HANDLE_SIGINTR parameter is ignored by signal() API.

However, when VMA_HANDLE_SIGINTR=1, only the first issue persists.

Keywords: VMA_HANDLE_SIGINTR; SIGINT; EINTR; signal

Discovered in Version: 1.2.9

Fixed in Version: 2.0.6

3202977

Description: Fixed the issue of when a segmentation fault took place in RX zero copy API due to buffer trimming int16 overflow.

Keywords: Segmentation fault; RX zero copy; buffer

Discovered in Version: 1.3.5

Fixed in Version: 2.0.6

3132299

Description: Fixed the issue of a buffer leak in RX zero copy due to incorrect buffer chain break.

Keywords: Buffer leak; RX zero copy

Discovered in Version: 1.3.5

Fixed in Version: 2.0.6

3183546

Description: Fixed the issue where using send* functions with null elements in iov Tx vector caused an API error.

Keywords: iov Tx vector

Discovered in Version: 1.3.5

Fixed in Version: 2.0.6

2678856

Description: Fixed the issue of when attempting to reuse a TCP or UDP port immediately after connection is closed, the application failed with the error “Address already in use”.

Keywords: Close; bind; EADDRINUSE

Discovered in Version: 1.2.9

Fixed in Version: 1.3.5

3113441

Description: Fixed the issue where resource leakage took place after intensive disconnect/connect attempts.

Keywords: Resources leakage

Discovered in Version: 1.2.9

Fixed in Version: 1.3.5

3113450

Description: Fixed the issue where a crash took place after intensive TCP disconnect/connect attempts.

Keywords: Crash; tcp

Discovered in Version: 1.2.9

Fixed in Version: 1.3.5

3100949

Description: Fixed the issue of when attempting to perform a second connect() after the first connect() has failed, a segmentation fault took place. Now, an expected error is received upon second attempt instead.

Keywords: connect(); blocking socket; segmentation fault

Discovered in Version: 1.2.9

Fixed in Version: 1.3.5

2903631

Description: Fixed a synchronization issue that took place during new TCP socket creation.

Keywords: TLS

Discovered in Version: 1.1.8

Fixed in Version: 1.2.9

2690914

Description: Data corruption during https session.

Keywords: TLS

Discovered in Version: N/A

Fixed in Version: 1.0.6

© Copyright 2023, NVIDIA. Last updated on Feb 8, 2024.