swiotlb: Omit total_used and used_hiwater if !CONFIG_DEBUG_FS
authorPetr Tesarik <petr.tesarik.ext@huawei.com>
Thu, 20 Apr 2023 09:58:58 +0000 (11:58 +0200)
committerChristoph Hellwig <hch@lst.de>
Thu, 20 Apr 2023 12:51:41 +0000 (14:51 +0200)
commitec274aff21b6a94c7973384ca80a503c1bc3b173
tree03fd86f07ec5b3585fda7e993e9443f75ad86b63
parent8b0977ecc8b30a30966e76fcb64cef5041626b02
swiotlb: Omit total_used and used_hiwater if !CONFIG_DEBUG_FS

The tracking of used_hiwater adds an atomic operation to the hot
path. This is acceptable only when debugging the kernel. To make
sure that the fields can never be used by mistake, do not even
include them in struct io_tlb_mem if CONFIG_DEBUG_FS is not set.

The build fails after doing that. To fix it, it is necessary to
remove all code specific to debugfs and instead provide a stub
implementation of swiotlb_create_debugfs_files(). As a bonus, this
change allows to remove one __maybe_unused attribute.

Signed-off-by: Petr Tesarik <petr.tesarik.ext@huawei.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
include/linux/swiotlb.h
kernel/dma/swiotlb.c