sfstudio (sfstudio) wrote,
sfstudio
sfstudio

Categories:

RTL8671BH(RTL8672) - Acorp W422G_v3 (USB) firmware

Этап 4: Интеграция полученного от китайцев исходного кода wifi модуля + пакетного процессора + fastpath в нашу ветку ядра. Попутно привожу код к человеческому виду. Начиная с версии 0.1.51 в бинарном виде в ядре остались только wifi драйвер и драйвер DSL модуля с DSP кодом. Именно эту версию на текущий момент можно рекомендовать к использованию.

Этап 3: Отлов багов по багрепортам от пользователей, чистка и причёсывание, интеграция функционала для устройств с USB портом (samba/ftp/print server/GSM/CDMA/4G/etc...).


Этап 2: - все устройства ушли на производство, ждём первых отзывов от покупателей попутно причёсываем и прилизываем + трясём с китайцев исходники wifi модуля и fastpath дабы решить проблему с ifb/imq.


 Вот и закончен первый этап работы над прошивкой для новых устройств от Acorp W422G v3 которые через пару месяцев появятся в продаже на территории РФ.


Сначала о самом девайсе
1) RTL8671BH(RTL8672) - 340МГц MIPS CPU
2) 16Мб - RAM
3) 4Мб SPI - FLASH
4) 8187su - WiFi 
5) RTL8306 - switch
6) RTL7281 - ADSL A/B/M/L
7) USB host в случае с 8672

Скриншоты прошивки можно посмотреть тут: sadnet.ru/

Правила наименования:
LAN122-v3 - rtl8671bh/4Мб flash/16Мб RAM
W422G-v3 - rtl8671bh/4мб flash/16Мб RAM/8187su WiFi
W422G-v4 - rtl8672/4мб flash/32мб RAM/8187su WiFi

В продаже на текущий момент доступны только W422G-v3.


Т.е. железка достаточно шустрая по сравнению с предшественниками в виде RTL8671(P). WiFi модуль достаточно гибко настраивается по сравнению с 8186+8225.SDK построен на базе 2.6.19.7 стабильного ядра и не имеет проблем с conntrack. Юзерлэвел адаптирован от RTL8671B 2.4 kernel SDK версии. 

Из плюсов стоит отметить отсутствие проблем при NATе большого числа соединений (DSL->LAN), что весьма критично для корпоративных клиентов с большими сетями за DSL.
Весьма неплохая стабильность, нет необходимости в перезапусках, нет подвисаний на ровном месте.
Нет проблем с conntrack что вообще исключительное свойство для SOHO девайсов.
Более того очень много сил потрачено на обеспечение безопасности, код постоянно мониторится на предмет фиксов безопасности авторами входящих в прошивку программ.

Известные проблемы:
1) WiFi модуль не имеет режима клиента (закрытый модуль - обещались починить, но видимо не дождёмся, практически неактуально для подобного класса девайсов)
2) На 8672 платах не работает Host режим USB (проблема однозначно аппаратная, как выяснилось проблема кроется в разводке конкретного образца, так что касается только меня как девелопера).

USB host в новых устройствах работает (8672).

Краткий ченджлог с момента перехода на 2.6.19 ядро и начало переноса userlevel части SDK (за исключением постоянных пунктов таких как правки на предмет стабильности и потребления памяти, т.к. они присутствуют на каждом этапе, также 0.1.x версия содержит все правки userlevel для RTL8671B 2.4SDK):

0.1.53
1) Обновлён wifi до версии от 10.12.2009
2) Исправлено обновление параметров MBSSID по нажатию кнопки Apply
3) В LAN драйвере добавлен фильтр позволяющий корректно разобрать запросы upnp/dhcp и внешний multicast трафик
3) Добавлены sysfsutils
4) Портирован драйвер USBIP реализующий экспорт USB через IP сети
5) Добавлена поддержка 2х новых устройств W530G (аналог W422G_v3 с 801.11n 1T1R RTL8191SU модулем) и W532G (RTL8672 CPU/2T2R RTL8192SU wifi/8Мб флэш + 32Мб RAM + USB порт).

