]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Fix completion descriptors alignment for the ENA
authorMarcin Wojtas <mw@FreeBSD.org>
Wed, 18 Nov 2020 14:50:12 +0000 (14:50 +0000)
committerMarcin Wojtas <mw@FreeBSD.org>
Wed, 18 Nov 2020 14:50:12 +0000 (14:50 +0000)
commit4f8f476e73e55a95b15caad7187bd3863abfa520
tree04876055c61f8e331da9da7bc7994f56440d2834
parent99f20bdc47f62794eec6f46a7d8c4f434a31870a
parentd5fc5012bbae5e51a9be9f63372a1ef6fef10371
Fix completion descriptors alignment for the ENA

The latest generation hardware requires IO CQ (completion queue)
descriptors memory to be aligned to a 4K. It needs that feature for
the best performance.

Allocating unaligned descriptors will have a big performance impact as
the packet processing in a HW won't be optimized properly. For that
purpose adjust ena_dma_alloc() to support it.

It's a critical fix, especially for the arm64 EC2 instances.

Submitted by: Ido Segev <idose@amazon.com>
Obtained from: Amazon, Inc
MFC after: 1 week
Differential revision:  https://reviews.freebsd.org/D27114
sys/contrib/ena-com/ena_com.c
sys/contrib/ena-com/ena_com.h
sys/contrib/ena-com/ena_plat.h
sys/dev/ena/ena.c