Если интересно, гугли по запросу ld partial linking.

В данном случае это не суть важно, просто итоговый образ компонуется немного
в другом порядке. Но этого достаточно, чтобы могла проявиться какая-нибудь
подлая ошибка.


4 апреля 2011 г. 2:12 пользователь Дмитрий Зубаревич <
[email protected]> написал:

> Хм... Ок, а в чем заключается процесс промежуточной линковки?
>
> 4 апреля 2011 г. 2:02 пользователь Nikolay Korotky <[email protected]>написал:
>
> На x86/debug аналогично, и падает точнее внутри dev_queue_xmit (dev-
>> >header_ops->rebuild).
>>
>> On Apr 3, 9:34 pm, Eldar Abusalimov <[email protected]>
>> wrote:
>> > Привет,
>> >
>> > Тест на loopback валит систему. Причем при отладке все хорошо. Падает
>> где-то
>> > в kernel_sendmsg.
>> >
>> > tsim-leon3 build/base/bin/embox # падает
>> > tsim-leon3 -gdb build/base/bin/embox # не падает
>> > tsim-leon3 -fast_uart build/base/bin/embox # не падает
>> >
>> > Похоже на какой-нибудь null-pointer или гонку.
>> >
>> > Конфиг: sparc/debug
>> >
>> > 2 апреля 2011 г. 23:06 пользователь Nikolay Korotky <[email protected]
>> >написал:
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>> > > Читаем внимательнее вики, там описан НЕ процесс установки QEMU, а
>> > > различные юзкейсы работы с ним. В данном случае ничего кроме "qemu -
>> > > nographic -kernel embox" не требуется делать.
>> >
>> > > On Apr 2, 4:19 pm, Дмитрий Зубаревич <[email protected]>
>> > > wrote:
>> > > > Хм... Пугает процесс установки QEMU описанный на вики... Но
>> попробовать
>> > > > наверное стоит, спасибо за совет)
>> >
>> > > > 2 апреля 2011 г. 15:32 пользователь Nikolay Korotky <
>> [email protected]
>> > > >написал:
>> >
>> > > > > Попробуй перекочевать на x86/debug, там данной проблемы не обоняю,
>> да
>> > > > > и отлаживать будет проще.
>> >
>> > > > > On Apr 2, 1:46 pm, Дмитрий Зубаревич <[email protected]>
>> > > > > wrote:
>> > > > > > Sparc/debag, все выложено, вроде. В силу того, что не знаю когда
>> > > > > выполняется
>> > > > > > стартовый скрипт, пробовал запускать тест когда уже предлагается
>> ввод
>> > > > > > команд. Но если перед этим не выполнять вышеуказанные команды,
>> то это
>> > > > > > бесполезно.
>> > > > > > 2 апреля 2011 г. 9:31 пользователь Anton Bondarev <
>> [email protected]
>> > > > > >написал:
>> >
>> > > > > > > Так. а какой конфиг ты используешь? Все наработки выложены?
>> >
>> > > > > > > По поводу стартового скрипта. Очень странно, должен
>> отрабатывать.
>> > > > > > > Поскольку ты не можешь набирать команды пока он не отработал.
>> >
>> > > > > > > On 2 апр, 02:19, Дмитрий Зубаревич <
>> [email protected]>
>> > > wrote:
>> > > > > > > > Так... Продолжу разговор с самим собой)
>> > > > > > > > Положение дел сейчас такое: стартовый скрипт по прежниму
>> > > отрабатывает
>> > > > > > > > бесследно, зато если после запуска системы выполнить команды
>> > > ifconfig
>> > > > > -
>> > > > > > > > a 127.0.0.1 -p 255.0.0.0 -m 0:0:0:0:0:0 -u lo и route -n
>> > > 127.0.0.0 -m
>> > > > > > > > 255.0.0.0 -d lo add, то в табличке rt_table[RT_TABLE_SIZE]
>> > > появляется
>> > > > > > > > некая информация, правда тест всё равно валится, но это пока
>> не
>> > > столь
>> > > > > > > > важно. Интересует вопрос: почему стартовый скрипт не
>> оставляет
>> > > > > никаких
>> > > > > > > > следов после своего выполнения? И вообще когда именно он
>> > > выполняется?
>> > > > > > > > И можно ли это как-то проследить при отладке?
>> >
>> > > > > > > > On 1 апр, 18:53, Дмитрий Зубаревич <
>> [email protected]>
>> > > > > wrote:
>> >
>> > > > > > > > > Хм... Ситуация значит такая: бегу по стеку протоколов,
>> попадаю
>> > > в
>> > > > > > > > > *ip_send_packet.
>> > > > > > > > > Там вызывается функция ip_route, в которой из таблички
>> > > > > > > > > rt_table[RT_TABLE_SIZE] должна быть вытянута ссылка на
>> драйвер,
>> > > > > через
>> > > > > > > > > который надо посылать пакет в сеть. Я правильно излагаю?*
>> > > > > > > > > *Если правильно, то проблема в следующем: табличка
>> > > > > > > r**t_table[RT_TABLE_SIZE]
>> > > > > > > > > абсолютно пуста, хотя заполняться она должна, повидимому,
>> > > стартовым
>> > > > > > > > > скриптом, в котором я прописал следующие строки:**
>> > > > > > > > > *
>> > > > > > > > > *
>> > > > > > > > > "ifconfig -a 127.0.0.1 -p 255.0.0.0 -h -m 0:0:0:0:0:0 -u
>> lo",
>> > > > > > > > > "route -n 127.0.0.0 -m 255.0.0.0 -d lo add",
>> > > > > > > > > *
>> > > > > > > > > *
>> > > > > > > > > *
>> > > > > > > > > *Как с этим бороться?
>> > > > > > > > > *
>> >
>> > > > > > > > > 1 апреля 2011 г. 16:37 пользователь Дмитрий Зубаревич <
>> > > > > > > > > [email protected]> написал:
>> >
>> > > > > > > > > > Драйвер проинициализировался по крайней мере, сча буду
>> дальше
>> > > > > > > копать=)
>> >
>> > > > > > > > > > 1 апреля 2011 г. 14:36 пользователь Nikolay Korotky <
>> > > > > > > [email protected]>написал:
>> >
>> > > > > > > > > > Поднялось?
>> >
>> > > > > > > > > >> On Apr 1, 1:25 pm, Дмитрий Зубаревич <
>> > > > > [email protected]>
>> > > > > > > > > >> wrote:
>> > > > > > > > > >> > Эльдар, забыл добавить строку "route -n 127.0.0.0 -m
>> > > 255.0.0.0
>> > > > > -d
>> > > > > > > lo
>> > > > > > > > > >> add",
>> > > > > > > > > >> > но её добавление не помогло=(
>> > > > > > > > > >> > Антон, в том то все и дело, что даже до инициализации
>> дело
>> > > не
>> > > > > > > доходит.
>> > > > > > > > > >> Хотя
>> > > > > > > > > >> > похоже ты прав лупбек,то к драйверам я привязал, а
>> вот
>> > > сеть за
>> > > > > > > собой
>> > > > > > > > > >> > драйвера похоже не тянет. Спасибо=) Приду с пар
>> попробую
>> > > > > > > исправить.
>> >
>> > > > > > > > > >> > 1 апреля 2011 г. 12:28 пользователь Anton Bondarev <
>> > > > > > > [email protected]
>> > > > > > > > > >> >написал:
>> >
>> > > > > > > > > >> > > да и еще проверь что сеть тянет за собой драйвер
>> лупбека
>> > > (он
>> > > > > > > должен
>> > > > > > > > > >> > > инициализироваться).
>> > > > > > > > > >> > > Можно вставить вывод в функцию инициализации
>> драйвера. И
>> > > > > > > посмотреть
>> > > > > > > > > >> > > что сгенерил dot ( проверить зависимости то бишь)
>> >
>> > > > > > > > > >> > > On 1 апр, 12:14, Eldar Abusalimov <
>> > > > > [email protected]>
>> > > > > > > wrote:
>> > > > > > > > > >> > > > Добавлял в стартовый скрипт такие строки?
>> >
>> > > > > > > > > >> > > > ifconfig -a 127.0.0.1 -p 255.0.0.0 -h -m
>> 0:0:0:0:0:0
>> > > -u lo
>> > > > > > > > > >> > > > route -n 127.0.0.0 -m 255.0.0.0 -d lo add
>> >
>> > > > > > > > > >> > > > 1 апреля 2011 г. 4:53 пользователь Дмитрий
>> Зубаревич <
>> > > > > > > > > >> > > > [email protected]> написал:
>> >
>> > > > > > > > > >> > > > > Всем привет!
>> > > > > > > > > >> > > > > Передо мной стоит задача написания
>> псевдодрайвера
>> > > > > loopback,
>> > > > > > > с
>> > > > > > > > > >> помощью
>> > > > > > > > > >> > > > > которого можно будет фиксить севую подсистему.
>> > > Идейно
>> > > > > все
>> > > > > > > понятно,
>> > > > > > > > > >> > > > > реализация готова, с прилагающимся тестом
>> (вероятно
>> > > есть
>> > > > > > > ошибки в
>> > > > > > > > > >> ней,
>> > > > > > > > > >> > > > > но пока нет возможности протестить). Проблема
>> > > вобщем-то
>> > > > > > > одна:
>> > > > > > > > > >> никак не
>> > > > > > > > > >> > > > > удается заставить пакеты идти в loopback, хотя
>> вроде
>> > > как
>> > > > > все
>> > > > > > > > > >> подключил
>> > > > > > > > > >> > > > > в мэйках и конфигах (коммит r2371).
>> Складывается
>> > > > > > > впечатление, что
>> > > > > > > > > >> дело
>> > > > > > > > > >> > > > > не доходит даже до инициализации драйвера. Хотя
>> файл
>> > > в
>> > > > > > > сборку
>> > > > > > > > > >> > > > > попадает. Как с этим бороться?
>> >
>> > > > > > > > > >> > > > --
>> > > > > > > > > >> > > > Best regards,
>> > > > > > > > > >> > > > Eldar Sh. Abusalimov
>> >
>> > --
>> > Best regards,
>> > Eldar Sh. Abusalimov
>>
>
>


-- 
Best regards,
Eldar Sh. Abusalimov

Ответить