Функция eBPF с типом возврата void: вопрос проверяющегоLinux

Ответить
Anonymous
 Функция eBPF с типом возврата void: вопрос проверяющего

Сообщение Anonymous »

Я запустил пример кода ebpf с void в качестве типа возвращаемого значения и перед возвратом вызвал bpf_printk. Я ожидал, что этот код будет отклонен верификатором. Однако мне удалось успешно загрузить его в ядро, и это как бы повредило мою сетевую подсистему, поскольку оно было связано с xdp, и мне пришлось перезагрузить мою машину, чтобы сеть снова заработала. Это нормально?
Ядро: Linux asus 6.5.0-28-generic #29~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Четверг, 4 апреля, 14:39:20 UTC 2 x86_64 x86_64 x86_64 GNU /Linux
ОС: Ubuntu 22.04.4 LTS
#include
#include

int counter = 0;

SEC("xdp")
void error_packet_count(void *ctx) {
bpf_printk("%d", counter);
counter++;
return;
}

char LICENSE[] SEC("license") = "Dual BSD/GPL";


Подробнее здесь: https://stackoverflow.com/questions/784 ... r-question
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»