0.1.52
1) Стопка мелких фиксов в ядре на предмет igmp, выделения памяти и т.д.
2) Отключаем fastpath если используем маркировку по входу в PREROUTING как "источник" для шейпера. Т.е. шейпер теперь полноценно работает, проблема остаётся только в IMQ, без него достаточно неудобно писать правила. Разбираюсь с кодом wifi драйвера надеюсь решить проблему в ближайшее время.

0.1.51
1) Обновлён wifi драйвер версия от 04122009 (Fix 8187SU wifi reset procedure)

0.1.50
1) Увеличено время ожидания перепрошивки в web c 120сек до 240сек ибо некоторые пользователи пытаются раньше времени перезагрузить устройство
2) Слегка переделан порядок записи на флэш за счёт чего удалось сократить время необходимое на перепрошивку. примерно на 20%
3) Wireless Multiple BSSID теперь работает (группировка черех PortMAP)
4) Обновлён acell-pptp
5) fastpath теперь собирается из сырцов с максимальным уровнем оптимизации
6) Устранены две проблемы в fastpath первая приводила к забиванию лога бесполезными сообщениями, вторая иногда приводила к краху при высокой нагрузке через wifi
7) Частично решена проблема с маркировкой пакетов в PREROUTING
8) Начата постепенная интеграция полученного от китайцев исходного кода некоторых (увы не всех) бинарных модулей

0.1.49
1) Добавлена утилита netstat
2) В pppd добавлена возможность задать вручную нижний номер ppp интерфейса
3) Устранена застарелая регрессия в LAN драйвере приводившая в некоторых случаях к невозможности доступа к устройству после включения IGMP.

0.1.48
1) Автомонтирование флэшек теперь работает
2) После монтирования флэш автоматически доступен через samba/ftp (через FTP доступна вся файловая система модема
нужно исправить).
3) Система сборки теперь учитывает необходимость полной очистки дерева исходников не оставляя ошмётки
4) Реорганизована структура прошивки, за счёт чего удалось существенно сократить занимаемое место
5) smbd теперь запускается как демон вместо вызова из inet.d
6) При LOGLEVEL=debug раздел /rwfs теперь доступен и через самбу чтобы было удобнее например скопировать лог файл с
устройства на ПК и наоборот
7) Системная локаль выбрана как cp866 т.к. 2я ветка самбы толком не умеет работать с многобитными локалями
а FAT и протокол smb передают имена файлов в кодировке cp866
8) Добавлена поддержка принт сервера работающего в RAW режиме (требуется установка "драйвера" на стороне клиента).
Пример настройки вы можете посмотреть тут http://oleg.wl500g.info/printing/ .

0.1.47
1) Синхронизация с SDK от 23112009

0.1.46
1) Мелкие правки и оптимизации в коде ядра
2) Системные скрипты (/etc/scripts) теперь также доступны для редактирования (в реальности теперь это симлинк на
/rwfs/scripts)
3) pppd обновлён до последней стабильной версии
4) Поправлен вывод pppd в лог сообщений о невозможности испольщовать mppe statefull mode если используется allow mppe

0.1.45
1) Добавлена утилита ether-wake (ether-wake -i br0 <MAC_адрес_ПК> разбудит целевую машину)
2) Бэкпорт драйвера HSO для поддержки GPRS/EDGE/CDMA/3G USB-модемов производства Option Wireless
(Билайном с комплектами «Мобильный офис/Мобильный интернет»)
3) Портированы libusb, usb_modeswitch, ozerocdoff, usbutils для поддержки модемов "прикидывающихся" флэшкой
4) Добавлен ftp сервер для быстрого доступа к rwfs с ПК.
5) Бэкпорт последних критических фиксов из стабильной 2.6 ветки ядра

