Здравствуйте, Александр и Антон!
Да, Вы правы. Плата STM32F4DISCOVERY. После сегодняшних изысканий и экспериментов хотел бы скорректировать проблему:
Проблема с ASSERT при получении любого фрагментированного пакета была связана с тем, что я когда-то установил так:
@Runlevel(2) include embox.net.ipv4(max_uncomplete_cnt=0) и при приёме фрагментированного пакета получал в консоль:
ASSERTION FAILED on CPU 0
at src/net/l3/ipv4/ip_fragment.c:240
in function ip_defrag
Но сегодня я "одумался" и установил max_uncomplete_cnt=16 (как по умолчанию), контроллер перестал перезагружаться, ошибок в консоли нет, но при получении первого же фрагментированного пакета устройство перестаёт взаимодействовать по сети, на пинги не отвечает, хотя другие потоки в контроллере выполняют свои задачи (светодиоды мигают, есть реакция на нажатия кнопки). Выводит контроллер из себя фрагментированный пакет любого типа. В коде есть такой интересный комментарий:
* For some reason we don't like situation when someone used forced fragmentation */
Приведённая команда посылает фрагментированный PING, если устройство отвечает, то команды выведет время ответа, можете попробовать отправить её большому компьютеру, wireshark это тоже подтверждает.
вторник, 21 марта 2017 г., 16:57:08 UTC+3 пользователь Александр Калмук написал: