History log of /dpdk/drivers/net/intel/i40e/i40e_rxtx.c (Results 1 – 10 of 10)
Revision Date Author Comments
# d3bb1c9e 24-Jan-2025 Bruce Richardson <bruce.richardson@intel.com>

net/intel: remove unneeded vector flags and cleanup code

With all drivers using the common Tx structure updated so that their
vector paths all use the simplified Tx mbuf ring format, it's no longer

net/intel: remove unneeded vector flags and cleanup code

With all drivers using the common Tx structure updated so that their
vector paths all use the simplified Tx mbuf ring format, it's no longer
necessary to have a separate flag for the ring format and for use of a
vector driver.

Remove the former flag and base all decisions off the vector flag. With
that done, we go from having only two paths to consider for releasing
all mbufs in the ring, not three. That allows further simplification of
the "ci_txq_release_all_mbufs" function.

The separate function to free buffers from the vector driver not using
the simplified ring format can similarly be removed as no longer
necessary.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Praveen Shetty <praveen.shetty@intel.com>

show more ...


# 10da6792 24-Jan-2025 Bruce Richardson <bruce.richardson@intel.com>

net/i40e: use vector SW ring for all vector paths

The AVX-512 code path used a smaller SW ring structure only containing
the mbuf pointer, but no other fields. The other fields are only used in
the

net/i40e: use vector SW ring for all vector paths

The AVX-512 code path used a smaller SW ring structure only containing
the mbuf pointer, but no other fields. The other fields are only used in
the scalar code path, so update all vector driver code paths (AVX2, SSE,
Neon, Altivec) to use the smaller, faster structure.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Praveen Shetty <praveen.shetty@intel.com>

show more ...


# cef05386 24-Jan-2025 Bruce Richardson <bruce.richardson@intel.com>

net/iavf: use common Tx queue mbuf cleanup

Adjust iavf driver to also use the common mbuf freeing functions on Tx
queue release/cleanup. The implementation is complicated a little by the
need to int

net/iavf: use common Tx queue mbuf cleanup

Adjust iavf driver to also use the common mbuf freeing functions on Tx
queue release/cleanup. The implementation is complicated a little by the
need to integrate the additional "has_ctx" parameter for the iavf code,
but changes in other drivers are minimal - just a constant "false"
parameter.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Praveen Shetty <praveen.shetty@intel.com>

show more ...


# 7c5d1d4d 24-Jan-2025 Bruce Richardson <bruce.richardson@intel.com>

net/i40e: use common Tx queue mbuf cleanup

Update driver to be similar to the "ice" driver and use the common mbuf
ring cleanup code on shutdown of a Tx queue.

Signed-off-by: Bruce Richardson <bruc

net/i40e: use common Tx queue mbuf cleanup

Update driver to be similar to the "ice" driver and use the common mbuf
ring cleanup code on shutdown of a Tx queue.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Praveen Shetty <praveen.shetty@intel.com>

show more ...


# e3b5f52d 24-Jan-2025 Bruce Richardson <bruce.richardson@intel.com>

net/intel: pack Tx queue structure

Move some fields about to better pack the Tx queue structure and make
sure all data used by the vector codepaths is on the first cacheline of
the structure. Checki

net/intel: pack Tx queue structure

Move some fields about to better pack the Tx queue structure and make
sure all data used by the vector codepaths is on the first cacheline of
the structure. Checking with "pahole" on 64-bit build, only one 6-byte
hole is left in the structure - on second cacheline - after this patch.

As part of the reordering, move the p/h/wthresh values to the
ixgbe-specific part of the union. That is the only driver which actually
uses those values. i40e and ice drivers just record the values for later
return, so we can drop them from the Tx queue structure for those
drivers and just report the defaults in all cases.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Praveen Shetty <praveen.shetty@intel.com>

show more ...


# c038157a 24-Jan-2025 Bruce Richardson <bruce.richardson@intel.com>

net/intel: merge ice and i40e Tx queue struct

The queue structures of i40e and ice drivers are virtually identical, so
merge them into a common struct. This should allow easier function
merging in f

net/intel: merge ice and i40e Tx queue struct

The queue structures of i40e and ice drivers are virtually identical, so
merge them into a common struct. This should allow easier function
merging in future using that common struct.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Praveen Shetty <praveen.shetty@intel.com>

show more ...


# 4d0f54d9 24-Jan-2025 Bruce Richardson <bruce.richardson@intel.com>

net/intel: add prefix for driver-specific structs

In preparation for merging the Tx structs for multiple drivers into a
single struct, rename the driver-specific pointers in each struct to
have a pr

net/intel: add prefix for driver-specific structs

In preparation for merging the Tx structs for multiple drivers into a
single struct, rename the driver-specific pointers in each struct to
have a prefix on it, to avoid name conflicts.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Praveen Shetty <praveen.shetty@intel.com>

show more ...


# e61679e7 24-Jan-2025 Bruce Richardson <bruce.richardson@intel.com>

net/intel: align Tx queue struct field names

Across the various Intel drivers, sometimes different names are given to
fields in the Tx queue structure which have the same function. Do some
renaming

net/intel: align Tx queue struct field names

Across the various Intel drivers, sometimes different names are given to
fields in the Tx queue structure which have the same function. Do some
renaming in drivers to align things better for future merging.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Praveen Shetty <praveen.shetty@intel.com>

show more ...


# 5cc9919f 24-Jan-2025 Bruce Richardson <bruce.richardson@intel.com>

net/intel: provide common Tx entry structures

The Tx entry structures, both vector and scalar, are common across Intel
drivers, so provide a single definition to be used everywhere.

Signed-off-by:

net/intel: provide common Tx entry structures

The Tx entry structures, both vector and scalar, are common across Intel
drivers, so provide a single definition to be used everywhere.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Praveen Shetty <praveen.shetty@intel.com>

show more ...


# c1d14583 24-Jan-2025 Bruce Richardson <bruce.richardson@intel.com>

net/intel: move Intel drivers to a subdirectory

Consolidate all Intel HW NIC drivers into a drivers/net/intel directory.
This matches the layout used for drivers in the kernel, and potentially
enabl

net/intel: move Intel drivers to a subdirectory

Consolidate all Intel HW NIC drivers into a drivers/net/intel directory.
This matches the layout used for drivers in the kernel, and potentially
enables easier sharing among drivers.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Praveen Shetty <praveen.shetty@intel.com>

show more ...