0.1.44
1) Шейпер теперь не использует псевдоустройства из-за проблем ifb+mirred в связке с pppoe (см netdev)
2) Для исходящих соедниений в сторону оператора краевая дисциплина теперь sfq, в сторону абонента esfq,ограничение производится на уровне классов HTB на основе меток в PREROUTING/POSTROUTING цепочках iptables
3) В шейпер теперь не попадпет multicast траффик
4) Добавлена возможность задать исключения из правил для шейпера, например вынести часть привелигированных портов в низкий приоритет (по умолчанию 1:1024 порты udp/tcp - высокий приоритет, остальные низкий). Внимание список исключений задаётся одновременно для tcp и udp протоколов.
5) Добавлен модуль ip2p для приоритезации p2p соединений. В web добавлена возсожность установить низкий приоритет для p2p соединений (такие соединения будут выделены в самую низкоприоритетную полосу)
6) Восстановлена работа layer7 фильтров в ядре поломанная реалтэком
7) Объеденён код для RTL8671PV/RTL8672 в части ядра, теперь поддерживаютcя следующие процессоры:
RTL8671B/RTL8671BH/RTL8671PV/RTL8672, радиомодули: RTL8671su/RTL8191se/RTL8192se/RTL8190.
8) Добавлена опция "Shape incoming connection" позволяющая включить/отключить маркировку в таблице prerouting для дальнейшего шейпинга на интерфейсе br0 (из-за проблем с маркировкой по умолчанию отключено). Если опция отключена то классификация пакетов осуществляется непосредственно на br0 u32 классификатором.

0.1.43
1) Бэкпорт skb_act_clone() skb_reset_mac_header() чтобы избавиться от изменения структуры skbuff в skbuff.c при использовании ifb (дабы не сходили с ума бинарные блобы риалтэка)
2) Мелкие правки в busybox (mount, inetd, tail)
3) Файлы конфиграции iproute теперь также лежат на rwfs что даёт возможность полноценной работы с iproute2 из консоли включая настройку Multiple Default Gateways с схоранением результатов на flash памяти устройства (подробнее о iproute2 и loadbalancer читаем http://www.ssi.bg/~ja/nano.txt , http://gazette.linux.ru.net/rus/articles/lartc/index.html и поиск по opennet.ru)
4) Теперь настройки шейпера применяются и для VPN соединений (см /etc/ppp/ip-up скрипт)
5) В опции VPN добавлено управление usepeerdns и multiple dgw: usepeerdns - обновлять /etc/ppp/resolv.conf по данным от сервера multiple dgw - добавлять новый маршрут по умолчанию с метрикой 10 без удаления основного шлюза с метрикой 0
6) Удалён pppoecd слишком расточительно держать 2 демона повторяющих функционал, pppoe поверх LAN теперь использует штатный ppp + rp_pppoe плагин плюc ядерный модуль
7) Вызов и управление VPN теперь также происходит через init.d с rwfs что даёт возможность пользователям более гибко конфигурировать туннели через прямое редактирование скриптов инициализации
8) В web добавлены минимальные настройки для шейпера (далее будем расширять)
9) Обновлены драйвера wifi и otg до версии от 21102009
10) Исправлено падение при аутентификации по протоколу 802.1х

0.1.42
1) Чтобы избавиться от торможений boa при работе под нагрузкой буфер POST запросов вынесен в ядро (знатный костыль)
2) Множественные правки в boa на предмет проверки конфигов при загрузке/сохранени или обновлении прошивки
3) Система инициализации обрела наконец окончательный вид, большинство скриптов вынесено в /rwfs дабы дать возможность пользователю более гибко управлять загрузкой устройства
4) Добавлен tcpdump
5) Добавлена поддержка ROUTES MULTIPATH и маршрутизации на основе FWMARK для поддержки в будущем автоматического резервирования каналов и балансировки нагрузки

