Re: [PATCH net 4/4] net: hns3: default enable tx bounce buffer when smmu enabled
From: Simon Horman <horms@kernel.org>
Date: 2025-07-04 16:31:55
Also in:
lkml
On Wed, Jul 02, 2025 at 09:09:01PM +0800, Jijie Shao wrote:
The SMMU engine on HIP09 chip has a hardware issue.
SMMU pagetable prefetch features may prefetch and use a invalid PTE
even the PTE is valid at that time. This will cause the device trigger
fake pagefaults. The solution is to avoid prefetching by adding a
SYNC command when smmu mapping a iova. But the performance of nic has a
sharp drop. Then we do this workaround, always enable tx bounce buffer,
avoid mapping/unmapping on TX path.
This issue only affects HNS3, so we always enable
tx bounce buffer when smmu enabled to improve performance.
Fixes: 295ba232a8c3 ("net: hns3: add device version to replace pci revision")The cited commit may be a pre-requisite for this patch to check HNAE3_DEVICE_VERSION_V3. But it seems to me that the problem being addressed existed before the cited commit. If so, I think a different Fixes tag is appropriate.
Signed-off-by: Jian Shen <shenjian15@huawei.com> Signed-off-by: Jijie Shao <shaojijie@huawei.com> --- .../net/ethernet/hisilicon/hns3/hns3_enet.c | 31 +++++++++++++++++ .../net/ethernet/hisilicon/hns3/hns3_enet.h | 2 ++ .../ethernet/hisilicon/hns3/hns3_ethtool.c | 33 +++++++++++++++++++
It seems to me that the hns3_ethtool.c changes a) are not a requirement for the work-around introduced by this patch and b) may introduce complex behaviour between the effect of ethtool copybreak settings and the enablement/non-enablement of the work-around. Would it be possible to make a more minimal fix for net, that omits the ethtool changes. And then follow-up with them for net-next once the fix is present there? -- pw-bot: cr