Я хочу создать приложение, которое поддерживает eBPF
на CentOS 7
(версия ядра 3.10.0
):
if(setsockopt(sock, SOL_SOCKET, SO_ATTACH_BPF, prog_fd, sizeof(prog_f)) {
......
}
Итак, я загружаю версию 4.0.5
, делаю следующие настройки:
CONFIG_BPF=y
CONFIG_BPF_SYSCALL=y
Затем перейдите по этой ссылке, чтобы собрать и установить ядро 4.0.5
.
После выполнения make modules_install install
я обнаружил, что в <asm-generic/socket.h>
по-прежнему нет SO_ATTACH_BPF
, поэтому приведенный выше код не может быть успешно скомпилирован.
Как собрать ядро Linux для поддержки опции сокета SO_ATTACH_BPF
?