0.1.41
1) Перенесён оставшийся код из старого SDK (свои правки и патчи)
2) Пропатчен l2tp клиент на предмет управления маршрутами, теперь маршруты переданные от сервера добавлются корректно
3) pptp-accel теперь также корреткно обновляет маршруты
4) Новый re8670 драйвер починен на предмет работы с VLAN, возвращена утилита vconfig
5) Добавлен WINS сервер, для конфигурирования достаточно задать Domain Name на вкладке dhcp, включить wins
  в Advanced->Others и перезагрузиться. Для правильной работы необходимо чтобы компьютеры в локальной сети были настроены на получение настроек с dhcpd сервера, и dhcpd сервер в модеме был корретно сконфигурирован. Более того
следует помнить что клиентские машины должны быть в рабочей группе котороую вы прописали в Domain Name роутера.
6) Теперь если аутентификация PPPOE не удалась то ждём 10 секунд шлём PADT пакет в надежде что BRAS таки прибьёт повисшую сессию, ждём ещё 30 секунд и только после этого пытаемся реконнектиться. (Решение проблем с кривыми брасами/руками аля Webstream-Сибирь)

0.1.40
1) Добавлена мленькая утилитка mcprobe для диагностики работы MULTICAST
2) Переезд на ядро из нового SDK постепенный перенос всех наработок в него (т.к. новые wifi модули для старого sdk китайцы компилить отказались)
3) Временно исключены vconfig и imq (нужно чинить в ядре VLAN и разбираться с производительностью imq)

0.1.39
1) Исправлены регрессиив ядре появившиеся после добавления IMQ
2) Переделаны ограничения локальных соединений (защита от брутфорса и дос атак)
3) Автоматизация пересоздания правил iptables теперь учитывает наличие внешнего скрипта в init.d (при написании своих правил старайтесь использовать существующие цепочки которые корректно очищаются при применении настроек, либо обнуляйте свои цепочки самостоятельно в /rwfs/network/iptables
4) Добавлена опция hidenet позволяющая в некоторых случаях скрыть от провайдера наличие роутера и сети за ней, при условии что оператор анализирует TTL и пытается навязать оплату услуги по числу ПК или как в случае с СТК пересаживать владельцев домашних сетей на узкие каналы. Если опция включена все исходящие пакеты будут иметь TTL=64 что соответствует значению по умолчанию для OS семейства WS. Если ваш оператор блокирует работу роутера выставляя TTL=1 в сторону абонента достаточно в /rwfs/network/iptables добавить правило iptables корретирующее значения TTL на интерфейсе смотрящем в торону оператора.

0.1.38
1) Из-за очень высокой нагрузки на CPU при использовании IMQ для реализации QoS было принято решение оставить старую схему
QoS а IMQ использовать только для шейпера входящего/исходящего траффика на ppp интерфейсах
2) Добавлена дисциплина esfq для возможности равномерной балансировки траффика по адресу назначения, а не только по сессиям как в случае sfq
3) Отключение "собак" вынесено в web (Advance->Others) иначе при работе на очень высокоскоростных каналах собака отрабатывает
без причины т.к. CPU загружен под завязку
4) Управление обработкой /rwfs/init.d/shaper вынесено в (Advance->Others), по умолчанию отключено. Пример скрипта
для равномерного разделения траффика доступно из коробки, используется дисциплина esfq.
  Более детально о работе шейпера в Linux на русском можно почитать на opennet.ru, примеры скриптов для предыдущих версий Acorp W422G могут быть легко адаптированы для v3

0.1.37
1) Исправлена ошибка падения wifi драйвера при множественных соединениях через wifi
2) Обновлён код поддержки USB
3) Исправлена проблема в squashfs приводившая в некоторых случаях к невозможности получить доступ к некоторым директориям
4) Обновлён код Sar, Fastroute для sar теперь включен по умолчанию
5) В LAN драйвере теперь корректно обрабатывается ситуация переполнения буфера передачи в phy
6) IMQ теперь работает, как следствие полностью работает QoS и теперь возможна реализация полноценного шейпера

