dma_debug를 사용하여 DMA 트랜잭션을 추적하는 방법은 무엇입니까?

dma_debug를 사용하여 DMA 트랜잭션을 추적하는 방법은 무엇입니까?

저는 현재 특정(예: GPU 또는 NIC) PCI 카드에서 DMA 트랜잭션 추적을 가져와야 하는 일부 PCI-e 장치를 작업하고 있습니다. 약간의 연구 끝에 유용한 것을 발견했습니다.우편 엽서xealits에서 제공하지만 특정 DMA 트랜잭션에서 읽거나 쓴 바이트 수를 알려주지 않는 것 같습니다. 그러다가 dma_debug내가 기대했던 것과 정확히 일치하는 커널 모듈을 발견했습니다.

구성 옵션을 사용하여 커널 v6.7을 다시 컴파일해 보았습니다.

CONFIG_DMA_API_DEBUG=y
CONFIG_DEBUG_FS=y
CONFIG_DMA_API_DEBUG_SG=y
CONFIG_DMA_API_DEBUG_FENCE=y
CONFIG_DMA_API_DEBUG_EVENTS=y

기본 시작 변수 dma_debug.debug_dma=1에 추가되었습니다 . grub하지만 불행하게도 dmesg이전 커널을 부팅할 때와 똑같아 보입니다. 역시 dma_debug나타나지 않았다 /sys/kernel/debug.

내가 뭐 놓친 거 없니? 어떻게 작동하게 할 수 있나요 dma_debug? 이 모듈이 더 이상 사용되지 않는 경우 대안이 있습니까?

관련 정보