ebpf: 사용자 공간에서 데이터를 보내고 기다립니다.

ebpf: 사용자 공간에서 데이터를 보내고 기다립니다.

나는 ebpf와 bcc를 사용하여 ebpf-lsm 프로그램을 작성하고 있습니다. 연결된 USB 장치를 차단하고 해당 정보를 사용자 공간으로 보내고 싶습니다. 장치 바인딩 여부에 관계없이 사용자가 나에게 정보를 보냅니다.

어떻게 해야 하나요? ebpf 매핑을 사용하면 사용자 공간에서 데이터를 받을 수 있다는 것을 알고 있는데 어떻게 기다릴 수 있나요? 즉, 사용자가 응답할 때까지 ebpf 프로그램을 어떻게 차단합니까?

안내해 주셔서 감사합니다!

답변1

이는 오늘날의 BPF에서는 불가능합니다. 일부 사용자 공간 프로세스가 응답할 때까지 프로그램이 실행되는 것을 막을 수 없습니다.

한 번 살펴보고 싶을 수도 있습니다ptrace(2)그리고/또는seccomp-bpf대신에. 예시 보기seccomp 결정을 사용자 공간으로 연기LWN.net에서.

관련 정보