0.1.36
1) Попытка решить проблему с полной блокировкой устройства на время хэндшейка
2) Небольшой патч решающий проблему краха ядра при полной утилизации CPU wifi драйвером в режиме маршрутизатора
3) Множественные правки варнингов + чистка кода
4) Исправлена блокировка приёма пакетов на eth0 при опущенном интерфейсе, раньше это могло приводить к зависаниям при
загрузке или при удалении eth0 из моста.
5) Bridge fastpath теперь работает независимо от типа устройства включенного в мост
6) Исправлена ошибка приводившая к переполнению счётчика пакетов в skbuff если включен портмаппинг + wifi

0.1.35
1) Добавлена поддержка MXIC high performance flash
2) Добавлен воркэраунд для старых версий загрузчиков
3) Несколько мелких фиксов в LAN драйвере
4) Управление iapp вынесено в web по умолчанию режим отключен (не включайте без надобности)
5) Удалён сервисный mib переводящий в режим wifi logo test (за ненадобностью, да и чтобы шаловливые ручки не порушили девайс)

0.1.34
1) Полностью переработан скрипт обработки VPN соединений
2) В web добавлена вохможность включения отладки для VPN соединений
3) Добавлена возможность отключить NAT для VPN соединений
4) pppoecd/l2tp/pppd теперь корректно вызывают ip-up/down скрипты
5) EON flash теперь поддерживается штатно

0.1.33
1) WPS (WIFI_SIMPLE) теперь должен работать корректно
2) WPS LED теперь также служит индикатором работы VPN
3) Бэкпорт критических патчей из 205sdk

0.1.32
1) Обновлён otg драйвер, решена проблема с выбором скорости usb интерфейса
2) Решена проблема с выводом сообщений в тестовом режиме через telnet/ssh
3) Обновлён wifi драйвер до последней доступной версии
4) Нагрузка на процессор со стороны wifi снижена более чем в 2 раза (LA теперь непревышает 3х)
5) Wlan светодиод теперь меняет режим в зависимости от загрузки wifi интерфейса

0.1.31
1) Множественые мелкие правки кода ядра на предмет варнингов и стабильности
2) Оптимизирован код поддержки usb,usb_otg в ядре исправлено несколько ошибок в config_usb
3) Перенесён код pppd и плагинов из wive-ng теперь pppd в состоянии сам определить не только метод аутентификации pap/chap/mschap, но и наличие/отсуствие mppe шифрования (Allow mppe в web)
4) Добавлен pppoecd (демон для pppoe поверх lan/vlan) позволяет поднять VPN pppoe повех LAN (WAN->VPN Settings)

0.1.30
1) На закладке DNS Configuration для примера добавлены адреса серверов opendns.com
2) Дальнейшая оптимизация сетевой подсистемы для работы в устройствах с ограниченным объёмом памяти
3) Теперь если включена поддержка внешнего коммутатора то фильтруем VLAN (ETH_P_8021Q) через бридж
4) Если процесс не отстрелился по ooom в первый раз то и нефиг пытаться стрелять его снова, сразу в ребут
5) pptp persist теперь работает корректно

0.1.29
1) Убиваем все ненужные процессы перед обновлением прошивки
2) Бэкпорт патчей bridge из 2.6.30 позволяющие несколько разгрузить процессор не обрабатывая
ненужные фрэймы просто дропаем их не обрабатывая
3) Смена названия устройства на W422G_v3. Т.к. более устройств на Ti не будет, то 8176BH пока будет самой мощной моделью в линейке
4) Добавлено больше шагов для регулирования мощности передатчика, а т.к. градуировка шкалы +/- километр
то выводим можность в процентах (100% = ~60mW)

0.1.28
1) Добавлено автоопределение доступного объёма оперативной памяти
2) Устранена критическая уязвимость в ядре (backport from 2.6.30)
3) Обновлён код DSP до версии 2.9.0.5b от 30.07.09

0.1.27
1) В обвязке wifi драйвера устранена ошибка многократного высвобождения skb
2) Временно отключены MBSSID и WDS из-за проблем с производительностью (на стадии решения)

