Bekijk de volledige versie : Архив - Прошивка 1.9.2.7-d/-rtn от энтузиастов
AndreyPopov
24-11-2008, 20:06
Которым интересно поразвивать прошивку Олега в его отсутствие?
Мной сделан альфа вариант прошивки Олега на основе ядра Linux 2.4.36 + uClibc 0.9.29. Использованы патчи от OpenWRT плюс собственное творчество, также обновлены пакеты iptables 1.3.8, dnsmasq 2.46, dropbear 0.52. Предполагалось, что Олег посмотрит на всё это, т.к. планы обновлять ядро у него были, и, после исправлений+дополнений, включит в свою прошивку. Но его отсутствие затягивается.... :(
Смысл предложения в следующем - хорошо бы потестировать патчи до возвращения Олега, для ускорения процесса включения в mainstream. Должен сразу предупредить - я, увы, не разбираюсь в вопросе так же глубоко, как Олег. Поэтому обращаюсь к людям способным самостоятельно исследовать проблему и не боящихся слова tftp :rolleyes:
что именно протестировать надо?
что именно протестировать надо?
Практически всё... поменялось же ядро и libc. У меня то работает, но это же не показатель!
uClibc 0.9.29
т.е. в перспективе можно надеяться прийти к сборке прошивки и пакетов одним тулчейном?
а бизибокс который?
интерес безусловно значительный. В данный конкретный момент есть проблема времени. Вот на пьяную неделю --- занятие очень заманчивое. ;)
angel_il
24-11-2008, 22:20
Я бы сказал "можно надеяться прийти к сборке пакетов хоть каким нибудь образом". Т.к. с имеющимся сейчас тулчейном их собрать попросту невозможно.
а что у нас нынче с тулчейном (я тут выпал почти на год из общественной жизни) вроде ничего нового не происходило :) а интерес конечно есть, софт кой какой с асинхронным ресолвом FQDN не работал корректно. Вобщем конечно попробовать бы хотелось. но это ведь значит придется пересобирать пол репозитария ;) гдеб взять второй роутер...
гдеб взять второй роутер...
у тебя ж коннект поднимается на длинке, так что временное отсутствие роутера пережить можно :)
т.е. в перспективе можно надеяться прийти к сборке прошивки и пакетов одним тулчейном?
Должно работать, тулчейн пересобран на базе OpenWRT svn 2008-06-15 c дополнительными патчами. Комплект из gcc 3.4.6, binutils 2.17, uClibc 0.9.29
а бизибокс который?
Еще и этот труд я не потяну. Еще Олег писал, что в новом Busybox'е исключены ext2fs tools, вот если кто сподвигнется их обратно имплантировать...
интерес безусловно значительный. В данный конкретный момент есть проблема времени. Вот на пьяную неделю --- занятие очень заманчивое. ;)
Тогда выложу на какой-нибудь файлообменник тулчейн, прошивку для Premium V1, исходники и кину линк.
У меня есть для тестов свободный WL500gP v.1 для тестов, но времени - как урву.
Тогда выложу на какой-нибудь файлообменник тулчейн, прошивку для Premium V1, исходники и кину линк.
Давайте, пригодится.
Я тут в соседней теме интересовался, насколько реально бэкпортировать в ядро метод epoll(). Есть патч для ядра 2.4 от автора:
http://www.xmailserver.org/linux-patches/nio-improve.html
Интерес научно-практический ;)
Хочу сравнить работу некоторых сервисов с ним и без него.
Например, какую нагрузку потянет astersik, lighttpd.
lly, если вам не трудно, посмотрите, может у вас получится достаточно просто внедрить этот патч (там в статье есть ссылка на diff). Тогда я с удовольствием вашу прошивку погоняю и сервисы потестирую.
Давайте, пригодится.
Для меня главное, чтобы был результат тестов в виде патчей или указания конкретного источника проблемы :) Я не смогу отвечать на вопросы начинающих в стиле "у меня в подвале стук", не телепат и квалификация не та...
Я тут в соседней теме интересовался, насколько реально бэкпортировать в ядро метод epoll(). Есть патч для ядра 2.4 от автора:
http://www.xmailserver.org/linux-patches/nio-improve.html
Интерес научно-практический ;)
Хочу сравнить работу некоторых сервисов с ним и без него.
Например, какую нагрузку потянет astersik, lighttpd.
lly, если вам не трудно, посмотрите, может у вас получится достаточно просто внедрить этот патч (там в статье есть ссылка на diff). Тогда я с удовольствием вашу прошивку погоняю и сервисы потестирую.
Я глянул на патч - без правки не пойдет, т.к. заточен на i386 и ia64. Но надежда есть...
А на большом компе ты тестировал epoll?
А на большом компе ты тестировал epoll?
На другом маленьком девайсе тестировал (архитектура powerpc, ядро 2.6 ), но пока до нагрузочных тестов дело не дошло. Но я сознательно этот метод выбрал с прицелом на хорошую масштабируемость.
На "больших" компах его уже тестировали, результаты хорошие.
Вот http://lse.sourceforge.net/epoll/index.html
И вот хорошая статья: http://blog.kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/lang/ru/
angel_il
25-11-2008, 19:31
у тебя ж коннект поднимается на длинке, так что временное отсутствие роутера пережить можно :)
у меня все клиенты безпроводные, а я уж и от проводов отвык...
На другом маленьком девайсе тестировал (архитектура powerpc, ядро 2.6 ), но пока до нагрузочных тестов дело не дошло. Но я сознательно этот метод выбрал с прицелом на хорошую масштабируемость.
Ну посмотрим, посмотрим. Никто тебя за язык не тянул :D
Вобщем прикрутил я этот патч, даже epoll-pipetest запускается. Нагрузочные тесты - с тебя!
Линки на прошивку и тулчейн в первом посте.
И вот хорошая статья:
Странная какая-то статья. Такое впечатление, что это результат машинного перевода с английского какой-то книжки "для чайников". Первая фраза вообще бесподобна.
Ну посмотрим, посмотрим. Никто тебя за язык не тянул :D
Вобщем прикрутил я этот патч, даже epoll-pipetest запускается. Нагрузочные тесты - с тебя!
Линки на прошивку и тулчейн в первом посте.
Оперативно!! Спасибо!
Ща я десктопе своём федору обновлю, потом займусь тулчейном.
Странная какая-то статья. Такое впечатление, что это результат машинного перевода с английского какой-то книжки "для чайников". Первая фраза вообще бесподобна.
Я тоже сперва не врубился в странный "язык" )) потом посмотрел - автор в оригинале на английском пишет. Там кнопочка вверху с пиндосским флагом. Оригинал гораздо читабельнее ;)
Оригинал гораздо читабельнее ;)
Первая фраза и там есть :) Среди кого у них, интересно такой странный "general way"? Во первых, это не general way никакой, а глупость, во вторых - никакого отношения к преимуществам epoll по сравнению с select/poll это не имеет. Система с распределением запросов по фиксированному пулу потоков и с select делается на раз. "Unlike these earlier system calls, which are O(n), epoll is an O(1) algorithm" - собственно, все содержание статьи. Остальное выдержки из man и много "мама мыла раму".
не знаю, наверно среди бородатых авторов socket API :D
в те времена наверно это был general way.
andlommy
26-11-2008, 07:47
Привет lly
С удовольствием потестирую прошиву, если ты сможешь ее собрать под WL500W. С ТФТП знаком, свою коробку восстанавливал из кирпичного состояния несколько раз (методом корочения пинов на микросхеме), игрался с ДДВРТ итд :)
С удовольствием потестирую прошиву, если ты сможешь ее собрать под WL500W.
Соберу и вечером выложу, но на реальной железке 500W я еще её не гонял.
andlommy
26-11-2008, 09:06
ну вот и потестим на реальной железке. Если че - 9й пин на землю и начинаем сначала :)
Можешь проверить одну маааааааааааленькую вещь - в текущщей прошиве не работает PPTP VPN поверх L2TP до прова. Походу это GRE энкапсуляция. Писал о проблеме тута (http://wl500g.info/showthread.php?t=17157)
Можешь проверить одну маааааааааааленькую вещь - в текущщей прошиве не работает PPTP VPN поверх L2TP до прова. Походу это GRE энкапсуляция. Писал о проблеме тута (http://wl500g.info/showthread.php?t=17157)
Вот именно что не могу - у меня статическая таблица arp у провайдера, а не L2TP. И VPN поднимать некуда :( Поэтому и прошу других это протестировать и попытаться найти баги. И полноценно суппортить, как Олег, прошивку не могу.
andlommy
26-11-2008, 09:34
ОК, будем ковырять все равно. Пиши, как соберешь прошиву.
Выложил бинарник для 500W и подправил ссылку на исходники - вчера в архив попал предпоследний вариант патча для epoll.
P.S. мой краткий внутренний Changelog прошивки кому-нибудь интересен?
DemonGloom
26-11-2008, 19:04
Выложил бинарник для 500W и подправил ссылку на исходники - вчера в архив попал предпоследний вариант патча для epoll.
P.S. мой краткий внутренний Changelog прошивки кому-нибудь интересен?
Да :) Если хочешь, могу тебе выделить личный svn репозитарий по адресу svn://demongloom.dyndns.info/ИМЯ .Место особо не ограничиваю, но в разумных пределах :)
andlommy
26-11-2008, 19:23
А куда выложил-то?
DemonGloom
Добавил в первый пост ChangeLog-lly.txt
Насчет SVN я уже думал, но для себя понял, что его имеет смысл делать только для всего дерева исходников, а это уже напряжно... А diff от diff'а выглядит нечитаемо.
andlommy
В первое сообщение этой ветки.
andlommy
26-11-2008, 19:31
Щас поставлю и скажу что и как :)
Какие конкретно тесты интересны?
angel_il
26-11-2008, 19:33
Выложил бинарник для 500W и подправил ссылку на исходники - вчера в архив попал предпоследний вариант патча для epoll.
P.S. мой краткий внутренний Changelog прошивки кому-нибудь интересен?
интересен конечно.
angel_il
26-11-2008, 19:39
Почему гады чехи своих патчей не отдают... редиски. Давайте их засудим : ))
angel_il
26-11-2008, 19:40
lly, на сколько тебя хватит, сколько уходит времени на все это дело.
angel_il
26-11-2008, 19:49
"samba/samba-2.0.10-gcc34.patch - фикс, определение аргументов 2,3 в dbghdr() как const char *"
На сколько помню Олег накладывал на вторую самбу какие то японские патчи, они присутствуют в текущей в данной тестовой прошивке?
lly, на сколько тебя хватит, сколько уходит времени на все это дело.
Ну пьяная неделя на прошлый новый год сильно помогла (я на нее болел) :D
А так - на получение заводящегося варианта ушёл месяц с гаком, а чтобы все запускалось без явных ошибок - почти три.
На адаптацию нового тулчейна еще месяца полтора.
Насчет будущего развития - я сильно рассчитывал на Олега :cool: Т.е. быть реальным ведущим я не смогу, ни по времени, ни по квалификации...
Да, если забыл написать, база у моей прошивки - Олегова 1.9.2.7-10. Т.е. все патчи по пакетам (samba и т.п.) взяты оттуда.
andlommy
26-11-2008, 19:59
После обновления прошивы мы даже online. Стоит ли мне сделать теперь reset настройкам, чтобы сконфигурять самбу с нуля, или можно и так?
После обновления прошивы мы даже online. Стоит ли мне сделать теперь reset настройкам, чтобы сконфигурять самбу с нуля, или можно и так?
Если была прошивка Олега - нет, не надо, т.к. база общая. Я правильно тебя понял, что L2TP поднялся успешно?
andlommy
26-11-2008, 20:21
L2TP работает ОК (правда вот только что настройки слетели с L2TP на PPPoE)
PPTP поверху тоже заработало (но оно почему-то заработало уже и до перепрошивания...не знаю почему)
Samba успешно подмонтировала хард с NTFS партицией (правда только если поставить Read/Write)
Не работает настройка "hostname" - я выставил в настройках самбы чтобы она себя выдавала как "router", но пока могу достучатся до коробки только через \\ip
L2TP работает ОК
Значит это я не сломал :cool:
Не работает настройка "hostname" - я выставил в настройках самбы чтобы она себя выдавала как "router", но пока могу достучатся до коробки только через \\ip
samba не завязана на ядро, а версия такая-же, что и у Олега. А на предыдущей прошивке работало?
andlommy
26-11-2008, 20:43
Samba вроде как работала...
Почему гады чехи своих патчей не отдают... редиски. Давайте их засудим : ))
Да лежат их патчи на koppel.cz. Ставить только неудобно. На выходных займусь. Если, кто раньше сделает - свистните, плиз.
DemonGloom
27-11-2008, 05:37
Так положи все дерево... Я не обижусь, да и другим удобнее будет...
Так положи все дерево... Я не обижусь, да и другим удобнее будет...
Примерно 350-400 метров, включая ядро
Что делать с оригинальными архивами программ (samba, dnsmasq, dropbear)? Не хранить их в SVN? Делать систему, как в OpenWRT, по автоматическому вытаскиванию с сайта разработчика я сейчас не потяну.
SVN удобен именно для коллективной работы, а это кому-нибудь реально нужно? Олег, в свое время, именно поэтому отказался от публичного репозитария.
Samba вроде как работала...
Проверь еще раз настройки WINS, если не поможет - пришли личкой smb.conf, попробую на досуге поэкспериментировать.
Ily, а можно ещё вверху ссылочку на то, как это дело пересобрать. Что-то сходу не могу разобраться.
Примерно 350-400 метров, включая ядро
....
Если проблема в объеме/скорости могу предложить халявный файлообменник на хорошей трубе.
Относительно SVN. Если есть желание, могу тоже разместить, но не сегодня. Только по-моему, это не то, что нужно мировой революции.
DemonGloom
27-11-2008, 19:19
Если проблема в объеме/скорости могу предложить халявный файлообменник на хорошей трубе.
Относительно SVN. Если есть желание, могу тоже разместить, но не сегодня. Только по-моему, это не то, что нужно мировой революции.
Так обьем и скорость и для меня некритичны пока.. Правда у меня исходящий/входящий каналы по 1mbps... Но вроде это не сильно страшно :) А до гигабайта размещать - легко...
Надо добиться успешного пересобирания прошивки Олега, линки на главной странице oleg.wl500g.info и http://wiki.wl500g.info/index.php/compilingcustomfirmware
Потом станут понятны мои фразы в первом сообщении. Времени написать детальное руководство нет, увы.
Ага, спасибо. Разберусь.
Сейчас пока пересобираю пакеты.
Вопрос - тулчейны прошивки и пакетов насколько я понимаю разные? Если так, то как оно одно с другим коррелирует? Если например изменилось ядро, то тупая пересборка всех пакетов не спасёт от потенциальной несовместимости?
artp и DemonGloom - большое спасибо за предложение, но пока я сам не пойму как эффективно в нашем случае использовать SVN (CVS, git, ...), я не буду затевать бодягу с репозитарием. Или вдруг появится еще кто желающий активно делать патчи, фиксить баги ... Олег не в счет - он вне конкурса :D
Спасибо за ценную информацию!
А зачем?
Много ли пакетов завязано на ядро?
Ну, те которые меня интересуют - точно )) lighttpd и asterisk. Надо с опциями разобраться, чтобы epoll() задейстовать. Потом буду тестировать ИХ с новой прошивкой ))
Теперь вопрос по тестированию. С астериском понятно.
Нагружу его сип-генератором (sipp), и посмотрю сколько каналов держит и сколько ест. До и после.
А вот как веб сервер тестить - не знаю, надо кого-нить просить ддос устроить )
DemonGloom
28-11-2008, 10:18
А вот как веб сервер тестить - не знаю, надо кого-нить просить ддос устроить )
Без проблем :) Какой адрес у вас?
Подскажите, ядра с kernel.org и с ftp://www.linux-mips.org/pub/linux/mips/kernel/ отличаются? Тарболы разного размера. И если отличаются, какое использвать лучше?
Подскажите, ядра с kernel.org и с ftp://www.linux-mips.org/pub/linux/mips/kernel/ отличаются? Тарболы разного размера. И если отличаются, какое использвать лучше?
Для ЧЕГО лучше? Ты бы хоть версию указал что-ли :(
На linux-mips.org черным по белому написано, зачем нужны их ядра - для поддержки конкретных платформ MIPS, даже список висит...
Я имел в виду лучше для сборки прошивки wl500gp. Например ftp://kernel.org/pub/linux/kernel/v2.4/linux-2.4.36.9.tar.gz 38730089 bytes и ftp://www.linux-mips.org/pub/linux/mips/kernel/v2.4/linux-2.4.36.9.tar.gz 38817849 bytes. А что за список? этот? http://www.linux-mips.org/wiki/SOC . Наш есть тут http://www.linux-mips.org/wiki/Broadcom_SOCs
Ты хочешь пройти этот путь сам? Извини, но судя по задаваемым вопросам, времени у тебя уйдет вагон и маленькая тележка.
Кратко - заведется только ядро с linux-mips.org, но этого мало т.к. нет драйверов под Broadcom'овское железо. Далее предстоит увлекательная работа по скрещиванию ужа с ежом...
P.S. Для сборки штатной(или текущей Олега) прошивки всё вышеперечисленное не нужно.
Должно работать, тулчейн пересобран на базе OpenWRT svn 2008-06-15 c дополнительными патчами. Комплект из gcc 3.4.6, binutils 2.17, uClibc 0.9.29
Еще и этот труд я не потяну. Еще Олег писал, что в новом Busybox'е исключены ext2fs tools, вот если кто сподвигнется их обратно имплантировать...
Я планирую сподвигнутся. Девайс поимею в середине декабря. В развлекательных целях хочу прикрутить uClibc 0.9.30 и busybox 1.13.xx. С ext2 думаю проблем не будет. У ребят из cross-lfs-embedded (кстати вышла версия под mips wrt) без проблем собираеься e2fsprogs 1.39.
Я планирую сподвигнутся. Девайс поимею в середине декабря. В развлекательных целях хочу прикрутить uClibc 0.9.30 и busybox 1.13.xx. С ext2 думаю проблем не будет. У ребят из cross-lfs-embedded (кстати вышла версия под mips wrt) без проблем собираеься e2fsprogs 1.39.
Эта задача, по счастью, гораздо проще, чем апгрейд ядра. С e2fsprogs проблем особых не должно, единственно, места они подзаймут - чего и хотел избежать Олег.
А с uClibc придется поразвлекаться, особенно с совместимостью со старыми бинарниками, которые нельзя выкинуть (wl, nas). Если нет сильного желания пройти всё самостоятельно, можешь использовать мои и OpenWRT'шные патчи. Да и потестировать придётся - лично я пока подожду переползать на 0.9.30 - в ней не так много кардинальных изменений относительно 0.9.29, а epoll можно собрать и отдельно.
а epoll можно собрать и отдельно.
К слову, можно и не собирать. Полезность сего на нашем агрегате несколько сомнительна, т.к. реальные выгоды при использовании epoll начинаются от порядка тысячи клиентов на сервер.
К слову, можно и не собирать. Полезность сего на нашем агрегате несколько сомнительна, т.к. реальные выгоды при использовании epoll начинаются от порядка тысячи клиентов на сервер.
macek обещал проверить сей факт на примере нагрузочного тестирования lighttpd и asterisk. Вот и посмотрим, сколько процентов CPU это сможет дать на нашей платформе.
Эта задача, по счастью, гораздо проще, чем апгрейд ядра. С e2fsprogs проблем особых не должно, единственно, места они подзаймут - чего и хотел избежать Олег.
А с uClibc придется поразвлекаться, особенно с совместимостью со старыми бинарниками, которые нельзя выкинуть (wl, nas). Если нет сильного желания пройти всё самостоятельно, можешь использовать мои и OpenWRT'шные патчи. Да и потестировать придётся - лично я пока подожду переползать на 0.9.30 - в ней не так много кардинальных изменений относительно 0.9.29, а epoll можно собрать и отдельно.
E2fsprogs подожмем как-нибудь, а за uClibc я следил около года. Парни неплохо развивались. А на счет бинарников, wl насколько я понимаю - модуль ядра. Он не должен от libc зависеть. А кто такой nas? Прошу прощения что напрягаю глупыми вопросами связанными с тем, что у меня пока еще нет девайса. Но у меня есть опыт сборки clfs-embedded, которая у меня уже года полтора в uptaim в качестве роутера на 200-ом пеньке с http, dns, smtp, imap, dhcp, netams и еще по мелочи...
Что-то не собирается у меня прошивка.
Что я делаю:
1. развернул GPL1927
2. положил скачанный с rapidshare wl500g-1.2.7-d в src
3. положил исходники ядра linux-2.4.36.7, скачанные с linux-mips, в src/linux (слинковал linux/linux с новыми исходниками
4. развернул новый тулчайн в /opt/brcm (слинковал hndtools-mipsel-uclibc с ним)
5. пошел в src/wl500g-1.2.7-d и сказал make kernel
сперва идет, идет, а потом ругается : Can not apply kernel/kernel-buildhost.patch cleanly
lly, что я не так делаю? Старая прошивка именно так собиралась.
angel_il
29-11-2008, 21:47
artp,
Первый раз приходится ядро собирать?
Возможно патч не подходитдля данного ядра. я бы для начала попробовал вручную его наложить.
Отнюдь нет, далеко не первый. До сих пор довольно много возился с чешскими патчами. Просто, я предположил, что я не то или не так ядро подсовываю и задал об этом вопрос.
angel_il
29-11-2008, 22:13
Отнюдь нет, далеко не первый. До сих пор довольно много возился с чешскими патчами. Просто, я предположил, что я не то или не так ядро подсовываю и задал об этом вопрос.
да я ж не наезжаю :) помочь чем могу пытаюсь. Посмотрите там в патче kernel-buildhost.patch пути есть того что патчится и сравните с тем что есть по факту.
да я ж не наезжаю :) помочь чем могу пытаюсь. Посмотрите там в патче kernel-buildhost.patch пути есть того что патчится и сравните с тем что есть по факту.
Пардон, если нехорошо прозвучало. Не имел в виду. И сам знаю, что толком работать с патчами не умею. Всю жизнь грязными лапами прямо в исходниках ковырялся, а если кому-то они были интересны, то отдавал их "как есть". Отсюда и вопросы. :confused:
Такое ощущение, что этот патч к ядру linux-2.4.35.5 , А lly пишет, что надо не ниже 2.4.36.7 (что я и подсунул). Отсюда и мой вопрос. Какое ядро надо брать и как именно его подсовывать. Прежде чем "чехов" втыкивать хочется (нужно) воспроизвести его сборку. Подозреваю, что что-то не по его процедуре елаю, а вот , что...
angel_il
29-11-2008, 23:06
"Такое ощущение, что этот патч к ядру linux-2.4.35.5 , А lly пишет, что надо не ниже 2.4.36.7"
Подождем lly :) но покопаться в нутре лишний раз никогда не помешает :) я всегда в тодобной ситуации сравниваю позиции строк описанных в патче (там не сложный формат) с тем что есть по факту и иногда просто там где надо подправляю. Но это если править совсем чуть чуть.
patch_debug.log появился после рихтовки переменной PATCHER в Makefile . Но содержание его совсем убогое:
$ apply kernel/kernel-buildhost.patch:
$ +++++++++++++++++++++++++++++++
patching file Makefile
Hunk #1 FAILED at 5.
1 out of 4 hunks FAILED -- saving rejects to file Makefile.rej
patching file include/linux/byteorder/generic.h
Прикладываю stdout от 'make kernel'
Вечно у меня какие-то геморрои :( Что у всех остальных сборка проблем не вызвала или никто больше не собирал?
patch_debug.log появился после рихтовки переменной PATCHER в Makefile . Но содержание его совсем убогое:
Позволяет в первом приближении понять, на каком файле в diff'е свалилось. И, поскольку главный Makefile в этой части больше никем не патчится, и это самый первый патч,у меня предположения два:
Ссылка указывает всё-таки не на то ядро
Уже кем-то патченный Makefile. Ну пришли что-ли личкой, гляну...
macek обещал проверить сей факт на примере нагрузочного тестирования lighttpd и asterisk. Вот и посмотрим, сколько процентов CPU это сможет дать на нашей платформе.
Я пока застрял на конфигурации астериска. Для тестового сценария нужно голосовое меню, хоть убей не идёт. Добавляю меню через штатный гуй, обновляю, в логе валится:
[Nov 30 17:53:23] WARNING[28840] pbx.c: Unable to register extension '7050', priority 1 in 'voicemenus', already in use
Или гуй глючит, или я не понимаю. ПРостые абоненты друг другу звонят, но для теста нужно терминировать звонок на IVR.
Кто может помочь? Нужен работающий конфиг один абонент + одно голосовое меню.. Заранее спасибо.
С ядром, взятым с kernel.org все собралось :confused:
Сегодня попробую прикрутить чешские патчи. Правда он у них один на все. немного неудобно.
Кроме того, кто-нибудь знает, подойдут ли модули для ядра 2.4.20 к ядру 2.4.36.9 ? Они только в виде .o
PowerUser
01-12-2008, 22:51
Спасибо за ценную информацию!
А вот как веб сервер тестить - не знаю, надо кого-нить просить ддос устроить )
Заддосьте себя сами :D.Например можно взять утилитку http_load из комплекта сервера thttpd и напустить оную утилитку с приличным числом потоков на ваш сервер.Ну и сравнить нагрузку на проц так и эдак, с epoll по идее должно полегчать.
P.S. апачей в *nix у неподготовленых админов с не очень крутыми машинами сия утиля при верных настройках (несколько сотен соединений параллельно) убивает на раз - они банально дохнут под тяжестью своих же многочисленных форков :D.Лайт так просто не убивается но если http_load гонять на мощной машине по 100Мбит сети а лайт на хилом роутере - думаю нагрузочная способность изучится :D
P.P.S. а насколько проблема ядро 2.6 юзать?OpenWRT вроде оное осилили? :confused:
Заддосьте себя сами :D...
Мучос грасиас, хвала лепа и просто большое спасибо!
Взял утилиту на вооружение )
P.P.S. а насколько проблема ядро 2.6 юзать?OpenWRT вроде оное осилили? :confused:
А какой смысл здесь спрашивать про OpenWRT? Если тебе действительно хочется 2.6, то во-первых, почитай здесь (http://linuxwireless.org/en/users/Drivers/b43#supported), а во-вторых пользуйся OpenWRT. Честно говоря я и сам напряженно думаю, чем буду пользоваться. Девайс только планирую прикупить, поэтому еще ничего не тестировал. Но уже очень плотно изучил вопрос и могу сказать примерно следующее. Ядро 2.6 (в составе OpenWRT) в принципе пользовать можно. Фишки в альтернативных драйверах b43, которые пока не реализованы лично для меня не критичны. У моего провайдера все предельно просто. Авторизация по MAC и никаких vpnов. Но если у тебя wl500w, то про n-draft можешь смело забыть примерно на полгода-год. У OpenWRT есть своя WEB-морда, но наверняка через нее нельзя будет задействовать какие-нибудь специфические фичи ASUSовских девайсов или твоего замороченного провайдера. Если тебе нужна поддержка на русском (на данном уважаемом ресурсе) и полный комплект всех мельчайших возможностей девайса через WEB-морду, то смирись с ядром 2.4 и помоги уважаемому lly протестировать его сборку.
PS А я пока продолжаю думать. Я вообще wl500w буду покупать в качестве замены старому 200-му пеньку, о котором писал выше. Т.е. меня возможности WiFi интересуют в меньшей степени. Главная моя цель - абсолютно безшумный сервер для личной web-странички, но со всеми возможными сервисами (smtp, imap, web-mail, dns, dhcp и т.п. для пары домашних компов и пары КПКшек). И со старой доброй конфигурацией через ssh.
Кстати, а что-то я не вижу отрицательных отзывов? Так может есть положительные? ;)
P.S. Особенно интересует WiFi и iptables.
angel_il
02-12-2008, 12:01
согласен писать отрицательные отзывы только если будет вместе с чешскими патчами :) иначе мне просто нечего тестить...
согласен писать отрицательные отзывы только если будет вместе с чешскими патчами :) иначе мне просто нечего тестить...
Увы, не так всё просто - модули в объектниках часть кода мне пока не хотелось вставлять в mainstream без чёткого понимания необходимости и того факта, что всё остальное не поломается. А на анализ нужно время... про необходимость драйвера /proc/bus/usb/devpath я пока не понял, кроме того, что он используется в dial скриптах, а доки нет /usr/sbin/serialcomm тоже бинарник - надо искать исходник вся надежда на artp
P.S. Некоторое время назад engy интересовался моими наработками, я ему их отправил, но ответа пока не было.
это была просьба выложить этот файл :)
Ну так если еще не нашел - он есть в приаттаченном архиве ;)
P.S. прикрутил cdma-kernel-ppp.diff и cdma-kernel-conntrack.diff, ждем ответа от автора по исходникам модулей.
P.P.S. Патч на usbserial оказался от 2.4.27 и я сильно не уверен, что он необходим в 2.4.37 - http://marc.info/?l=linux-usb-devel&m=109639053122263&w=2
angel_il
03-12-2008, 14:38
Ну так если еще не нашел - он есть в приаттаченном архиве ;)
P.S. прикрутил cdma-kernel-ppp.diff и cdma-kernel-conntrack.diff, ждем ответа от автора по исходникам модулей.
P.P.S. Патч на usbserial оказался от 2.4.27 и я сильно не уверен, что он необходим в 2.4.37 - http://marc.info/?l=linux-usb-devel&m=109639053122263&w=2
Кхе... в любом случае можно патчить только реально существующий файл, так? :) а раз есть патч и он отрабатывает без ошибок значит патч (которая утилита) находит предмет патчевания а именно файл linux/linux/net/ipv4/netfilter/ip_conntrack_core.c... вот его я и просил посмотреть.
Кхе... в любом случае можно патчить только реально существующий файл, так? :) а раз есть патч и он отрабатывает без ошибок значит патч (которая утилита) находит предмет патчевания а именно файл linux/linux/net/ipv4/netfilter/ip_conntrack_core.c... вот его я и просил посмотреть.
Нифига не понял. если речь о ip_conntrack_core.c., то он лежит в broadcom/src/linux/linux/net/ipv4/netfilter . Приложить?
Извиняйте, бояре, я всех растормошил, по-поводу чехов, но у самого время есть только в выходные сидеть. Я правильно понял, что все патчи уже прикручены, а libusb вроде как не надо? И ждем отклик по поводу модулей? Я хоть engy подергаю...
Извиняйте, бояре, я всех растормошил, по-поводу чехов, но у самого время есть только в выходные сидеть. Я правильно понял, что все патчи уже прикручены, а libusb вроде как не надо? И ждем отклик по поводу модулей? Я хоть engy подергаю...
Нет, к ядру осталось прикрутить devpath. Модули - есть шанс, что запустятся эти. Ну а неядерную часть я всю оставлю на твой откуп :)
angel_il
04-12-2008, 07:31
Нифига не понял. если речь о ip_conntrack_core.c., то он лежит в broadcom/src/linux/linux/net/ipv4/netfilter . Приложить?
Приложить, если не сложно, на работе качать здоровенное архив с сырцами несподручно.
PowerUser
04-12-2008, 07:45
А какой смысл здесь спрашивать про OpenWRT?
Я не спрашивал про конкретно OpenWRT.Я спрашивал почему упорно цепляются за (древнее и местами бестолковое) 2.4, которое лично мне ни разу не симпатично.Ну, вроде примерно причину узнал.Правда так и не понял почему нельзя обойтись без этих утилит.Они делают что-то такое что по другому никак и - без сорцев?
Если тебе действительно хочется 2.6,
Однозначно хочется.Потому что в 2.4 например насколько я помню кроме отсутствия epoll и меньшего количества драйверов еще и с тредами все плохо.Во всяком случае когда я юзал линуксы с 2.4 ядром - threaded приложения на каждый тред жрали оперативы почти как на весь процесс, что сводит пользу от тредов на ноль - оно по тяжеловесности не особо лучше форка такого же числа процессов получалось.А во всех виденных системах на основе 2.6 треды - нормальные.Итого в системах на основе 2.6 threaded приложения с логикой "1 соединение = 1 тред" смогут намного больше и - полностью нахаляву.Из используемых мной таким например, является 3proxy.Насколько он лучше в системах на основе 2.6 работает словами передать трудно - надо просто ps или top посмотреть разок и все станет понятно.Заранее извиняюсь если я где-то приврал в этой системной механике и ядро было не при чем: детально в суть проблемы не вкуривал но память что-то такое припоминает про ругань ALL про убогую реализацию тредов в случае 2.4...
то во-первых, почитай здесь (http://linuxwireless.org/en/users/Drivers/b43#supported), а во-вторых пользуйся OpenWRT. Честно говоря я и сам напряженно думаю, чем буду пользоваться.
+1.Олег - хорошая прошивка.Даже очень.Но - со своими недостатками.Которые лично меня - анноят(см.ниже).И которые никто в данной ветке чинить вроде как не собираются а требовать с нахрапом что-то от энтузиастов которые и так бесплатно творят чудеса мне как-то совесть не позволяет.
Девайс только планирую прикупить, поэтому еще ничего не тестировал. Но уже очень плотно изучил вопрос и могу сказать примерно следующее. Ядро 2.6 (в составе OpenWRT) в принципе пользовать можно. Фишки в альтернативных драйверах b43, которые пока не реализованы лично для меня не критичны.
А какие там фишки отсутствуют so far?Мне собссно кроме режима AP от асуса ничего не надо.Можно даже без WEP и WPA (кстати WPA тоже насколько я понял расхакали :eek: поэтому напрашивается решение: зарезать все и вся на файрволе а в роли авторизации и защиты канала нехай выступает openvpn чем эти дырявые чудеса науки, будет ли при этом канал защищен WPA или нет - глубоко до балды).
У моего провайдера все предельно просто. Авторизация по MAC и никаких vpnов.
А в чем грабли с VPNами в openwrt или где там еще с 2.6?Единственное что как я понял - Олег что-то специально оптимизировал для скорости работы PPTP и L2TP а на OpenWRT кто-то ругался что PPTP там скоростью не блещет.
Но если у тебя wl500w, то про n-draft можешь смело забыть примерно на полгода-год.
У меня обычный WL500GP, тот что с голубыми кристаллами...простите, который V1 :D
У OpenWRT есть своя WEB-морда, но наверняка через нее нельзя будет задействовать какие-нибудь специфические фичи ASUSовских девайсов или твоего замороченного провайдера.
Судя по скринам этой морды - там есть настройки вланов и морда не предполагает что WAN у нас - строго один и никак иначе.А мне как-то хочется 2 канала юзать.Я могу себе позволить резервный канал.
Если тебе нужна поддержка на русском
Да вообще я английский читаю не хуже русского и даже могу на нем писать - не критерий :D
(на данном уважаемом ресурсе)
А вот это - не отнять http://wl500g.info/images/icons/icon14.gif
и полный комплект всех мельчайших возможностей девайса через WEB-морду,
Если честно - вебморда асуса это то к чему у меня больше всего предъяв(предупреждение: далее следует мнение всегда всем недовольного тестера а поэтому вы прочтете немало нелестных вещей).
1) Дизайн.Он УЖАСЕН.Один только этот кошмар регулярно вызывает у меня зудение в одном месте в плане желания пересобрать это фирмваре самому и заменить это уродство на что-то более прилично выглядящее (пока скиллов маловато :o).Я не понимаю как можно делать столь ДРЯННОЙ вебинтерфейс.Это если что не в сторону Олега камень.А в сторону Асуса, ... !
2) Мне бы очень хотелось графики того чем занят девайс, внятную статистику и прочая.И не где-то сбоку а в основной морде.OpenWRTшная морда как я понял сие вполне себе умеет.А тут как я понимаю надо или нехило орудовать напильником или делать графики где-то сбоку (т.е. не в основной морде) а где-то еще.
3) О фичах.Я что-то не вижу в асусовой морде средств для настройки вланов.
4) А уж если не дай боже WAN-ов более чем один... ну да, знаю-знаю, ssh или телнет в руки и так с асусовой мордой на каждый мало-мальски нестандартный пшик :mad:
И вообще - судя по скринам морды openwrt как минимум by design она куда как попродвинутее асусовского уродства будет.И смысл цепляться за эту стремную асусовскую морду?Я просто не понимаю - "а нафига?"
Кроме всего этого мне у асуса в фирмваре еще не нравится:
5) Про ядро я уже сказал.
6) У меня с "Олегом" иногда "отваливается" wi-fi.В смысле, перестает находиться wi-fi девайсами до перезагрузки роутера.Архиредко(порядка раза в месяц а то и раз в несколько месяцев), но - случается.
7) Процесс watchdog (а это кто такое и нафига оно мне надо?) после полугода аптайма сожрал почти всю оперативку.Хороший такой watchdog.В смысле - саботаж он делает грамотно, не отнять.Кто б сказал - чем этот чудо-процесс занимается, есть ли на него сорцы и вообще какая цель существования этого саботера?Судя по названию - строго обратная тому что наблюдается на практике :D
8) В олеговской фирмваре FTP у меня почему-то стабильно подыхает если несколько соединений открыть.Судя по всему если постараться то форкается несколько процессов и в итоге разумеется кончается RAM.Жестко... :eek:
9) Мне совершенно не нравится флеш-файловая система в олеговской прошивке.Сделано неудобно и геморройно, I am sorry.В моем понимании нормально - это что-то типа jffs2 на всю незанятую область.Или например плотно сжатый squashfs-lzma с неубиваемой "базой" системы а остальное - опять же в jffs2.А то как сделано в "олеге" - очень неудобно мягко говоря.Мне категорически не нравится, sorry.
P.S. тем не менее, в целом фирмваре весьма приличное.Как минимум - гораздо лучше того что сделал сам Асус по состоянию с фабрики.Просто идеального софта не бывает ;)
то смирись с ядром 2.4 и помоги уважаемому lly протестировать его сборку.
Все бы ничего кроме одного момента: вон я там выше поворчал на недостатки асусовской (ну и олеговской, из-за дурного наследства) фирмваре которые анноят лично меня.И честно говоря мне на данный момент не очень понятно как прошивка от lly (при всем моем великом уважении к данному начинанию) облегчит конкретно мою участь.Там вроде никто ничего не собирается менять из того что анноит конкретно меня(я отдаю себе отчет что это дурное наследство Асуса и починить многое из этого не выйдет).
PS А я пока продолжаю думать. Я вообще wl500w буду покупать в качестве замены старому 200-му пеньку, о котором писал выше. Т.е. меня возможности WiFi интересуют в меньшей степени. Главная моя цель - абсолютно безшумный сервер для личной web-странички, но со всеми возможными сервисами (smtp, imap, web-mail, dns, dhcp и т.п. для пары домашних компов и пары КПКшек). И со старой доброй конфигурацией через ssh.
Как ни странно - это частично совпадает с моей целью.Разве что мне нафиг не впился вебмайл и почта вообще (кроме отсылки анонсов разве что) но зато мне полезны openvpn, ddns, 3proxy, вебсервер и еще некоторый набор сетевых сервисов.Если делать с нуля - можете глянуть на (оффтопичные) NASы.Там бывает и 533MHz XScale CPU и S-ATA нормальное и гигабитный интерфейс, и непозорная скорость работы с usb-дисками и оперативки 128-256 Мб - какой-нибудь qnap например такие штуки вообще сам позиционирует как мини-сервера.Как именно сервер намного мощнее асуса будет (правда и стоит соответственно и вообще, не роутер, но зато устройства с одним 3.5" HDD - в симпотном металлическом корпусе и потому обходятся без вентиляторов).Хотя может быть и асуса вам хватит - кто же вас знает?Еще кстати скоро будут вот такие вот (http://www.linuxdevices.com/news/NS3513779569.html) штуки, мне уже хочется купить пару таких только за их описание железа.Кстати кто-то говорил про что-то умощненное от Асуса.Оно еще не появилось?А то 500GP штука хорошая но в перспективе хочется что-то с более мощным железом, гигабитом и т.п. :D.
Я не спрашивал про конкретно OpenWRT.Я спрашивал почему упорно цепляются за (древнее и местами бестолковое) 2.4, которое лично мне ни разу не симпатично.Ну, вроде примерно причину узнал.Правда так и не понял почему нельзя обойтись без этих утилит.Они делают что-то такое что по другому никак и - без сорцев?
Да, без исходников. Хочешь разобраться - скачай GPL исходники и посмотри сам.
...Куча лирики и претензий поскипана...
Я и другие пытались тебе объяснить, что начинать проект, аналогичный OpenWRT, с нуля - бессмысленно и только!
И честно говоря мне на данный момент не очень понятно как прошивка от lly (при всем моем великом уважении к данному начинанию) облегчит конкретно мою участь.Там вроде никто ничего не собирается менять из того что анноит конкретно меня(я отдаю себе отчет что это дурное наследство Асуса и починить многое из этого не выйдет).
Твою, судя по высказанному, ничем. Залей OpenWRT, разберись, поучавствуй в проекте, и расскажи остальным как это здорово. Тогда будет предметный разговор, а не махание шашками.
angel_il
04-12-2008, 16:02
Смотреть то удобно но там без патчей а мне хотелось с текущими патчами. ну да ладно.
angel_il
04-12-2008, 18:07
lly, что то странное, у меня оно работает и на старом ядре, поковыряю еще, точно помню что мне шекспир пришлось именно из за этого патчить...
Что-то модема не видит. Сижу курю libusb и devpath
пардон, криво пропатчил. чё-то не задалось...
Это проблема общей производительности платформы. Новое ядро той-же ветки 2.4 никак не может её решить, разве что предоставить более свежие методы удавления приоритетов.
Я имел в виду это. Ведь уважаемый Олег говорил, что для процессора с частотой 300МГц это ненормальное поведение, платформа способна на большее, но реализация USB как раз душит всю задумку на корню, "убивая" производительность подключенного винчестера до 3-4 МБ/с и "сажая" проц до 60-80% занятости. Есть в этой прошивке новый подход к USB, или для ядра 2.4 его быть не может в принципе?
Вопрос ко всем: А с ядром 2.6 и OpenWRT нету опытных данных по скорости работы с подключенным винчестером?
Что-то модема не видит. Сижу курю libusb и devpath
пардон, криво пропатчил. чё-то не задалось...
Я выложил обновленные исходники только сейчас.
Не забудь сделать insmod usbserial.o и acm.o
lll123lll
07-12-2008, 09:40
попробовал прошивку - вроде все работает
только vlc стал сам переключатся на сл канал (откачусь будет ясно связно ли с прошивкой)
нельзя ли добавить модуль iptables ipt_ROUTE
чтобы можно было управлять маршрутизацией по типу
iptables -A POSTROUTING -t mangle -p tcp –-dport 110 -j ROUTE –oif vlan2
по прежнему не работает маркировка пакетов
iptables -t mangle -A PREROUTING -p tcp --dport 110 -j MARK --set-mark 3
ip rule add fwmark 3 table 3
ip route add default via 192.168.9.1 dev vlan2 table 3
маркировка вроде происходит ,а правило не работает...
CONFIG_IP_NF_MATCH_MARK включена?
цель простая - принимать почту через одного прова , а отправлять через другого
попробовал прошивку - вроде все работает
Ты версию именно -d5 пробовал?
только vlc стал сам переключатся на сл канал (откачусь будет ясно связно ли с прошивкой)
версия vlc? udpxy используешь?
нельзя ли добавить модуль iptables ipt_ROUTE
Посмотрел - а где ты нашел такой? Ни в ядре 2.4, ни в iptables 1.3.8 (а это максимум для ядра 2.4 без переделок) его нет! :eek:
по прежнему не работает маркировка пакетов
iptables -t mangle -A PREROUTING -p tcp --dport 110 -j MARK --set-mark 3
ip rule add fwmark 3 table 3
ip route add default via 192.168.9.1 dev vlan2 table 3
маркировка вроде происходит ,а правило не работает...
CONFIG_IP_NF_MATCH_MARK включена?
цель простая - принимать почту через одного прова , а отправлять через другого
Ты хочешь сказать что в прошивке Олега было так-же?
CONFIG_IP_NF_MATCH_CONNMARK=y
CONFIG_IP_NF_MATCH_MARK=y
возможно не хватает еще чего-то в netfilter/iptables, на досуге попробую посмотреть. Но увы, я не силен в iptables, поэтому если у тебя есть возможность понять на каком этапе происходит сбой - маркировки пакета или переключения роутинга, глянь сам, пожалуйста.
lll123lll
07-12-2008, 22:56
гугл много че показывает насчет ipt_route но вне моего понимания
как посмотреть с какими параметрами запускается iptables я не знаю
вот мой скрипт /usr/local/bin/iptables-restart для ручного перезапуска iptables:
#! /bin/sh
set -x
. /usr/local/sbin/.vars
logger -t iptables-restart Restarting firewall.
iptables -F
iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -F -t mangle
iptables -F -t nat
iptables -X
iptables -Z
WANIF=ppp0
LANIF=br0
MANIF=vlan1
WANIP=`ifconfig "${WANIF}" | awk -F ":" '/inet addr/{print $2}' | awk '{print $1}'`
LANIP=`ifconfig "${LANIF}" | awk -F ":" '/inet addr/{print $2}' | awk '{print $1}'`
MANIP=`ifconfig "${MANIF}" | awk -F ":" '/inet addr/{print $2}' | awk '{print $1}'`
cat /tmp/filter_rules | iptables-restore
cat /tmp/nat_rules | iptables-restore
/usr/local/sbin/post-firewall ${WANIF} ${WANIP} ${LANIF} ${LANIP} ${MANIF} ${MANIP}
надеюсь из него понятно как оно стартует.
.vars содержит PATH, HOME и TZ
lll123lll
08-12-2008, 09:34
telnet есть
iptables-save нет
повторюсь - мне нужно разруливать трафик по провайдерам в зависимости от номера порта
в частном случае принимать почту (110) через безлимитный,но с вялым upload т.к. adsl, стрим , а отправлять (25) через корбину
telnet есть
iptables-save нет
плохо. Если есть возможность запускать сторонние бинарники - можно попробовать взять iptables-save из прошивки Олега или моей.
повторюсь - мне нужно разруливать трафик по провайдерам в зависимости от номера порта
в частном случае принимать почту (110) через безлимитный,но с вялым upload т.к. adsl, стрим , а отправлять (25) через корбину
Ну так и я вынужден повториться - если ты думаешь, что кто-то кинется оперативно решать твою задачу с нуля, то ты ошибаешься!
У меня тоже времени не вагон, чтобы экспериментировать. Раз ошибка переехала из прошивки Олега, значит скорее всего, дело не в ядре, а в настройках iptables, или в пакете iproute2
Выложил новые исходники. Добавил последний патч из cdma 1.71 - /proc/bus/usb/devpath. Обломался с переездом на GCC 4.1.2 - ядро не собирается корректно :(
Вопрос к artp - вышло что-нибудь из твоей затеи с интеграцией cdma?
P.S. engy так пока и не ответил :(
theMIROn
15-12-2008, 15:05
можно ли в каком то виде применить рецепт из темы Want to instantly get a 15% performance boost? (http://wl500g.info/showthread.php?t=8573) для уменьшения прожорливости ksoftirqd_CPU0 в l2tp режиме?
echo "interrupt=no" > /proc/miscio/power_enable_configне работает с 1.9.2.7-10, нет такого интерфейса
можно ли в каком то виде применить рецепт из темы Want to instantly get a 15% performance boost? (http://wl500g.info/showthread.php?t=8573) для уменьшения прожорливости ksoftirqd_CPU0 в l2tp режиме?
echo "interrupt=no" > /proc/miscio/power_enable_configне работает с 1.9.2.7-10, нет такого интерфейса
Я думаю, к серии WL500 этот рецепт не относится, почитай сам ветку:
Это про Wl700gE
Речь про устаревшую родную ASUS 1.0.4.6 прошивку
В свежем документе http://wl700g.homelinux.net/drupal/node/134 ничего подобного нет
Dunno. The thing to look for is whether or not the /proc/miscio/power_enable is configured as an output with interrupts enabled and your average inactive cpu load is 1.00. If so, then the countermeasure will probably help.
Я на своём роутере подобного не наблюдаю.
Поставил 1.9.2.7-d5 на WL-500W
Пока работает все как раньше, проблем не заметил.
lll123lll
20-12-2008, 00:42
Чтобы иметь возможность маркировать пакеты, вы должны собрать ядро с рядом включенных опций: (http://gazette.linux.ru.net/rus/articles/lartc/c1430.html)
IP: advanced router (CONFIG_IP_ADVANCED_ROUTER) [Y/n/?]
IP: policy routing (CONFIG_IP_MULTIPLE_TABLES) [Y/n/?]
IP: use netfilter MARK value as routing key (CONFIG_IP_ROUTE_FWMARK)
собственно вопрос - включены ли эти опции?
Чтобы иметь возможность маркировать пакеты, вы должны собрать ядро с рядом включенных опций:
IP: advanced router (CONFIG_IP_ADVANCED_ROUTER) [Y/n/?]
IP: policy routing (CONFIG_IP_MULTIPLE_TABLES) [Y/n/?]
IP: use netfilter MARK value as routing key (CONFIG_IP_ROUTE_FWMARK)
собственно вопрос - включены ли эти опции?
Собственно ответ - а посмотреть самому в исходниках прошивки в kernel.config слабо? :mad:
P.S. Тем, кому надо всё подавать на блюдечке с голубой каёмочкой, лучше не участвовать в данной теме.
Обновил тулчейн и исходники. Так как изменения могут быть пока интересны только разработчикам, поэтому бинарники прошивки не выкладываю.
В тулчейне теперь основной GCC 4.1.2, а gcc3 сохранён временно, только для ядра.
theMIROn
23-12-2008, 14:16
Ок, патч с редиректом включать не нужно
На днях сделаю возможность использования конфигурационного файла для сервисов ez-ipupdate, при необходимости, так будет проще и понятнее
Возможность есть, но из rc вызыватеся напрямую с жесткими параметрами
Ок, патч с редиректом включать не нужно
Насколько я могу понять - всё равно пригодится, а места занимает мало... так что пускай остаётся.
На днях сделаю возможность использования конфигурационного файла для сервисов ez-ipupdate, при необходимости, так будет проще и понятнее
Возможность есть, но из rc вызыватеся напрямую с жесткими параметрами
Ну так давай поправим и rc тоже. Код там убогий, но разобраться можно ;)
Добавлено:
Забыл, web-морду тоже придётся править :(
Обновленный комплект выложил, бинарники тоже.
.
Отчитываюсь о тестировании версии D6 на роутере Dlink DIR-320:
Работают, проверял: DDNS, USB, Samba, PPPoE, DHCP, Wlan.
Проблемы:
1. Не работает обновление времени с NTP.
2. После прошивки порт WAN ассоциируется с VLAN2 а не с VLAN1 (до прошивки Олега на роутере Dlink DIR-320 стояла прошивка DD-WRT).
Это я поспешил 23-го выложить нерабочий новый ntpclient :( Вчера в ночь выложил исправление.
Не собирается ntp с ошибкой:
tar -xjf ntpclient-2007_365.tar.bz2 -C /opt/broadcom/src/gateway
[ ! -f ntpclient-2007_365.patch ] || /opt/broadcom/src/wl500g-1.9.2.7-d/patch.sh /opt/broadcom/src/gateway/ntpclient-2007_365 ntpclient-2007_365.patch
Looking for last applied patch
Patching /opt/broadcom/src/gateway/ntpclient-2007_365 with ntpclient-2007_365.patch
ntpclient-2007_365.patch
patching file Makefile
patching file Makefile
Hunk #1 FAILED at 10.
1 out of 1 hunk FAILED -- saving rejects to file Makefile.rej
patching file ntpclient.c
make: *** [/opt/broadcom/src/gateway/ntpclient] Ошибка 1
По DIR-320:
nvram get boardtype
0x048e
nvram get wan_ifname
vlan2
nvram get wan_ifnames
vlan2
Не собирается ntp с ошибкой
Всё спешка и недосыпание :( - глянь ntpclient-2007_365.patch , там задвоенный патч для Makefile, один удали.
Насчёт параметров ядра - проверь, пожалуйста, достаточно ли:
CONFIG_MTD_CFI_B4=y
? или
CONFIG_MTD_CFI_B1=y
нужен тоже ?
насчет 64-x битной шины(CONFIG_MTD_CFI_B8) и интерлива 2-x и более flash чипов верю слабо (CONFIG_MTD_CFI_I2, CONFIG_MTD_CFI_I4, ...). Проверь также без них.
По wan'ам - проставь вручную vlan1, должно подействовать.
Вдогонку - а что возвращает
nvram get boardnum
Вдогонку - а что возвращает
nvram get boardnum
Возвращает пустоту.:(
offtop
ребят, а можите в эту бету прошивку влючить поддержку UFS и UFS2 ? буду очень признателен. остался винт с файловой помойкой на 750 гигов от роутера под бсд, софт читать и переливать в ext2 нету возможности :-( поэтому хочется поддержка этой файловой системы на асусе премиуме первой ревизии.
ребят, а можите в эту бету прошивку влючить поддержку UFS и UFS2 ?
Достаточно скомпилить модуль ядра UFS. Это будет работать и в оригинальной прошивке, НО! Даже в 2.4.37 эта система по-умолчанию read-only, а возможность записи на UFS помечена как опасная (DANGEROUS). А надо оно тебе в таком варианте?
Для запуска прошивки на Dlink DIR-320 достаточно добавить лишь одну опцию ядра:
CONFIG_MTD_CFI_B1=y
сделал у себя
lly: Да, нужно хотя бы чтение.
http://rapidshare.de/files/41208198/WL500gp-1.9.2.7-d.trx.html пробуй
Спасибо, попробую и потом отпишусь!
В предыдущем посте речь шла о дебиане-4.0-32бит/gcc-4.3. Третью цифру сейчас не знаю.
Насчет lzma --- именно --- проверяется только наличие каталога src/lzma, но если он есть, но оказывается пустым, то ничего не предпринимается.
и еще вопрос --- src/linux/linux/include/linux/autoconf.h в моем понимании должен генериться, вот только кем? Пытаюсь повторить то же самое дома на дебиане-4-64бит/gcc-4.1 и останавливаюсь на собирании iproute2 с предложением сначала скомпилить кернел по причине отсутствия упомянутого файла.
Насчет lzma --- именно --- проверяется только наличие каталога src/lzma, но если он есть, но оказывается пустым, то ничего не предпринимается.
Понял, подумаю как можно поправить.
и еще вопрос --- src/linux/linux/include/linux/autoconf.h в моем понимании должен генериться, вот только кем?
make oldconfig для ядра (ну и прочие menuconfig и т.п.)
theMIROn
30-12-2008, 20:14
lly, налетел сегодня на ситуацию, когда при рестарте роутера обновление ddns не сработало по недоступности ddns сервера. В итоге ip был потерян.
В GPL_WL500gP_1977 в вачдог встроен периодический перезапуск ddns клиента, как раз для таких случаев.
rc_ddns_watchdog1.patch - порт с 1977 прошивки, 1в1
rc_ddns_watchdog2.patch - небольшая правка, флаг ddns_update устанавливается в 0 при запуске проверки, и в 1 только при успешном обновлении
накладывается после rc.diff
p.s во мне полбутыли коньяка (хаппи нью йир!!!), глянь что будет лучше, возможны опечатки
В GPL_WL500gP_1977 в вачдог встроен периодический перезапуск ddns клиента, как раз для таких случаев.
Применил второй вариант. Ну а тестировать-то фичу всё равно тебе придётся :cool:
Выложил новогодний комплект, но уже тестировать времени нет - мой роутер бутится и инет поднимает, а дальше ...
Всех с новым годом, в праздники могу и не появиться на форуме :D
theMIROn
02-01-2009, 14:07
с новым годом,
предлагаю проект перенести на http://wl500g.googlecode.com (http://code.google.com/p/wl500g/)
импорт сорцов прошивки от 31.12.2008 сделал, бинарники выложил
lly, заводи гуглакаунт, впишу в овнеры
p.s с вачдогом не все здорово получилось... при ошибках от ez-ipupdate из-под watchdog зобми процессы остаются
вот это теоритически должно помочь + изменения логики статуса ddns_updated
pps. код из вачдога убрал, потому что если делать как нтп, то в памяти дднс будет ситеть 2 метра, если демоном ез-айпиапдейт запускать, то всего 1, поэтому нафиг нафиг
theMIROn
06-01-2009, 18:42
выложил прошивки для wl-500gPv2, wl-500gU, wl-500W, wl-500gP
у самого wl-500gP поднимается, запускается, работает
angel_il
06-01-2009, 19:05
ок, это последняя тестовая прошивка там?
theMIROn
06-01-2009, 19:14
ок, это последняя тестовая прошивка там?
то что с 1-й страницы от 31.12.2008 + несколько изменений в rc связанных с ddns
то что с 1-й страницы от 31.12.2008 + несколько изменений в rc связанных с ddns
А можно поинтересоваться, где почитать об изменениях в прошивке wl500gpv2-1.9.2.7-d6-2009.01.06.trx , относительно прошивки от Олега версии 1.9.2.7-10?
theMIROn
06-01-2009, 21:10
на первой странице http://wl500g.info/showthread.php?t=17136 есть ченджлог (http://wl500g.info/attachment.php?attachmentid=4026&d=1230738032) от lly
на wl500g.googlecode.com (http://wl500g.googlecode.com/) есть Source/Changes (http://code.google.com/p/wl500g/source/list)
Infector
09-01-2009, 19:57
накотил WL500gp-1.9.2.7-d6-2008.12.31.trx , всё великолепно работает, огромный респект. от Олега версии 1.9.2.7-10 стала сильно глючить, все процессы на роутере уходили в слип врезультате чего скорость падала до 20к .
angel_il
10-01-2009, 20:33
ну ладно, пожелайте удачи :)
Скажите, а если накатить вашу прошивку нужно переустанавливать или настраивать все с начала?
angel_il
10-01-2009, 20:53
ну в общем у меня теперь есть только телнет :(
остальное придется руками поднимать, из бакапа flashfs не хочет восстанавливаться, ну да ладно...
ну ладно, пожелайте удачи :)
Легко...!, желаю a lot of luck!!! Однако, боюсь разочаровать --- оно, однако, вполне успешно работает уже изрядно времени [в моем случае месяца полтора]. :)
Скажите, а если накатить вашу прошивку нужно переустанавливать или настраивать все с начала?
нет, не нужно.
остальное придется руками поднимать, из бакапа flashfs не хочет восстанавливаться, ну да ладно...
а може flashfs enable не хватает?
angel_il
10-01-2009, 21:17
а може flashfs enable не хватает?
ага, возможно, я пошаманил в том числе и flashfs enable, потом поставил дропбира, потом пароль сменил а потом оно захотело восстановиться из флэша, ток что скорее всего "flashfs enable" помог, я не уловил этого момента. Так что сейчас у меня полностью моя систему с прошивкой 1.9.2.7-d
angel_il
10-01-2009, 21:32
а вот пожалуй и моя ложка дегтя
# ipkg upgrade
Segmentation fault
ложка, ложкой --- а однако продолжай искать у себя, ибо энто дело отрабатывает без проблем
angel_il
10-01-2009, 21:46
полечил...
из плюсов у меня вон чего в minicom появилось :)
AT S7=45 S0=0 L1 V1 X4 &c1 E1 Q0
OK
atz
OK
что не может не радовать... :)
theMIROn
10-01-2009, 22:46
что у тебя с ipkg случилось и как лечил? у себя не наблюдал такого ни разу, после перепрошивки вместо flashfs enable тупо flashfs.tar.gz заливал обратно
что у тебя с ipkg случилось и как лечил? у себя не наблюдал такого ни разу, после перепрошивки вместо flashfs enable тупо flashfs.tar.gz заливал обратно
Работает так
ipkg.sh update
ipkg.sh install ipkg-opt
А тот бинарный ipkg который ставится скриптом с сайта Олега скомпилирован под старое ядро и uClibc поэтому Segmentation fault для него и для пакетов под него неизбежен.
angel_il
11-01-2009, 06:46
Работает так
ipkg.sh update
ipkg.sh install ipkg-opt
да именно так и залечил.
angel_il
11-01-2009, 11:29
да фиговый из меня бетта тестер :) у меня к сожалению все работает как надо, так что никаких багрепортов наверное от меня не будет :)
theMIROn
11-01-2009, 11:40
Аналогично =)
Проверить бы l2tp и pppoe, лично сам не могу, только pptp есть
angel_il
11-01-2009, 11:51
а у меня и pptp нет...
да фиговый из меня бетта тестер :) у меня к сожалению все работает как надо, так что никаких багрепортов наверное от меня не будет :)
у меня та же проблема :)
Mashiro-sama
11-01-2009, 14:04
ipkg.sh install ipkg-opt
Почему-то на эту команду выдает ошибки: (ipkg.sh update перед этим сделал)
[mashiro@starnet-router tmp]$ ipkg.sh install ipkg-opt
Downloading http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable/ipkg-opt_0.99.163-10_mipsel.ipk ...
--2009-01-11 16:58:33-- http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable/ipkg-opt_0.99.163-10_mipsel.ipk
Resolving ipkg.nslu2-linux.org... 140.211.169.169
Connecting to ipkg.nslu2-linux.org|140.211.169.169|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://ipkg.nslu2-linux.org/feeds-redirect.php?f=optware/oleg/cross/stable/ipkg-opt_0.99.163-10_mipsel.ipk [following]
--2009-01-11 16:58:33-- http://ipkg.nslu2-linux.org/feeds-redirect.php?f=optware/oleg/cross/stable/ipkg-opt_0.99.163-10_mipsel.ipk
Reusing existing connection to ipkg.nslu2-linux.org:80.
HTTP request sent, awaiting response... 302 Found
Location: http://nslu2-linux.dyoung-mirror.net/feeds/optware/oleg/cross/stable/ipkg-opt_0.99.163-10_mipsel.ipk [following]
--2009-01-11 16:58:34-- http://nslu2-linux.dyoung-mirror.net/feeds/optware/oleg/cross/stable/ipkg-opt_0.99.163-10_mipsel.ipk
Resolving nslu2-linux.dyoung-mirror.net... 208.113.203.106
Connecting to nslu2-linux.dyoung-mirror.net|208.113.203.106|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 75796 (74K) [application/vnd.shana.informed.package]
Saving to: `//opt/tmp/ipkg/ipkg-opt_0.99.163-10_mipsel.ipk'
100%[======================================>] 75,796 7.67K/s in 13s
2009-01-11 16:58:47 (5.71 KB/s) - `//opt/tmp/ipkg/ipkg-opt_0.99.163-10_mipsel.ipk' saved [75796/75796]
Done.
Unpacking ipkg-opt...Done.
Configuring ipkg-opt....: Cannot utime: Read-only file system
.: Cannot change ownership to uid 0, gid 0: Read-only file system
.: Cannot change mode to rwxr-xr-x: Read-only file system
Exiting with failure status due to previous errors
Done.
DemonGloom
11-01-2009, 15:35
Напишите что выдают команды mount и df
Почему-то на эту команду выдает ошибки: (ipkg.sh update перед этим сделал)
[mashiro@starnet-router tmp]$ ipkg.sh install ipkg-opt
Он и должен выдавать ошибки ибо вы не подмонтировали каталог /opt для устанавливаемых программ.
Например при установке во встроенную память перед установкой установщика и самих программ даем команды:
mkdir /tmp/local/opt
mount /tmp/local/opt /opt
Mashiro-sama
11-01-2009, 16:58
Он и должен выдавать ошибки ибо вы не подмонтировали каталог /opt для устанавливаемых программ.
Обижаете, все подмонтировано:
[mashiro@starnet-router root]$ mount
/dev/root on / type squashfs (ro)
none on /dev type devfs (rw)
proc on /proc type proc (rw)
ramfs on /tmp type ramfs (rw)
usbfs on /proc/bus/usb type usbfs (rw)
/dev/discs/disc0/part1 on /tmp/mnt/disc0_1 type ext3 (rw,noatime)
/dev/discs/disc0/part1 on /opt type ext3 (rw,noatime)
[mashiro@starnet-router root]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
rootfs 3008 3008 0 100% /
/dev/root 3008 3008 0 100% /
/dev/discs/disc0/part1
77013760 35429460 37703000 49% /tmp/mnt/disc0_1
/dev/discs/disc0/part1
77013760 35429460 37703000 49% /opt
theMIROn
11-01-2009, 17:01
Странно, в 10й прошивке с использованием l2tp, как я понимаю оно было в ядре. поэтому в top ресурсы процессора сжирал как бы ksoftirqd_CPU0
С d6 (с патчами из openwrt) - top показывает именно процесс l2tp, но скорость визуально стала ниже в 2,5 раза.
Мне кажется?
UPD: Мне кажется... Все те же 16 мегабит при 99% загрузке процессора
Присоединяюсь к тестированию. :)
У меня dhcp в локальной сети, pppoe соединение к интернету.
После установки пришлось все настраивать заново :(.
Интернет есть, локальная сеть есть. Сейчас в рабочем состоянии ftp, transmission, wget, axel.
aria2c не работает :( как и раньше.
2009-01-12 20:40:00.131589 ERROR - Exception caught
Exception: epoll_init() failed.
aria2c не работает :( как и раньше.
2009-01-12 20:40:00.131589 ERROR - Exception caught
Exception: epoll_init() failed.
А компилировал сам новым тулчейном? Из готового пакета скорее всего не будет работать, т.к. для ветки 2.4 номера syscall'ов для epoll не стандартизированы, да и backport патча epoll сделан автором давно...
Нет, не компилировал.
Если не трудно, можете рассказать как это сделать?
Большое спасибо за ответ!
У меня сусе, попробую справиться. Если что помогите уж, надоедать особо не буду.
Исходники aria2, очень похоже, оттуда.
Если что помогите уж, надоедать особо не буду.
Ну рецепт, как всегда, прост:
1) доки
2) google
3) если и это не помогло - спрашивай, постараемся помочь.
P.S. Если проблема специфична только для aria2 - наверное лучше в другой ветке или личкой
кстати, при попытке компиляции некоторых программ (простейший пример: http://ftp.gnu.org/pub/gnu/findutils/findutils-4.1.20.tar.gz ) вылезает следующая ошибка (причем претензии имеются настойчиво именно к этой __memcpy):
mipsel-linux-gcc -g -O2 -o find find.o fstype.o parser.o pred.o tree.o util.o version.o ../lib/libfind.a ../gnulib/lib/libgnulib.a ../intl/libintl.a
../gnulib/lib/libgnulib.a(regex.o): In function `regerror':
/home/al/broadcom/packages-lly/findutils-4.1.20/gnulib/lib/regex.c:8312: undefined reference to `__mempcpy'
Вызывается ошибка следующим куском кода (взято из regex.c):
#if defined HAVE_MEMPCPY || defined _LIBC
*((char *) __mempcpy (errbuf, msg, errbuf_size - 1)) = '\0';
#else
memcpy (errbuf, msg, errbuf_size - 1);
errbuf[errbuf_size - 1] = 0;
#endif
Проблема лечится если принудительно пустить компиляцию по второму пути. Однако, в тулчейне Олега эта ошибка не вылезает. Причем в обоих случаях HAVE_MEMCPY=1 , а _LIBC undefined. Т.е. по каким то причинам у Олега __memcpy существует, а у нас нет. Похоже на какие то "улучшения" в новой версии uclibc. Может это можно как то пофиксить на уровне тулчейна?
кстати, при попытке компиляции некоторых программ (простейший пример: http://ftp.gnu.org/pub/gnu/findutils/findutils-4.1.20.tar.gz ) вылезает следующая ошибка (причем претензии имеются настойчиво именно к этой __memcpy)
...
Может это можно как то пофиксить на уровне тулчейна?
Это принципиальное решение разработчиков uClibc еще в 2005 году. Объяснения причины не нашёл :( Написано "нефига юзать __mempcpy в user-space".
Т.о. надо делать хак uClibc. Сделаю, но не сегодня.
Пытаюсь скомпилировать прошивку, взял новый тулчейн с первой страницы, скачал с kernel.org исходники ядра 2.4.37, почистил папку /opt/broadcom/src/linux/linux и закинул в нее эти самые исходники.
#cd /opt/broadcom/src/wl500g-1.9.2.7-d && make kernel && make
проходит успешно, а вот
#cd /opt/broadcom/src/gateway && make && make images
в какой то момент вылетает с ошибкой:
make -C iproute2 KERNEL_INCLUDE=/opt/broadcom/src/linux/linux/include EXTRACFLAGS="-mips32 -mtune=mips32 -Wno-pointer-sign -DBCMWPA2 "
make[1]: Entering directory `/opt/broadcom/src/gateway/iproute2'
Please, Compile the kernel first
make[1]: *** [check-kernel] Error 1
make[1]: Leaving directory `/opt/broadcom/src/gateway/iproute2'
make: *** [iproute2] Ошибка 2
Помогите разобраться с ошибкой.
ps модули ядра приложенные в первом сообщении никуда не распаковывал?
pps Пытаюсь разобраться с прошивкой для того, чтобы собрать прошивку которая влезет в 2мб флеш на моем 520GC с распаяным USB, а дальше будет грузиться с usb флешки.
Буду признателен за помощь!
theMIROn
13-01-2009, 11:26
а GPL_1927.zip с сайта асуса распаковывал? оригинальную прошивку
http://wl500g.info/showpost.php?p=82872&postcount=145
#cd /opt/broadcom/src/gateway && make && make images
в какой то момент вылетает с ошибкой
Не надо спешить, убедись сперва, что просто make отрабатывает успешно. А затем make install
P.S. зависимости в оригинальном ASUS'овском Makefile прописаны кривовато, на тотальную зачистку просто не хватает сил.
Не надо спешить, убедись сперва, что просто make отрабатывает успешно. А затем make install
P.S. зависимости в оригинальном ASUS'овском Makefile прописаны кривовато, на тотальную зачистку просто не хватает сил.
вылетает именно на make :(
PS А не подскажете, в каком направлении копать для того чтобы сделать конфиг для 2mb прошивки (убрать пакеты samba, dropbear и т.п.), я так подозреваю прийдется править Makefile? Я сейчас пока тренируюсь на 1.9.2.7-10
вылетает именно на make :(
Похоже, всё-таки не отработал make kernel. Проверяй, у меня, и у других, собирается.
PS А не подскажете, в каком направлении копать для того чтобы сделать конфиг для 2mb прошивки (убрать пакеты samba, dropbear и т.п.), я так подозреваю прийдется править Makefile? Я сейчас пока тренируюсь на 1.9.2.7-10
Именно - убирать пакеты из Makefile. Какие - решать тебе.
make[1]: Entering directory `/opt/broadcom/src/gateway/iproute2'
Please, Compile the kernel first
Именно эта ошибка была у меня. http://www.wl500g.info/showpost.php?p=125469&postcount=164 После ряда перекомпиляций ушла сама.
Рекомендую вместо && выполнять комманды по очереди (по крайней мере пока стабильно не заработает). Не исключено, что на выход выдается неверный код окончания и следующая комманда может выполняться без корректного завершения предыдущей.
И, наконец, вместо make images лучше поправить в gateway/Makefile MODEL на желаемую и делать make install.
Спасибо, буду пытаться последовательно еще раз откомпилить с нуля.
Кстати удалось мне в 1.9.2.7-10 поредактировав src/gateway/Makefile до того как выполняю make images-520gu , урезать размер прошивки до 1.839,104 байт, но похоже этого недостаточно, т.к. 520GC с этой прошивкой не грузится... буду дальше ковыряться...
В идеале хотелось бы получить универсальный загрузчик чтобы грузить на любом совместимом устройстве с внешнего диска любую прошивку :)
lly, посмотрите, плз, тему http://wl500g.info/showthread.php?p=127510#post127510
Что ему не хватает?
al37919
Тулчейн подправил, должно собираться.
lightix
в качестве workaround'а достаточно сделать make koldconf из каталога gateway
qqq1971
Ответил. Бага в aria2.
Всем
Я в процессе переезда на http://wl500g.googlecode.com/ - часть линков могут быть дохлыми.
P.S. А эти ленивцы так и не сделали сохранение timestamp'а при "svn import" :confused:
angel_il
14-01-2009, 18:44
У меня просьба включить в прошивку страничку для запуска busybox_httpd. Я ее подготовлю если будет возможность ее подключить.
angel_il
14-01-2009, 19:57
блин, а как же его запустить то...
страничку нарисовал, параметры сделал. А как сделать запуск busybox_httpd в зависимости от того что что установлен параметр bb_http_enable_x=1 может это можно как то сделать по аналогии с ftp встроенным?
Можно рассчитывать на добавление такой фичи в прошивку?
блин, а как же его запустить то...
страничку нарисовал, параметры сделал. А как сделать запуск busybox_httpd в зависимости от того что что установлен параметр bb_http_enable_x=1 может это можно как то сделать по аналогии с ftp встроенным?
Можно рассчитывать на добавление такой фичи в прошивку?
Если вписываться в стандартную схему ASUS, то надо добавлять код в rc. Добавить-то в todo могу, но быстрее будет, если ты или кто-нибудь сделает патч сам.
angel_il
15-01-2009, 08:47
Если вписываться в стандартную схему ASUS, то надо добавлять код в rc. Добавить-то в todo могу, но быстрее будет, если ты или кто-нибудь сделает патч сам.
ок с меня патч... жаль придется ковыряться :)
[root@WL500gP /]$ insmod /opt/lib/modules/2.4.37/kernel/net/bluetooth/bnep/bnep.o
insmod: unresolved symbol crc32_be
В ядре нет поддержки CRC32?
Можно ли это как-нибудь исправить, пока не выйдет очередная версия прошивки?
В ядре нет поддержки CRC32?
Можно ли это как-нибудь исправить, пока не выйдет очередная версия прошивки?
Видимо надо писать FAQ!
для экономии места - вынесено в модуль crc32.o
возьми его из архива и сделай insmod
angel_il
15-01-2009, 19:18
что то я не нашел с наскоку кода rc... можно звонок другу использовать? :)
там одни патчи кругом, куда смотреть то?...
angel_il
15-01-2009, 19:21
насколько я понял мне нужен rc-common, его надо с асуса сливать?
Слил я из репозитория исходные тексты, обзавелся всем необходимым и пытаюсь собрать прошивку по иструкции...
make kernel
make
и...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether mipsel-uclibc-gcc accepts -g... yes
checking for mipsel-uclibc-gcc option to accept ISO C89... unsupported
checking whether make sets $(MAKE)... yes
configure: No $CFLAGS set... using "-Os -W -Wall" for GCC
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... unknown
checking for _LARGE_FILES value needed for large files... unknown
checking build system type... i686-pc-linux-gnulibc1
checking host system type... mipsel-unknown-linux-gnu
checking for mipsel-linux-ar... mipsel-linux-ar
checking for mipsel-linux-ranlib... mipsel-linux-ranlib
checking for mipsel-linux-strip... mipsel-linux-strip
checking for mipsel-linux-install... no
checking for install... install
configure: WARNING: In the future, Autoconf will not detect cross-tools
whose name does not start with the host triplet. If you think this
configuration is useful to you, please write to autoconf@gnu.org.
checking how to run the C preprocessor... /lib/cpp
configure: error: C preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details.
make: *** [/opt/broadcom/src/gateway/dropbear/config.h] Ошибка 1
ни как не пойму: в чем ошибка?
4124
checking how to run the C preprocessor... /lib/cpp
configure: error: C preprocessor "/lib/cpp" fails sanity check
Фигня в выделенном.
Updated: Судя по логу у тебя gcc не может найти limits.h и assert.h и т.д.
Или не полностью развернул тулчейн, или проблема с правами и путями. Ищи.
angel_il
Да, src/router/rc
А rc-common.patch это, в основном исправления Олега, и немного моих.
Фигня в выделенном.
Updated: Судя по логу у тебя gcc не может найти limits.h и assert.h и т.д.
Или не полностью развернул тулчейн, или проблема с правами и путями. Ищи.
Скачал обновлённцый тулчейн (который -1 на конце) и всё стало собираться...
Скачал обновлённцый тулчейн (который -1 на конце) и всё стало собираться...
Они должны были различаться только библиотеками. Ну только если в предыдущий раз как-то криво залилось на Google :confused:
angel_il
17-01-2009, 18:41
и еще... спасибо за http://code.google.com/p/wl500g/wiki/CompilingCustomFirmware хотел для себя написать тоже самое (ну как написать... украсть с вики Олега и перевести на русский) чтоб не вспоминать чего и куда.
angel_il
18-01-2009, 00:00
по мотивам инструкций был написан скрипт
#!/bin/sh
inst=`pwd -P`
mkdir $inst/broadcom/src/linux -p
mkdir /opt/brcm -p
tar -C $inst -zxvf GPL_WL500GP_1.9.7.7.tar.gz
tar -C $inst/broadcom/src -jxvf wl500g-1.9.2.7-d.tar.bz2
tar -C /opt/brcm -jxvf hndtools-mipsel-uclibc-4.1.2-1.tar.bz2
ln -sf /opt/brcm/hndtools-mipsel-uclibc-4.1.2 /opt/brcm/hndtools-mipsel-uclibc
rm -rf $inst/broadcom/src/linux/linux
tar -C $inst/broadcom/src/linux -jxvf linux-2.4.37.tar.bz2
ln -sf linux-2.4.37 $inst/broadcom/src/linux/linux
после выполнения появилось 2 каталога
WL500gp и broadcom, каталог с патчами тут broadcom/src/wl500g-1.9.2.7-d что противоречит Makefile который лежит в wl500g-1.9.2.7-d, если ему верить каталог wl500g-1.9.2.7-d должен находиться в WL500gp/src
В инструкции видимо некоторая неточность с путями.
после перекладывания в нужное место получил
make kernel
unzip -q lzma406.zip -d /home/wl500g/WL500gp/src/lzma
/home/wl500g/WL500gp/src/wl500g-1.9.2.7-d/patch.sh /home/wl500g/WL500gp/src/lzma lzma406.patch
Looking for last applied patch
Patching /home/wl500g/WL500gp/src/lzma with lzma406.patch
lzma406.patch
patching file SRC/7zip/Compress/LZMA/LZMADecoder.cpp
patching file SRC/7zip/Compress/LZMA/LZMADecoder.h
patching file SRC/7zip/Compress/LZMA_Lib/makefile
patching file SRC/7zip/Compress/LZMA_Lib/ZLib.cpp
[ -d /home/wl500g/WL500gp/src/et-4.108.9.orig ] || mv /home/wl500g/WL500gp/src/e t /home/wl500g/WL500gp/src/et-4.108.9.orig
tar -C /home/wl500g/WL500gp/src -xzf et-4.108.9.tar.gz
/home/wl500g/WL500gp/src/wl500g-1.9.2.7-d/patch.sh /home/wl500g/WL500gp/src/et e t-4.108.9.patch
Looking for last applied patch
Patching /home/wl500g/WL500gp/src/et with et-4.108.9.patch
et-4.108.9.patch
patching file sys/etc47xx.c
Hunk #2 succeeded at 196 (offset 10 lines).
Hunk #3 succeeded at 595 (offset 5 lines).
Hunk #4 succeeded at 621 (offset 10 lines).
Hunk #5 succeeded at 729 (offset 5 lines).
Hunk #6 succeeded at 807 (offset 10 lines).
Hunk #7 succeeded at 1078 (offset 5 lines).
Hunk #8 succeeded at 1134 (offset 10 lines).
patching file sys/etc.c
Hunk #1 succeeded at 320 (offset 72 lines).
Hunk #3 succeeded at 373 (offset 72 lines).
patching file sys/et_dbg.h
patching file sys/et_linux.c
Hunk #2 succeeded at 695 (offset 1 line).
Hunk #4 succeeded at 1024 (offset 1 line).
[ -d /home/wl500g/WL500gp/src/wl-4.150.10.29.orig ] || mv /home/wl500g/WL500gp/s rc/wl /home/wl500g/WL500gp/src/wl-4.150.10.29.orig
tar -C /home/wl500g/WL500gp/src -xjf wl-4.150.10.29.tar.bz2
Looking for last applied patch
Patching /home/wl500g/WL500gp/src with brcm-src-shared.patch brcm-src-include.pa tch brcm-src-5365.patch brcm-src-5365-robo.patch brcm-src-5354.patch brcm-src-ro bo-tag.patch
brcm-src-shared.patch
Can not apply brcm-src-shared.patch cleanly
make: *** [brcm-shared] Ошибка 1
что не так?
tar -C $inst -zxvf GPL_WL500GP_1.9.7.7.tar.gz
Прародительницей всех наших прошивок является GPL_1927.zip. На 1.9.7.7 накладывать патчи Олега и lly бесполезно. Кстати, см. инструкцию:)
angel_il
18-01-2009, 08:23
Прародительницей всех наших прошивок является GPL_1927.zip. На 1.9.7.7 накладывать патчи Олега и lly бесполезно. Кстати, см. инструкцию:)
хм а где ее взять то? :)
здесь ее нет http://www.asus.com.cn/pub/ASUS/wireless/WL-500g-03/GPL_1927.zip
здесь:
http://wiki.wl500g.info/index.php/compilingcustomfirmware
вторяа ссылка рабочая
angel_il
18-01-2009, 08:43
здесь:
http://wiki.wl500g.info/index.php/compilingcustomfirmware
вторяа ссылка рабочая
ага со второй качаю, а если и ее убьют асусы...
lly, может ее на странице google code вместе с патчем?
ага со второй качаю, а если и ее убьют асусы...
lly, может ее на странице google code вместе с патчем?
Вторую ссылку добавил в локальное wiki.
Пока у Google ограничение на размер хранимых файлов в 40Mb, исходник от ASUS не вписывается никак. Если убъют все ссылки - значит сделаю полную перепаковку (выкину бинарники, тулчейн, ядро 2.4.20) и выложу.
а была ли это хорошая идея засунуть wiki в svn?
а была ли это хорошая идея засунуть wiki в svn?
Это так реализовано в Google. Мне не очень нравиться, но так как это лежит отдельной веткой svn/wiki а код лежит svn/trunk и svn/branches, то особо не напрягает.
theMIROn
18-01-2009, 14:58
так же реализовано в trac, дело привычки
Я думаю вернуть логику из 10-ки, ваше мнение?
Поддерживаю.
angel_il
18-01-2009, 19:09
упорно
make[1]: Entering directory `/opt/broadcom/src/gateway/iproute2'
Please, Compile the kernel first
angel_il
18-01-2009, 19:29
ну покажите что ли что у вас в linux/autoconf.h
angel_il
18-01-2009, 19:34
сделал
touch autoconf.h :)
пока собирается
...
...
не помогло
у тебя точно make kernel и первый make безошибочно отработали? Такая же проблема была, но скорее всего была решена доустановкой еще чего-нибудь на хостовой машине. Проблема в том, что такие неприятности возникают в процессе, но понять, какая из них критическая --- сложно, поэтому убей бог не могу вспоминть, что именно сделано :( В общем, не то, чтобы содержательно, но могу порекомендовать не терять надежды. :) сорри за остутствие лучших рекомендаций...
angel_il
18-01-2009, 20:55
у тебя точно make kernel и первый make безошибочно отработали? Такая же проблема была, но скорее всего была решена доустановкой еще чего-нибудь на хостовой машине. Проблема в том, что такие неприятности возникают в процессе, но понять, какая из них критическая --- сложно, поэтому убей бог не могу вспоминть, что именно сделано :( В общем, не то, чтобы содержательно, но могу порекомендовать не терять надежды. :) сорри за остутствие лучших рекомендаций...
я уж чего только не перепробовал :)
следующее что буду пробовать установка gcc нового...
make kernel
make
вообще никакого криминала
Подскажите, а чем отличаются драйвера wi-fi от broadcom:
wl_ap.o
wl_sta.o
wl_apsta.o
wl_ap_onchip_g.o
wl_sta_onchip_g.o
wl_apsta_onchip_g.o
с прошивкой 1.9.2.7-10 в комплекте идет только wl_apsta.o, есть подозрение что можно использовать другой драйвер для BCM5354, более "легкий", для уменьшения размера прошивки, только вот какой из них, и где взять драйвера той же версии, что и в 1.9.2.7-10 ?
упорно
make[1]: Entering directory `/opt/broadcom/src/gateway/iproute2'
Please, Compile the kernel first
у меня такие же проблемы :( но я пока разбираюсь с 1.9.2.7-10, и до новой прошивки пока руки не дошли разбираться почему не собирается.
я уж чего только не перепробовал :)
следующее что буду пробовать установка gcc нового...
make kernel
make
вообще никакого криминала
я на чистый debian ставил следующие пакеты
build-essential
libncurses-dev
gawk
flex
zlib1g-dev
rcs
с этим набором прошивка собирается на раз, только проверь какая версия тулчейна, с hndtools-mipsel-uclibc-4.1.2.tar.bz2 - у меня не собиралось, а с hndtools-mipsel-uclibc-4.1.2-1ar.bz2 - на ура...
с hndtools-mipsel-uclibc-4.1.2.tar.bz2 - у меня не собиралось, а с hndtools-mipsel-uclibc-4.1.2-1ar.bz2 - на ура...
Скорее всего в этом и была причина :) Я тоже пытался собирать с hndtools-mipsel-uclibc-4.1.2.tar.bz2
angel_il
19-01-2009, 07:46
AlexeyS,
у меня слака под colinux. сейчас образ качаю новый с новым gcс и пр.
angel_il
19-01-2009, 08:20
Скорее всего в этом и была причина :) Я тоже пытался собирать с hndtools-mipsel-uclibc-4.1.2.tar.bz2
дак я же с hndtools-mipsel-uclibc-4.1.2-1 собирал
wl_ap.o - "Access point"
wl_sta.o - "Station"
wl_apsta.o - и то и другое в одном флаконе. Берутся из GPL ASUS'а
Значит в официальной прошивке тоже wl_apsta используется...
Захожу телнетом на 520GC с официальной прошивкой - wl.o занимает что то около 600кб.
А в прошивке 1.9.2.7-10 wl.o весит более мегабайта... Вот и хотелось бы узнать, из чего собран драйвер в официальной прошивке....
Буду пробовать методом научного тыка :) Подложу при сборке ядра ему wl_apsta из исходников официальной, посмотрим что выйдет :-)
А ни кто не пробовал в данную прошивку интегрировать TCPDUMP? Подойдет ли он из Олеговой, всё-таки версии uclib разные?
А ни кто не пробовал в данную прошивку интегрировать TCPDUMP? Подойдет ли он из Олеговой, всё-таки версии uclib разные?
Если ты еще не заметил, то он там есть ;) Не выложен только в последней сборке от theMIROn, так как я банально не успел передать ему бинарник.
Updated: Залил на wl500g.googlecode.com
Если ты еще не заметил, то он там есть ;) Не выложен только в последней сборке от theMIROn, так как я банально не успел передать ему бинарник.
я то из SVN собирал и не заметил, что в готовой прошивке он был :(
Вообще не вижу смысла что либо менять.
По мне - делать, так всё сразу. Плюс должна появиться возможность запуска скрипта ez-setup по нажатию кнопки.
Гораздо важнее в качестве поддержки роутера Dlink DIR-320 я вижу ассоциацию порта WAN с VLAN1 который в прошивке по умолчанию. В данный момент приходится вручную ассоциировать WAN с VLAN2.
nvram get boardtype
0x048e
Это уже добавил и выложил в SVN.
lly, по поводу vlan на dir-320, посмотрел я diff, имхо более корректным было бы не выставить значения по умолчанию vlan2 в rc/rc.c, а поправить rc/vlan.c, там алгоритм расчитан на то, что порт WAN имеет №0 , а LAN порты обрабатываются последовательно от 1 до 4.
Тогда бы у DIR-320 WAN порт был бы в vlan1, как и у других устройств.
ИМХО.
Могу поправить, единственное что кому-то с DIR-320 прийдется проверить.
lly, по поводу vlan на dir-320, посмотрел я diff, имхо более корректным было бы не выставить значения по умолчанию vlan2 в rc/rc.c, а поправить rc/vlan.c, там алгоритм расчитан на то, что порт WAN имеет №0 , а LAN порты обрабатываются последовательно от 1 до 4.
Тогда бы у DIR-320 WAN порт был бы в vlan1, как и у других устройств.
ИМХО.
Могу поправить, единственное что кому-то с DIR-320 прийдется проверить.
Не вопрос, правь. У меня тоже нет DIR-320, а этот вариант прислал radmir. Надо бы еще спросить мнение sorine и других энтузиастов.
Ну да, прийдется через productid :(
Кстати, я так подозреваю, что обработку productid для GPv2 дописывал Олег, т.к. прошивка идентичная его прошивке 0.0.16 для 520GC из темы "прошивки для 520gu/gc, 500gpv2 которые могут стать официальными".
И еще, обрати внимание на комментарий
/* why don't you use different boardnum??? */
if (nvram_match("productid","WL500gpv2"))
не думаю что такой вопрос задавали бы себе программисты асуса :))))
Подолью масла в огонь - а что у нас замолчали энтузиасты внедрения функционала CDMA из чешской прошивки? Ничего не вышло? Уже никому неинтересно?
P.S. Правда engy так и не отозвался, но это же не повод :D
Народ, поделитесь CFE от D-LINK DIR-320
angel_il
20-01-2009, 14:26
Подолью масла в огонь - а что у нас замолчали энтузиасты внедрения функционала CDMA из чешской прошивки? Ничего не вышло? Уже никому неинтересно?
P.S. Правда engy так и не отозвался, но это же не повод :D
мой телефон завелся, могу получать/посылать sms работает как gprs модем, мне больше ничего не надо :)
наконец-то дошли руку поставить собственноручно собранную прошивку на роутер, всё в общем работает, но обнаружилась проблема - жутко тормозит просмотр IP-TV через UDPXY. Лог роутера переполняется записями "udpxy[204]: write_buf: write: Resource temporarily unavailable" - такое впечатление, что не хватает объема выделенного буфера - может что не так с параметрами запуска?
жутко тормозит просмотр IP-TV через UDPXY. Лог роутера переполняется записями "udpxy[204]: write_buf: write: Resource temporarily unavailable" - такое впечатление, что не хватает объема выделенного буфера - может что не так с параметрами запуска?
Ну даже и не знаю что сказать :( Это сообщение udpxy пишет когда не может записать буфер в сокет. Кто-то возвращает EAGAIN, надо разбираться...
Ну даже и не знаю что сказать :( Это сообщение udpxy пишет когда не может записать буфер в сокет. Кто-то возвращает EAGAIN, надо разбираться...
Вроде исправили, надо бы обновить версию udpxy в репозитории.
Вроде исправили, надо бы обновить версию udpxy в репозитории.
Я читаю ветку http://wl500g.info/showthread.php?t=12182
Если bsl45 ничего еще не подправит сегодня или завтра, внесу в trunk.
прошил свой дир-320
получилось настроить инет по PPTP
но не порадовала скорость - всего 3,5 мегабита на вход/исход
полазив везде понял что ничего настроить для увеличения скорости я видимо не смогу.
подскажите можно ли увеличить скорость?
у меня тариф 7,5/7,5 мегабит, на родной прошивке он выдает такую скорость.
а с февраля я запланировал переход на 12 мегабитный анлим...
прошил свой дир-320
получилось настроить инет по PPTP
но не порадовала скорость - всего 3,5 мегабита на вход/исход
полазив везде понял что ничего настроить для увеличения скорости я видимо не смогу.
подскажите можно ли увеличить скорость?
Сравнивай параметры pptp, особенно шифрования и компрессии.
angel_il
22-01-2009, 21:10
обновил ядро, обновил gcc до 4.2.х
стала собираться паршивка, значит оно...
Подолью масла в огонь - а что у нас замолчали энтузиасты внедрения функционала CDMA из чешской прошивки? Ничего не вышло? Уже никому неинтересно?
P.S. Правда engy так и не отозвался, но это же не повод :D
Стыдно. Времени нет совсем. Рассчитывал на пъяную неделю, но и там не срослось. Сегодня в первый раз за два месяца до форума добрался. сижу читаю куда процесс ушел.
angel_il
24-01-2009, 18:51
lly
services_ex.c
...
int
start_busybox_httpd(void)
{
char *bb_httpd_argv[]={"busybox_httpd",
"-p", atoi(nvram_safe_get("bb_httpport_x")),
"-h", nvram_safe_get("bb_httphome_x"),
NULL};
pid_t pid;
if (nvram_match("bb_httpenable_x","1"))
{
_eval(bb_httpd_argv, NULL, 0, &pid);
}
return 0;
}
...
к сожалению патч не даю, т.к. лениво расспаковывать исходники по новой... так что в виде процедуры.
и еще надо вызов start_busybox_httpd() добавить в services.c
к сожалению патч не даю, т.к. лениво расспаковывать исходники по новой... так что в виде процедуры.
Ну нельзя же быть ленивее чем я ;)
и еще надо вызов start_busybox_httpd() добавить в services.c
Добавляю в конец, после start_usb(), Ok ?
сижу читаю куда процесс ушел.
Из плохих новостей только http://wl500g.info/showpost.php?p=128931&postcount=131
Если хочешь, можешь сам попробовать написать чехам. А вдруг выгорит?
angel_il
25-01-2009, 11:09
ну и страничка с меня
angel_il
25-01-2009, 11:17
lly, у меня только просьба проверить в какой момент busybox_httpd уже доступен, и с путями тоже, может надо добавить
chdir("/usr/sbin");
и еще возможно надо
int
stop_busybox_httpd(void)
{
eval("killall", "busybox_httpd");
return 0;
}
theMIROn
25-01-2009, 17:18
как думаете, стоит поменять правила postrouting iptables с MASQUERADE на SNAT? чтобы оно сразу было?
http://wl500g.info/showthread.php?t=14953
lly, у меня только просьба проверить в какой момент busybox_httpd уже доступен, и с путями тоже, может надо добавить
Ты имеешь в виду проверку доступности http_home (сам busybox доступен всегда)?
Есть какие-нибудь мысли на этот счёт?
а бизибокс который?
Еще и этот труд я не потяну. Еще Олег писал, что в новом Busybox'е исключены ext2fs tools, вот если кто сподвигнется их обратно имплантировать...
В 2008 году появился рабочий порт ext2fs tools под Windows (http://downloads.sourceforge.net/ext2fsd/Ext2Fsd-0.46pre3.zip), мне кажется что это можно считать решение проблемы - теперь винчестер можно отформатировать на компьютере (под linux и windows).
angel_il
25-01-2009, 23:47
Ты имеешь в виду проверку доступности http_home (сам busybox доступен всегда)?
Есть какие-нибудь мысли на этот счёт?
ну да получается диск не смонтирован - busybox_httpd е завелся, как быть то?
theMIROn
26-01-2009, 05:51
http сервер - тот же usb application, и поведение запуска не должно отличаться от ftp сервера.
Т.е запуск в соответствующей части rc после маунта и (возможно) периодическая проверка вачдогом
angel_il
26-01-2009, 06:12
http сервер - тот же usb application, и поведение запуска не должно отличаться от ftp сервера.
Т.е запуск в соответствующей части rc после маунта и (возможно) периодическая проверка вачдогом
ок, посмотрю на счет вочдога, спасибо, что то сразу не допер...
theMIROn
26-01-2009, 17:31
ок, посмотрю на счет вочдога, спасибо, что то сразу не допер...
+ в rc/firewall_ex.c нужно правила по дефолту, если http сервер включен (опять же по типу ftp)
как думаете, стоит поменять правила postrouting iptables с MASQUERADE на SNAT? чтобы оно сразу было?
http://wl500g.info/showthread.php?t=14953
Так как функционал это не ухудшает ;) то я не против. Но лучше бы мнение какого-нибудь iptables-гуру!
P.S. Естественно, желательно оставить старый код, или в #ifdef'ах , или закомментировать.
theMIROn
26-01-2009, 18:06
Так как функционал это не ухудшает ;) то я не против. Но лучше бы мнение какого-нибудь iptables-гуру!К сожалению я не гуру по iptables, но в нашем случае адреса интерфейсов всегда известны и правила герерируются заново всегда с нуля.
Вообщем потому и спрашиваю... Лично у меня - работает опять же с pptp/l2tp без нареканий, второй ван не использую.
P.S. Естественно, желательно оставить старый код, или в #ifdef'ах , или закомментировать.естестна
UPDATE:
Сделал, затестю, скомичу
что то у нас поломалось...
обновил с svn, удалил gateway, linux/linux не удалял. Собираю по новой --- выдает ошибку при применении kernel/openwrt/802-*.patch (показать не могу)
Удаляю linux/linux, разворачиваю по новой исходники 2.4.37 и делаю make kernel. Получаю:
kernel-usb-tt-ehci.patch
Can not apply kernel-usb-tt-ehci.patch cleanly
make: *** [kernel] Error 1
Пытаюсь в лоб, согласно patch.sh, выполнить:
patch -d ../linux/linux --dry-run -p1 -f -Z < kernel/kernel-usb-tt-ehci.patch
Получаю:
patching file Documentation/Configure.help
patching file drivers/usb/host/Config.in
patching file include/linux/usb.h
Hunk #1 succeeded at 808 (offset 2 lines).
patching file drivers/usb/hub.h
patching file drivers/usb/hub.c
patching file drivers/usb/host/ehci.h
Hunk #3 FAILED at 434.
Hunk #4 succeeded at 504 (offset -8 lines).
1 out of 4 hunks FAILED -- saving rejects to file drivers/usb/host/ehci.h.rej
patching file drivers/usb/host/ehci-q.c
patching file drivers/usb/host/ehci-sched.c
al@debian4:~/broadcom/src-lly/wl500g-1.9.2.7-d$ patch -d ../linux/linux --dry-run -p1 -f -Z < kernel/kernel-usb-tt-ehci.patch
patching file Documentation/Configure.help
patching file drivers/usb/host/Config.in
patching file include/linux/usb.h
Hunk #1 succeeded at 808 (offset 2 lines).
patching file drivers/usb/hub.h
patching file drivers/usb/hub.c
patching file drivers/usb/host/ehci.h
Hunk #3 FAILED at 434.
Hunk #4 succeeded at 504 (offset -8 lines).
1 out of 4 hunks FAILED -- saving rejects to file drivers/usb/host/ehci.h.rej
patching file drivers/usb/host/ehci-q.c
patching file drivers/usb/host/ehci-sched.c
Вроде выходит, что патч ehci.h не соответствует реалиям...
Ещё дополнение: не применяются оба патча из rc и часть патчей из brcm-src
theMIROn
28-01-2009, 05:38
хм.. а с путями ничего не напутали?
http://code.google.com/p/wl500g/wiki/CompilingCustomFirmware
Не напутали. Остальные таргеты отрабатывают без проблем.
theMIROn
28-01-2009, 05:58
по состоянию на 2009.01.24 все компилировалось с нуля безо всяких проблем, в т.ч патчи из rc
А где взять версию 2009.01.24? Я применял вот этот набор патчей: wl500g-1.9.2.7-d7.20090119.tar.bz2
что то у нас поломалось...
Can not apply kernel-usb-tt-ehci.patch cleanly
Это я в r65 поломал :( , сегодня постараюсь пофиксить.
Updated: Починил, залил - проверяйте.
P.S. Не корысти ради, а токмо бэкпорта EHCI :)
Спасибо, с ehci теперь всё в порядке. Осталась проблема с таргетом rc:
$ apply rc/rc-common.patch:
$ +++++++++++++++++++++++++++++++
patching file rc/bigpond.c
patching file rc/common_ex.c
patching file rc/dns.c
patching file rc/dns_decode.c
patching file rc/dns_decode.h
patching file rc/firewall.c
patching file rc/firewall_ex.c
patching file rc/init.c
patching file rc/interface.c
patching file rc/Makefile
(Stripping trailing CRs from patch.)
patching file rc/manu_ex.c
Hunk #1 FAILED at 724.
Hunk #2 FAILED at 861.
2 out of 2 hunks FAILED -- saving rejects to file rc/manu_ex.c.rej
patching file rc/mtd.c
patching file rc/mtd.h
$ apply rc/rc-ddns-daemon.patch:
$ +++++++++++++++++++++++++++++++
patching file rc/services_ex.c
Hunk #1 FAILED at 12.
Hunk #2 succeeded at 391 (offset -191 lines).
Hunk #3 FAILED at 439.
Hunk #4 FAILED at 468.
Hunk #5 succeeded at 662 (offset -18 lines).
Hunk #6 succeeded at 502 (offset -191 lines).
3 out of 6 hunks FAILED -- saving rejects to file rc/services_ex.c.rej
Илья,
А не смотрел ли ты случайно, можно ли как-то спортировать allow_restart флаг для scsi-устройств из 2.6 в 2.4?
Или любой другой способ решить в ядре 2.4 вот эту проблему с USB-HDD (http://www.nslu2-linux.org/wiki/FAQ/DealWithAutoSpinDownOnSeagateFreeAgent), которые имеют тенденцию засыпать, и выдывать потом гору ошибок при обращении к ним?
theMIROn
28-01-2009, 20:28
что то вроде этого?
http://www.mail-archive.com/linux-usb-users@lists.sourceforge.net/msg19677.html
по-моему это касается только seagate винтов
а моя проблема вылечилась. Теперь опять собирается от начала и до конца.
Sanvean: двукратного наложения патчей быть не может? Т.е. удаляем ли перед сборкой то что насоздано предыдущий раз?
Sanvean: двукратного наложения патчей быть не может? Т.е. удаляем ли перед сборкой то что насоздано предыдущий раз?
Исключено. Вписал строки вручную -- всё замечательно собралось.
Кстати, а что в 2.4 USB-подсистема кривая чтоли? Собираю ядро с встроенными драйверами scsi, sd, usb, usb-uhci, usb-ehci, usb mass storage -- так ядро при загрузке флешку в упор не видит =(
Такое ощущение, что при загрузке драйвер не сканирует шину и не обнаруживает никаких устройств.
WOW!!!
у меня заработал pl2303 через usb2 hub :eek:
полный отпад :D
что то вроде этого? по-моему это касается только seagate винтов
Да, вроде этого... Не только Seagate, если еще некоторые Максторы с той же бедой... Начиная с 2.6.какого-то ядра "sdev->allow_restart = 1" присваивается в scsiglue.c всегда для всех USB HDD - на всякий случай. Но, к сожалению, allow_restart в 2.4 еще нет.
Илья,
А не смотрел ли ты случайно, можно ли как-то спортировать allow_restart флаг для scsi-устройств из 2.6 в 2.4?
Ты это кому из нас? ;)
Нет, не смотрел. Возможно практически всё, но у меня нет объекта воспитания, а без этого отладка драйверов весьма проблематична.
Updated: глянул - халява не пройдет. В 2.4 отсутствует ряд сервисных hook'ов вроде slave_configure (что и перехватывается в scsiglue) и т.д., т.е. придётся что-нибудь изобретать...
Кстати, а что в 2.4 USB-подсистема кривая чтоли? Собираю ядро с встроенными драйверами scsi, sd, usb, usb-uhci, usb-ehci, usb mass storage -- так ядро при загрузке флешку в упор не видит =(
Такое ощущение, что при загрузке драйвер не сканирует шину и не обнаруживает никаких устройств.
Немного есть, но не в том месте, в котором ты думаешь. Кривовата только поддержка USB 2.0 в части ISOchronous передач и Transaction Translators.
Анализируй syslog и вывод dmesg. Скорее всего, ошибка у тебя.
theMIROn
29-01-2009, 10:47
ИльяЛеонид он =)
Updated: глянул - халява не пройдет. В 2.4 отсутствует ряд сервисных hook'ов вроде slave_configure (что и перехватывается в scsiglue) и т.д., т.е. придётся что-нибудь изобретать...Гм, разве для нас нужно slave_configure?
Фактически START_STOP будет пользоваться только для sd устройств.
что если в scsi_error.c добавить поведение на NOT_READY +функи старт-стопа из 2.6 ядра?
UPDATE: нашел http://lost-habit.com/scsi.html с kernel патчами, можно оттуда вытащить только раскрутку диска
Гм, разве для нас нужно slave_configure?
Фактически START_STOP будет пользоваться только для sd устройств.
что если в scsi_error.c добавить поведение на NOT_READY +функи старт-стопа из 2.6 ядра?
allow_restart надо где-то включать. Делать это абсолютно для всех дисков я не хочу. А механизм slave_configure позволяет это делать только для всех USB дисков в scsiglue.с. Т.о. надо или втискиваться в существующие hook'и (куда??) или добавлять из 2.6
функции START_UNIT в 2.6 выполнены чуть по другому. Бэкпорт возможен, но надо посидеть и подумать.
UPDATE: нашел http://lost-habit.com/scsi.html с kernel патчами, можно оттуда вытащить только раскрутку диска
Updated: Глянул - это не поможет. Основной вопрос - куда в существующем коде пихать вызов START_UNIT (он же scsi_eh_try_stu в 2.6)?
Updated2: Ну глобально-то понятно - в scsi_unjam_host. А конкретно разобрать эту жуткую функцию в 2.4 на 500 с лишним строк мне тяжеловато. Может найдутся желающие?
Леонид он =)
Сорри... Куда-то я не туда посмотрел -(...
А конкретно разобрать эту жуткую функцию в 2.4 на 500 с лишним строк мне тяжеловато. Может найдутся желающие?
Я-то желающий, но квалификации не хватает. Я уже пару дней пялился на исходники, но и близко не подешел к вашим выводам. Но по-крайней мере удалось вас заинтересовать проблемой -).
Я-то желающий, но квалификации не хватает. Я уже пару дней пялился на исходники, но и близко не подешел к вашим выводам. Но по-крайней мере удалось вас заинтересовать проблемой -).
"C" хоть немного знаешь? С Английским хоть со словарем? В детстве картинки "найди 10 отличий" разгадывал? Тогда годен :D
Чтобы спроектировать драйвер с нуля нужно очень нехилую квалификацию (у меня тоже такой нет). Наша же задача проще - вписаться в существующий механизм. В 2.4 функция scsi_unjam_host написана монолитным плохо читаемым куском, а в 2.6 разбита на удобочитаемые подпрограммы. На высоком уровне алгоритм весьма простой - пройтись по списку устройств, проверить статусы и выполнить действия по исправлению. Сравнивая одинаковые по смыслу куски кода, можно найти точку врезки в 2.4.
Я сам возможно вернусь к этому вопросу, но только после того как, либо я забью ногами EHCI из 2.6, либо он достанет меня и я отложу задачу на поразмыслить.
theMIROn
29-01-2009, 20:12
попробую что нибудь придумать.
p.s после смены masquerade на snat похоже стоит заиспользовать и conntrack_clear после (перед?) eval("iptables-restore", "/tmp/nat_rules"), чтобы сбрасывать соединения как в чешской, только уже для всех типов соединений. хм, к чему это может привести бы.
DemonGloom
30-01-2009, 06:58
А можно вас попросить собрать httpd из последней прошивки для Wl500GP V2 ? Ну или в идеале отдать все файловую систему от той прошивки (не trx - готовая прошивка почему-то не разбирается..)..
Плиииз :)
angel_il
30-01-2009, 07:06
попробую что нибудь придумать.
p.s после смены masquerade на snat похоже стоит заиспользовать и conntrack_clear после (перед?) eval("iptables-restore", "/tmp/nat_rules"), чтобы сбрасывать соединения как в чешской, только уже для всех типов соединений. хм, к чему это может привести бы.
а я думал conntrack_clear уже...
theMIROn
30-01-2009, 07:23
А можно вас попросить собрать httpd из последней прошивки для Wl500GP V2 ? Ну или в идеале отдать все файловую систему от той прошивки (не trx - готовая прошивка почему-то не разбирается..)..
Плиииз :)
Отлично разбирается вот этим
http://code.google.com/p/firmware-mod-kit/
а я думал conntrack_clear уже...
он есть, т.е почистить можно, но реально не используется в самом rc. А чистятся все записи...
на текущий момент очистка делается вот так:
echo 1 > /proc/sys/net/ipv4/ip_conntrack_clear
имеет ли смысл сделать комманду conntrack_clear, как симлинк на rc?
DemonGloom
30-01-2009, 11:54
Увы, но последние прошивки для Wl500GPv2 не разбираются... Я пробовал раньше - не смог, и сейчас не получилось. Прошивки Олега, а также всякие Openwrt разбираются успешно..
А можно вас попросить собрать httpd из последней прошивки для Wl500GP V2 ?
А смысл? httpd линкуется с библиотеками nvram, shared, netconf. Тебе библиотеки от какой версии нужны?
Ну или в идеале отдать все файловую систему от той прошивки (не trx - готовая прошивка почему-то не разбирается..)..
По крайней мере мне для этого надо собирать стенд со старым тулчейном и пытаться собрать прошивку. Не самое быстрое и интересное занятие
P.S. Из "последней" - это из какой?
DemonGloom
30-01-2009, 12:35
А смысл? httpd линкуется с библиотеками nvram, shared, netconf. Тебе библиотеки от какой версии нужны?
По крайней мере мне для этого надо собирать стенд со старым тулчейном и пытаться собрать прошивку. Не самое быстрое и интересное занятие
P.S. Из "последней" - это из какой?
3.0.3.6
Смысл - попытаться приделать web-интерфейс оттуда..
Просто я собрать прошивку сам не смог...
3.0.3.6
Смысл - попытаться приделать web-интерфейс оттуда..
Я попробую на досуге, но скорее всего не получится, т.к. могут использоваться новые функции из libshared. Только у меня нет 3.0.3.6, а качать ASUS'овскую дуру в 200Mb с его ограничением скорости тоскливо, выложи на какой-нибудь обменник каталоги src/httpd и src/shared.