Ivanovo Linux Users Group -  
Форум Помощь Поиск Вход
Предыдущая Следующая Вверх Тема Администрирование / Работа с сетью / Linux + RocketPort (11486 хитов)
- Написал(а) imp Дата 31.08.04 08:13
В общем такое дело
Дано:
Linux Slackware 9.1, ядро 2.4.22 стандартное из дистрибутива.
pppd 2.4.1 также из дистрибутива.
Мультипортовка Comtrol RocketPort Universal PCI драйвер 1800024H.
Драйвера компилируются и устанавливаются без видимых ошибок и предупреждений.
К ядру подключаются также без проблем.
Настройки:
мультипортовка:
#setrocket -a /dev/ttyR0
/dev/ttyR0, Line 0, Base port: 0x9400
        close_delay: 50, closing_wait: 3000
        Flags: spd_normal rs232
запуск pppd:
exec /usr/sbin/pppd /dev/ttyR0 38400  debug lock crtscts modem escape ff connect '/usr/sbin/chat <скрипт собссно>'

Симптомы:
Соединение с сервером удаленного доступа устанавливается нормально. Поднимается IP и прочие прелелести.
Опытным путем установлено, что при попытке передать IP пакет размером более 250 байт данный пакет отбрасывается на сервере
удаленного доступа и отмечается в статистике интерфейса как frame error. При уменьшении MTU на другую сторону принимаются только фрагменты.
При этом, если в качестве порта для модема использовать станадартный UART`овский COM порт с такими же настройками, все проблемы решаются,
отсюда делаю вывод, что сервер удаленного доступа работает нормально. Так же при установке мультипортовки под OS WinXP данная проблема тоже пропадает.
Ошибок в логах нет.
Что сделано:
1) Попытки играть с MTU/MRU
2) различные настройки портов через setrocket
3) ковыряние в драйвере (поигрался с константами пулинга устройства и тайминга)
4) попытка пересборки pppd
5) попытка пересборки ядра
6) включение multilink ppp на pppd
7) попытка поиграться с flow control
8) внимательное чтение документации и поиск в интернете :-)
Ни одно из этих действий не привело к разрешению проблемы.

Если кто сталкивался с таким вопросом, подскажите где я дурак?
Parent - Написал(а) LOE (Site/forum admin) Дата 31.08.04 10:46
Есть мультяшка RocketPort, правда ISA'шная. Работает безупречно.
Ядро 2.2.18 модуль rocket
$ uptime
  2:45pm  up 221 days,  3:06, 15 users,  load average: 0.03, 0.06, 0.05

В таких ситуациях, как правило, железку надо "щупать", что-то посоветовать удаленно очень трудно.
"No! Try not! Do. Or do not. There is no try." -- Yoda
Parent - Написал(а) imp Дата 31.08.04 11:20
2LOE: Где ее еще можно щупать? Если есть время и желание могу принести, и пива сверху ессно. Я уже если честно выбился из сил.
Parent Написал(а) LOE (Site/forum admin) Дата 31.08.04 13:17
Приноси, интересно глянуть.
Бывало, что разные версии ядра по разному с железкой работали...
Одно слово - щупать надо :-)
"No! Try not! Do. Or do not. There is no try." -- Yoda
Parent - Написал(а) G0thic Дата 31.08.04 10:55
А не мешает ли ей кто работать?
Винда и линукс по своему разделяют прерывания для PCI устройств.
С кем твоя мультипортовка работает и на каком системнике, какие ещё устройства PCI установлены?
Пробовал ли на другом ПК и другие ядра?
Когда кругозор человека сужается к минимуму, он называет это своей точкой зрения.
Parent - Написал(а) imp Дата 31.08.04 11:14
2G0thic: Была сия идея. Ставил на разные прерывания. Ни с кем не конфликтует. Ядра брал разные, с разных дистрибутивов - все что есть в столе. RedHat 7,9,9.2, slackware 7.1,9,9.1 - глухо!
У меня все-таки смутное предчувсвие, что все-таки корявый драйвер или проблемы с матерью. На худой конец, конечно попробую я это гадство с другой материнской платой, ну чтоб уж ВААЩЕ. После этого буду пинать того, кто мне этот геморрой привез. Нехрена, пущай разбираються сами, поддержка линукс и ядра 2.4.х анонсировано. На форум написал уже из бессилия!
Parent - Написал(а) G0thic Дата 31.08.04 13:24
Мрачно. В таких ситуациях даже не знаешь за что браться. Бывало такое.
Чтож похоже все испробовано. Доктор сказал в морг.
Когда кругозор человека сужается к минимуму, он называет это своей точкой зрения.
Parent Написал(а) LOE (Site/forum admin) Дата 31.08.04 13:27
Не в морг, а на операционный стол :-)
Принесут - посмотрим.
"No! Try not! Do. Or do not. There is no try." -- Yoda
Parent Написал(а) G0thic Дата 01.09.04 05:39
Анекдот напрашивается
- Ты где счас работаешь?
- В морге. Трупы обмываю.
- А как платят?
- Семь обмыл - восьмой себе.
Когда кругозор человека сужается к минимуму, он называет это своей точкой зрения.
Parent Написал(а) imp Дата 02.09.04 04:06
Проблема решилась. Вы только не смейтесь! Вот что мне ответили из тех саппорта:

=======================================
You are absolutely correct. There is a small bug in the current driver on our website that will be fixed in the next release.
If your running the rocket.ko (or rocket.ko) that came with your kernel or the one that came from our website, there is a modification that needs to be made to the rocket.c file.
Change this:
if (from_user) {
if (copy_from_user(info->xmit_buf + info->xmit_head, b, c)) {
retval = -EFAULT;
goto end_intr;
} else {
memcpy(info->xmit_buf + info->xmit_head, b, c);
}
}

To this:
if (from_user) {
if (copy_from_user(info->xmit_buf + info->xmit_head, b, c)) {
retval = -EFAULT;
goto end_intr;
}
}
else {
memcpy(info->xmit_buf + info->xmit_head, b, c);
}
Then recompile the module.
I confirmed this worked for me with a 2.6.5 kernel running
'T0:2345:respawn:/sbin/getty -L ttyR9 9600 vt100' in my '/etc/inittab/'. I was able to display very long scrolling lists of text from cat, ps, ls, etc.
I also confirmed this fixed using applications like ppp.
The fix is identical for all current versions of the driver on any kernel.
This will be fixed in the next version of the module.
We will eventually be submitting the driver to the kernel again so that future kernels will not require any modification.
=======================================

Small bug, мля! Я из за этого Small bug месяц жизни потерял!!! Скобку фигурную они не там поставили!!!! Сам этот баг я б не в жизнь не нашел.
.... дальше идет нецензурная брань, в которой упоминаются криворукие разработчики Comtrol, их тестеры, их родители до седьмого колена и, заодно, Бил Гейтс (так, за компанию).....

2LOE: Спасибо, за предложение о помощи!
2All: Всем спасибо за участие!
Предыдущая Следующая Вверх Тема Администрирование / Работа с сетью / Linux + RocketPort (11486 хитов)

Powered by mwForum 2.12.0 © 1999-2007 Markus Wichitill

Page created in 0.081s with 10 database queries.