0.1.26
1) Добавлена утилита cpu для просмотра "мгновенной" загрузки cpu (вместо LA выадёт мгновенный снимок)
2) Добавлен crontab (/rwfs/crontab)
3) Теперь при каждом аппаратном сбросе настроек генерируем новый rsa ключ хоста (безопасность превыше всего)
4) Ватчдог теперь сам повышает себе приоритет без использования renice
5) Теперь уведомдение о запуске корректно передаётсмя SNMP серверу
6) clear_child небоходимо выполнять до а не после инициализации пользовательских rc скриптов, при этом
обеспечить задежку перед вызовом последних иначе получим зомби ;)
7) Управление доступом к L2TP серверу теперь вынесено на закладку Remote Access

0.1.25
1) Перед соединением pptp/l2tp теперь проверяем хост на живость
2) Перед установкой VPN соединения теперь добавляем маршрут до вызываемого сервера в таблицу маршрутизации (решение проблем с корбиной и другими кривыми VPN, также решает проблему удаления маршрута по умолчанию при подъёме pppd).

0.1.24
1) В web добавлены режимы pptp-client,l2tp-client,l2tp-server (требуется тестирование)
2) Исправоена проблема установки mtu для l2tp
3) Добавлены сервера pool.ntp.org для синхронизации времени
4) Часовой пояс по умолчанию теперь GMT+3 (Москва)


0.1.23
1) Wlan bridge shortcat теперь работает
2) Vlan в ядре теперь работает (портирован код из wive-ng в re8670)
3) Добавлена утилита vconfig
4) Теперь все записи фаервола очищаются корректно
5) DNS relay теперь работает корректно (кэш 300 записей)
6) Решена проблема с некорректной разметкой флэша приводившая иногда к порче конфигов

0.1.22
1) Обновлён iproute2, tc теперь не зомбируется при добавлении большого набора правил
2) Добавлена поддержка классификаторов tc (нужно для реализации полноценного шейпера)
3) Обновлён DSP код до 2.9.0.5а build от 24.07.2009

0.1.21
1) Код Sar теперь собирается из исходников
2) Мелкие правки в LAN драйвере
3) Небольшие чистки кода, начало реализации управления через web интерфейс pptp/l2tp клиентами
4) Обновлены wireless tools
5) Добавлена поддержка 8Мб флэша и EON flash

0.1.20
1) procfs и sysfs теперь монтируются ядром до запуска init`а (нужно для перехода на свежий
busybox, старый где-то переодически подтекает)
2) Глобально переработан ppp_generic опираясь на идеи заложенные с 2.6.19 по 2.6.30 ядра
(порядка 20% экономии процессора на мелких пакетах особенно на pptp)
3) Сохранение настроек теперь всегда работает корректно
4) Восстановлена работоспособность включения/отключения модулей ALG(conntrack). Включайте
только нужные вам модули это сильно сэкономит ресурсы процессора. (регрессия 2.4->2.6 перехода)
5) Добавлена поддержка Address Mapping

0.1.19
1) Добавлено управление скоростью LAN портов коммутатора
2) Добавлена возможность установить статический IP для pppoe сессий
3) Добавлена возможность блокировки доступа по URL
4) В ядро добавлена поддержка CONNLIMIT
5) Добавлена возможность ограничить число TCP соединений с одного IP

0.1.18
1) Добавлен раздел для пользовательских скриптов /rwfs. Управление: service rwfs start/save/stop/clear
2) Устранена проблема переполнения dst_cache при использовании биндингов ebtables в нетфильтр
3) Добавлена поддержка pptp и l2tp через rwfs (/etc/network/l2tp,/etc/network/l2tp)
4) Добавлена возможность продвинутым пользователям через rwfs управлять настройками iptables/routes
5) Добавлен скрипт для простой конфигурации l2tp (l2tp_setup)
6) Добавлен скрипт /rwfs/init.d/rc.local стартующий после полной загрузке устройства
7) Вы можете задать доменные имена для компьютеров своей локальной сети просто отредактировав файл
/rwfs/network/hosts (формат "IP_адрес доменное имя")



0.1.17
1) При включенном udpxy уменьшаем приоритет мультикаcт и броадкаст трафика через wifi
2) При включенном WMM QoS устанавливается приоритет передачи от АП к клиенту, в противном случае
передача в сторону клиента не приоритезируется
3) Добавлена поддержка трансляции multicast в unicast для поддержки WMM и igmpsnoop
4) BRIDGE FASTPATH теперь работает, что должно в некоторой степени снизить нагрузку на процессор
5) И китайские либы не избегут strip`а



