Как включить режим отладки в приложении на основе dpdk?

Я сталкиваюсь с некоторыми ошибками при запуске приложения на основе dpdk. Я обнаружил, что ошибка возникает при вызове функции rte_eth_dev_configure(), предоставляемой библиотекой dpdk. Код ошибки -22. Однако я хочу, чтобы приложение показывало больше отладочной информации, чтобы я мог быстро сосредоточиться на части ошибки.

Я сделал RTFM и модифицировал $RTE_SDK/build/.config. Я превратил RTE_LIBRTE_ETHDEV_DEBUG в y. Но это не сработало. Куда функция rte_vlog() помещает сообщения журнала?

Хочешь мне помочь? Любое предложение приветствуется!


person andy    schedule 17.10.2017    source источник


Ответы (2)


Вы также должны изменить уровень журнала по умолчанию, иначе все отладочные сообщения будут скомпилированы во время компиляции, т.е.:

RTE_LOG_LEVEL=RTE_LOG_DEBUG
RTE_LIBRTE_ETHDEV_DEBUG=y

Пожалуйста, взгляните также на EXTRA_CFLAGS. Вы также можете добавить символы отладки и отключить оптимизацию, т.е.:

make EXTRA_CFLAGS="-O0 -g" ...
person Andriy Berestovskyy    schedule 17.10.2017

Я добавляю CONFIG_ RTE_LIBRTE_ETHDEV_DEBUG=y в файл конфигурации ${RTE_SDK}/config/defconfig_{RTE_TARGET} и перестраиваю цель. Оно работает.

person Xiaohe Hu    schedule 12.11.2017