PCIE 버스를 통해 연결된 두 개의 보드가 있습니다. 사전 할당 된 메시지 버퍼를 통해 데이터를 교환 할 수 있습니다. 이제이 연결을 기반으로 가상 네트워크 인터페이스를 구현하려고합니다.skb에 수동으로 데이터 버퍼를 할당합니다.
- 사용
dev_alloc_skb()
수신 기능 내부skb
할당이skb
에 할당 된 버퍼로 데이터를 복사 : 일부 네트워크 드라이버 추천 소스 들은 수신 경로를 구현하는 두 가지 방법이 있음을 보여준다. dev_alloc_skb()
을 사용하여skb
을 할당하고 버퍼를 RX 링에 넣습니다.
이 두 경우에 버퍼는 dev_alloc_skb()
에 의해 할당됩니다. skb
제어 헤더 만 할당하고 data
포인터를 내 메시지 버퍼에 지정하고 싶습니다. skb_free()
을 수정하여 메시지 버퍼를 다시 메시지 풀에 넣어야합니다.
비슷한 접근법을 사용하는 참조 코드가 있는지 또는 코드 변경을 최소화하는 더 나은 방법을 제안 해 주시기 바랍니다. 모든 제안을 부탁드립니다. 고마워요!
나 또한 비슷한 문제를 해결하기 위해 노력하고, 어떤 접근했던 당신했다 HTTP ://stackoverflow.com/questions/40857686/mapping-1-mib-of-reserved-memory-for-network-interface-cardnic-driver-in-arm-l – shunty