0.1.16
1) Код поддержки usb-host и usb-otg синхронизирован с 2.0.5sdk
2) Исправления в usbmount для монтирования HDD в кодировке UTF
3) Исправлена ошибка приводившая к переполнению буфера в boa при выводе длинных сообщений в лог
4) Светодиод WPS теперь корректно управляется через /proc/gpio даже если WPS отключен. Думаю под
что задействовать. (работает только на RTL8671BH, на RTL8672 молчит)
5) Добавлен cli, теперь он вызывается в роли шела при коннекте по telnet (необходимо для тестирования).
Штатный, полноценный cli можно вызвать по ssh дав в консоли команду cli2
6) IRC/L2TP conntrack теперь работают
7) Управление доступом к UDPXY вынесено в web (по умолчанию выключен на всех интерфейсах)
8) UDPXY теперь запускается только при включенном WMM (Wireless->Advanced->WMM). Внимание, возможно только 1но
подключение (ограничение процессора). Крайне желательно перед началом использования включить IGMP Snooping
и Ethernet to Wireless Blocking. UDPXY будет запущен только при следующей перезагрузке устройства
(в любом случае при любых изменениях крайне желательно выполнить перезагрузку)
10) DSP код обновлён до 2.9.0.5a

0.1.15
1) В режиме отладки (log level = 7) все сообщения ядра теперь также пишуться в системный лог.
Необходимо для полноценной отладки без доступа к консоли.
2) Отключен IMQ для SAR т.к. в 2.6 версии поддержка его отсутствует (нет необходимости)
3) Добавлены правила фаервола для ограничения числа соединений к сервисам устройства во избежании DOS атак
и попыток подбора паролей
4) Поддержку процессора, сети и сетевых драйверов собираем с максимальной оптимизацией чтобы эффективнее
использовать процессор.
5) Fix the DHCP_VENDOR string bugs в udhcpd (из 2.0.5sdk)
6) Исправлена ошибка приводящая к невозможности завершить dhcp-relay при записи на флэш
7) Исправлена ошибка в dnsmasq иногда приводившая к невозможности его запуска
8) Обновлён код DSP до 2.9.0.4i

0.1.14
1) Для telnet по умолчанию используем cli вместо шела, для ssh использует ash
2) Выбор 0 в главном меню cli теперь корректно вызывает shell при использовании telnet
3) Индексы cli приводим в соответствие с утилитой для диагностики модемов 

0.1.13
1) Не трогаем wifi при рестарте ADSL
2) Добавлена поддержка HostSide USB, usbmount поддержка ext3/fat для HDD/Flash USB
3) NAPI в LAN драйвере теперь работет (экономия процессорссорного времени при операциях с eth)
4) usbdevfs теперь монтируется при загрузке
5) Мелкие правки в mount.c busybox
6) Код softdog перенесён в код демона аппаратного watchdog`а, т.е. теперь используется один
userlevel процесс для обоих типов "собак".
7) Время срабатывания softdog увеличино до 2х минут чтобы избежать перезагрузок при полной утилизации
процессора (softdog остаётся на подхвате на случай если аппаратный не отработал)

0.1.12
1) Увеличен таймаут ожидания после запуска configd
2) Приоритезирована обработка программных прерываний
3) wl sta снова работает
4) Удалены ошмётки WPS (WIFI_SIMPLE) ибо неактуален для России
5) Обновлён DSP код до 2.9.0.4c

0.1.11
1) icmp через wifi теперь проходят корректно, производительность wifi теперь в норме
2) Исправлены падения wifi при интенсивном использовании (требуется тестирование)
3) Как результат откатил старые воркэраунды для 802.11n клиентов
4) Multicast поверх WiFi теперь не приводит к краху модуля
 

0.1.10
1) Добавлен udpxy, работает, нужно добавить в морду
2) Исправлена ошибка в CPU планировщике приводившая к большой загрузке процессора даже в сосотоянии покоя
3) accel-pptp обновлён до последней стбильной версии (0.8.3)
4) Исправлена проверка авторизации в cli
5) Выкинут msh заменён на ash (нужен для реализации полноценной подсистемы инициализации)
6) Первые зачатки вменяемого init`а с обработкой последовательностей и т.д.
7) telnet теперь работает из inet.d а не висит постоянно в памяти
8) Более справедливое распределение полосы на интерфейсах входящих в br0
9) Теперь если при загрузке Loglevel != DEBUG(7) то не выводим никаких сообщений на консоль о выполняемых
  в boa командах, экономим время т.к. UART явно в разы медленнее /dev/null, а например настройка QoS и FW
  генерирует довольно длинный список правил который выводиться через консоль крайне медленно, что приводит к
  заметным задержкам в работе интерфейса и утилизирует проц на полную катушку одним лишь выводом в порт.
10) Если Loglevel != DEBUG(7) то процесс загрузки rc скриптов пишем в /var/log/boot.log
11) Никогда не убиваем собак (watchdogs), зачем это было сделано мне не ясно...
12) Переписан механизм strip для библиотек и исполняемых файлов что позволило ещё уменьшить занимаемый объём
13) Ядерные pptp/l2tp теперь тоже работают корректно (добавить в морду)
14) Утилита wl теперь корректно отображает уровни сигналов в консоли во всех режимах (scan, sta)

0.1.9
 

1) Пересобран тулчейн с новыми хидерами
2) Правки в uClibc
3) Большинство путей выправлено на относительные
4) Дальнейшая оптимизация ядра (+200кб свободной памяти)
5) Полный отказ от -msoft-float и переезд на FPU эмулятор в ядре
6) Все утилиты busybox теперь работают корректно
7) Изменение конфигурации WAN с отключенным кабелем теперь не приводит к ребуту (soft-float bug)

0.1.8
1) Добавлены pppd и плагины accel-pptp,rp-pppoe,l2tp
2) Добавлен xl2tpd
3) Поправлены motd
4) 520 порт теперь не светиться когда отключен RIP
5) top теперь работает
6) TotalBandWidth установлен в 3500кбит (AnnexM)
7) PREAMBLE_TYPE по умолчанию short
8) WMM (Wi-Fi QoS) по умолчанию включен
9) WPS LED теперь используется для индикации работы wifi (WPS не актуально для РФ)
10) Программный и аппаратный watchdog теперь работают совместно исключая глухое зависание устройства
11) Аппаратный сброс настроек теперь работает
12) Теперь если ядро выпадет в панику система будет перезагружена через 1сек.
13) При заливке прошивки на флэш тушим все сетевые интерфейсы кроме локального

0.1.7
1) В web интерфейс добавлена опция принудительного выбора AnnexB
2) Планировщиком ввода вывода выбран простой планировщик гарантирующий  минимальное время обслуживания с минимальными накладными расходами (deadline)
3) TCP/IP планировщиком выбран планировщик ориентированный на работу на каналах с  глубокой асимметрией (Westwood)
4) Для всех локальных интерфейсов по умолчанию включен sfq шейпер

0.1.6
1) Задействованы расширенные режимы wifi (которые будут доступны в будущем из консоли)
2) Косметические правки ядра на предмет предупреждений компилятора
3) Auto DMZ теперь работает корректно
4) Из web интерфейса удалены опции не поддерживаемые 2.6 ядром
5) Поправлено неправильное отображение опций в Remote Access
6) Теоретически решена проблема с 802.11n клиентами
7) Временно отключен режим WiFi Client
8) Расширены настройки IPQoS
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 17 comments