LINUX.ORG.RU

Избранные сообщения mky

intel pentium n3530 - firefox не хочет в аппаратное ускорение

Форум — Linux-hardware

firefox 102esr из реп дивана. Установлены все нужные драйверы: i965 и mesa. vaapi в mpv работает прекрасно - не грузит проц вообще. firefox же чего-то кочеврыжится. Переменные выставлены нужные:

export MOZ_DISABLE_RDD_SANDBOX=1
export LIBVA_DRIVER_NAME=i965

Перепробовал много настроек самых разных, в консоли ничего не было видно про vaapi при запуске фокса. Вот что выводит about:support

HW_COMPOSITING	
available by default

OPENGL_COMPOSITING	
available by default
Заблокировано; код ошибки BLOCKLIST_FEATURE_FAILURE_SOFTWARE_GL
WEBRENDER

available by default
force_enabled by user: Force enabled by pref

WEBRENDER_QUALIFIED	
available by default

WEBRENDER_COMPOSITOR	
disabled by default: Disabled by default

blocklisted by env: Blocklisted by gfxInfo
blocked by runtime: Cannot be enabled in release or beta

WEBRENDER_PARTIAL	
available by default

WEBRENDER_SHADER_CACHE	
disabled by default: Disabled by default

WEBRENDER_OPTIMIZED_SHADERS	
available by default

WEBRENDER_ANGLE	
available by default
unavailable by env: OS not supported

WEBRENDER_DCOMP_PRESENT	
available by default
disabled by user: User disabled via pref
unavailable by env: Requires Windows 10 or later
unavailable by runtime: Requires ANGLE

WEBRENDER_SOFTWARE	
available by default

WEBGPU	
disabled by default: Disabled by default
blocked by runtime: WebGPU cannot be enabled in release or beta
X11_EGL	
available by default
force_enabled by user: Force enabled by pref
blocklisted by env: Blocklisted by gfxInfo

DMABUF	
available by default

VAAPI	
disabled by default: VAAPI is disabled by default
force_enabled by user: Force enabled by pref

VP8_HW_DECODE	
available by default

VP9_HW_DECODE	
available by default

Ничего не выводилось пока не включил glx.x11-egl.force-enabled. В терминале vaapi хорошо загрузилось, но проц всё-равно также грузится 80% на 480p видео. Вот установил пакет intel-microcode, не помогло. Что ему этому файрфоксу надо? Куча настроек для апп. ускорения от разных версий - разные, и ничего не работает. Значит, видно, что x11_egl заблочен в фоксе. Почему? Значит, пошел смотреть https://searchfox.org/mozilla-release/source/widget/gtk/GfxInfo.cpp Оказывается, нужна новейшая версия месы.

////////////////////////////////////
    // FEATURE_X11_EGL
    APPEND_TO_DRIVER_BLOCKLIST_EXT(
        OperatingSystem::Linux, ScreenSizeStatus::All, BatteryStatus::All,
        WindowProtocol::All, DriverVendor::MesaAll, DeviceFamily::All,
        nsIGfxInfo::FEATURE_X11_EGL, nsIGfxInfo::FEATURE_BLOCKED_DRIVER_VERSION,
        DRIVER_LESS_THAN, V(21, 0, 0, 0), "FEATURE_ROLLOUT_X11_EGL_MESA",
        "Mesa 21.0.0.0");

Нихрена! У меня диван стэйбл, и на роллинг нет возможности перейти, спасибо разрабам файорфокса. Неужели все пользователи этого слабенького проца должны юзать всё новое? Я думаю, причина того, что vaapi-egl фокса не пашет, не только в этом. У кого такая встройка - отпишитесь пожалуйста что используете)) Сейчас запускаю фокс в консоли - а он сразу после запуска, передает управление терминалу, будто бы с & запущено.

 , ,

gtk222
()

Свой почтовый сервер. Некоторые спамфильтры нас не пропускают.

Форум — Admin

После того, как яндекс изъявил желание стать платным для корп клиентов, с нашей стороны было изъявлено желание развернуть свой почтовый сервер. Что сопсна на новогодних и было сделано. ПО - postfix+dovecot. Из web-интерфейса старый-добрый кубик (RoundCube) на nginx v.1.18, php v.7.4.33.
Результат проверки mail-tester показывает 10/10. Helocheck говорит что host mail.abuseat.org[54.93.50.35] said: 550 *** The HELO for IP address (IP нашего почтовика) was ‘mail.наш.домен’ (valid syntax) *** (in reply to RCPT TO command).
Все письма доставляются всем, за исключением:

  1. gmail, туда они попадают в спам, но доходят
  2. Почтовый сервер, где «прикручен» antispam.lotte.net, который возвращает 554 refused to talk to me.
  3. И почтовый сервер, у которого антиспам spamhaus. Там ребята выкладывают лог, что значение HELO нифига не наше, а вообще какие-то левые, буржуйские домены. Либо предлагают закрыть 25 порт, но тогда входящая почта встаёт колом.

В логах почта ходит нормально и ничего подозрительного нет. Единственное что основной наш домен, на котором крутится сайт example.com на IP 11.11.11.11, а почтовый сервер mail.example.com на IP 22.22.22.22, но соответствующая запись example.com MX на mail.example.com сделана.
Конфиг postfix’a
Конфиг Dovecot’a
iptables вдруг пригодится
Я не совсем понимаю куда ещё посмотреть. Где и что не так работает.

 ,

Shprot
()

Исходники порта Doom для кнопочных телефонов на чипе SC6531

Новости — Игры
Группа Игры

Опубликованы исходники порта Doom для кнопочных телефонов на чипе Spreadtrum SC6531. Модификации чипа Spreadtrum SC6531 занимают около половины рынка дешевых кнопочных телефонов российских брендов (остальное за MediaTek MT6261, другие чипы редкость).

В чём состояла сложность портирования:

  1. Сторонние приложения на этих телефонах не предусмотрены.
  2. Малый объём ОЗУ - всего 4 мегабайта (бренды/продавцы часто указывают это как 32МБ - но это введение в заблуждение, так как мегабиты, а не мегабайты).
  3. Закрытая документация (можно найти только утечку ранней и неполноценной версии), поэтому многое добывалось методом реверс-инжиниринга.

В основе чипа процессор ARM926EJ-S с частотой 208 МГц (SC6531E) или 312 МГц (SC6531DA), может понижать частоту до 26 МГц, архитектура процессора ARMv5TEJ (нет деления и операций с плавающей точкой).

Пока что исследована работа лишь малой части чипа, это USB, экран и клавиши. Поэтому поиграть можно только при телефоне подключенном к компьютеру USB кабелем (ресурсы для игры передаются с компьютера), также в игре нет звука.

На данный момент запускается на 6-и из 9-и протестированных телефонов на чипе SC6531. Для перевода этого чипа в загрузочный режим, нужно знать какую клавишу удерживать при загрузке, клавиши для протестированных моделей: F+ F256: *, Digma LINX B241: центр, F+ Ezzy 4: 1, Joy’s S21: 0, Vertex M115: вверх, Vertex C323: 0.

Также были опубликованы два видео: с демонстрацией игры на телефоне и запуском на еще 4-х телефонах.

P.S.: Похожее было опубликовано на OpenNet, новость от меня, только отредактированная админом сайта.

Без лицензии, сложно сказать какая лицензия должна быть для кода полученного реверс-инжинирингом, считайте как копилефт - копируйте и изменяйте, давайте изменять другим.

Игра Doom была использована для привлечения внимания, в качестве примера, я бы хотел свободную прошивку для кнопочных телефонов. Их чипы гораздо мощнее, чем они используются в прошивке. Причём железо дешевое и массовое, в отличие от редких телефонов с «открытых» ОС или позволяющих выполнять свой код. Пока никого не нашел, чтобы скооперироваться, а реверс-инжиниринг тяжелое развлечение. Для начала было бы хорошо найти управление SD картой и управление энергопотреблением, чтобы можно было использовать эти телефоны как игровую приставку. Дополнительно к Doom можно портировать NES/SNES эмулятор.

>>> Исходный код

 , , , ,

jpegqs
()

Ext4 shared_blocks как создают такие образа?

Форум — General

Наткнулся в андройде на образы ext4 с дедупликацией на блочном уровне.

В фичах стоит shared_blocks.

Такой образ монтируется только при явном указании ro

mount -o ro systaem_a.img test

В режиме rw ругается на неподдерживаемые фичи.

EXT4-fs (loop0): couldn't mount RDWR because of unsupported optional features (4000)

Если добавить ему места и раздедуплицировать, то фича shared_blocks исчезает

resize2fs -f system_a.img 6G
e2fsck -y -E unshare_blocks system_a.img

было:
Filesystem features:      ext_attr dir_index filetype extent sparse_super large_file huge_file uninit_bg dir_nlink extra_isize shared_blocks

стало:
Filesystem features:      ext_attr dir_index filetype extent sparse_super large_file huge_file uninit_bg dir_nlink extra_isize

и теперь можно монтировать образ в rw.

Но вопросы. Какого хрена нигде не описана эта фича? Как вообще создают такие образы? Можно ли обратно сжать раздедуплицированный образ? Три часа гугления - ноль результатов…

 , shared blocks

AVL2
()

Интерфейс цифрового осциллографа

Форум — General

Фырочки всем.

Какие есть опенсорсные морды для вывода осциллограмм и управления девайсами? Начал расковыривать протокол Hantek 2d72 - вроде всё довольно просто, теперь встал вопрос, к какой софтине это приделать, не писать же с нуля.

Пока посматриваю на Sigrok/PulseView ради декодиров, но по интерфейсу он очень уныл.

 , ,

izzholtik
()

Выгрузить видеодрайвер ядра на лету

Форум — Linux-hardware

Для того, чтобы проверять результат вносимых изменений в код видеодрайвера (radeon, amdgpu), хотелось бы его загружать и выгружать на лету. Загрузка через insmod работает, а выгрузка rmmod нет. lsmod пишет что он кем то одним используется и не указано кем. Слишком муторно перезагружать после каждого теста.

Видеодрайвер не используется для десктопа, для десктопа используется встроенная графика Intel с другим драйвером.

 , , , ,

X512
()

Что быстрее (XGetImage+XPutImage) VS XCopyArea VS (XShmGetImage + XShmPutImage) VS GTK+?

Форум — Development

Доброго времени суток.

Написал программу, которая содержимое одного окна отображает в другом. Допустим у меня есть Xlib'ный тип Window, есть переменные этого типа, SrcWin и TrgWin, для удобства у обоих один и тот же размер (683*752), который никогда не изменится, одна глубина изображения. SrcWin это окно какого то реального приложения.

Программа раз в 40мс копирует изображение из SrcWin в TrgWin, с помощью XGetImage и XPutImage, на i5-3337U программа берёт почти 20% процессорного времени, процесс Xorg загружает проц примерно на столько же.

Программа работает как ожидалось, однако меня сильно напрягает высокая нагрузка на процессор.

Три вопроса: 1) Альтернативы, указанные в названии темы, могут значительно снизить нагрузку на процессор? Просто было бы здорово, не копировать данные, а отображать буфер пикселей одного окна в соответствующий буфер другого (скопировать значение указателя на область памяти с изображением которое надо отобразить).

2) Читал, что в некоторых тулкитах типа QT, есть такая штука как window-damage event, которую я понимаю как событие, которое появляется, если хотя бы один пиксель был в окне изменён, правильно ли я понимаю суть этого события, и есть ли аналог в Xlib? А то подход, когда надо гонять данные туда сюда каждые 40мс, даже если ничего не поменялось, не выглядит как лучшее решение данной задачи.

3) Может кто в курсе, как работает window-switcher(alt+tab) в KDE? Он ведь отображает содержимое окон в реальном времени, ну или во всяком случае оперативно реагирует на изменения окон которые он отрисовывает, и при этом не напрягает процессор.

 , , , ,

awpe
()

Объявлено о выходе одноплатного компьютера Raspberry Pi Zero 2 W

Новости — Hardware and Drivers
Объявлено о выходе одноплатного компьютера Raspberry Pi Zero 2 W
Группа Hardware and Drivers

Спустя 6 лет после появления Raspberry Pi Zero анонсировано начало продаж следующего поколения одноплатника в этом формате — Raspberry Pi Zero 2 W. По сравнению с предыдущей моделью, сходной по характеристикам с Raspberry Pi B, но с модулями Bluetooth и Wi-Fi, эта модель основана на чипе Broadcom BCM2710A1, таком же как и на Raspberry Pi 3. По формфактору новая плата может быть прямой заменой Pi Zero, в то время как её заявленное быстродействие в 5 раз выше.

На данный момент продажи начались только в некоторых магазинах, а так же бесплатно плата придет подписчикам (в том числе и новым) журнала MagPi.

( Технические характеристики )

>>> Подробности

 , ,

tis
()

Задачка на самый быстрый подсчет встречаемости слов

Форум — Development

Привет,

По мотивам темы: Различия между macOS и GNU/Linux

Есть файлик. Вот он: https://disk.yandex.ru/d/XaavsEkOvCT4HQ

Нужно пройтись по файлику и посчитать встречаемость каждого слова в тексте. Словом считается любая последовательность букв от a до z. Регистр нужно привести к одному. Любой другой символ прерывает слово.

Результат записать в другой файл в формате: <количество> <слово>. Например, текст: «cat, cat, cat». Ответ будет такой: «3 cat». Также, слова при выводе нужно отсортировать по их встречаемости.

Например первые несколько строк вывода из приведенного выше файла будут такими:

3343241 the
1852717 and
1715705 of
1560152 to
1324244 a

Дополнительное условие, нужно, чтобы ваша программа отрабатывала быстрее, чем за 7 секунд на Core i5-4690 @ 3.7 GHz.

Понятно, что железяки у всех разные, поэтому если участвуете, пишите на каком оборудовании вы запускали свою программку.

Вроде как BceM_IIpuBeT хотел поучаствовать. Может еще кто-то присоединится.

Я свою штуку написал. Отрабатывает примерно за 5 секунд на Мак-мини 2012-го года, core i7 @ 2,3 GHz.

 

hibou
()

Посоветуйте одноплатник для работы в качестве десктопа

Форум — Desktop

Subj. Чтобы искаропки заработало 3D-ускорение, чтобы декодирование было hardware’ное, чтобы ddr4 от 4gb, чтобы какой дистро не взял (aarch64) - оно просто работало. Интересует только одноплатник на arm. С малиной напердолился уже вдоволь - ускорение 3D/декодирование видео если и работает то только в RaspiOS 32bit, в aarch64 только 3D только и смог завести, потому и ищу замену.

 ,

shashilx
()

О вреде ООП надо говорить! Это - слишком важная тема, чтобы отмалчиваться.

Форум — Talks

Здравия всем!

Я редко пишу на этом форуме, никого здесь не знаю… Но всё-таки решил попробовать. Удалят - и ладно.

Хочу лишь обратиться к молодому поколению программистов: в университете вам будут впаривать ООП - не ведитесь. Я много лет жизни потерял пытаясь понять что это за зверь. Это настоящая религия. Тебя убеждают что это хорошо, а когда ты понимаешь что это плохо - тебе говорят: ну ты просто ещё не знаешь паттернов, 5 принципов дяди Боба и т.д.

Много лет спустя, я поизучал эти паттерны, принципы и пришёл к выводу. Всё это демагогия. Это реально секта. Создана парадигма, которая не работает из-за противоречия в самой своей сути. И чтобы оправдать её существование была создана куча теорий, которые добавляют сложность в систему.

Есть много статей, разбирающих по косточкам различные аспекты ООП. Это тяжелое чтиво и мало кто из студентов сможет понять о чём речь. Тут сессии, курсовые, языки, вечеринки. Не до философии. Но всё сводится именно к философии:

информация ничего не значит без контекста.

В классическом примере ООП используется для пользовательского интерфейса. ООП объект хочет быть самостоятельным, «знать» как себя отобразить. Но это зависит от размера экрана, а если вывод в документ PDF, то предпочтительнее вектор, а не растр и так далее. Рано или поздно работа с ООП постоянно натыкается на конфликт: как передать контекст объекту.

Об этом много сказано, есть много примеров и разборов. Я уверен что студентам некогда читать длинные статьи где много буков. Они легко гуглятся и вот одна из наиболее кратких со ссылками на более подробные https://habr.com/ru/post/451982/

В идеале, хочу создать новую статью, ещё короче но с конкретными примерами. Просто реально трудно общаться с ООП-зомбированными людьми. Их так учили 5 лет и они даже не допускают мысли что их разводили все эти годы…

Перемещено xaizek из development

 

svyatozar
()

Потянет ли старый одноядерный ноутбук 1080p с ютуба?

Форум — Linux-hardware

Вот мне тоже стало интересно, и вот в один прекрасный день на авито нашел объявление что целых 4 ноутбука продавались за 1100 рублей (275 каждый). Я не мог удержатся и купил их…

Я запустил archlinux32 с флешки (ide-винты были полностью мертвы) и заработало оно шустрее чем я изначально ожидал.

Просто много раз читал (и здесь тоже) что даже core 2 duo «разве что на помойку» и т.д. Вот я решил развеить мифы:

https://youtu.be/om1Y5VNZ5pM

~14:00 я запускаю fullhd, причём онлайн. Без загрузки. И в интернет прекрасно выхожу.

Характеристики пациента:

  • Pentium m 1.7 Ghz
  • 2 GB DDR2 ram
  • intel gma915 graphics

P.s. Специально для @eco_dd mpv hardware acceleration на вяленом (комментарий) я на этом же ноутбуке сравнил одно и тоже видео в mpv (как gpu, так и xv) и в mplayer. Mpv однозначно сливается.

 , , , ,

gtk3
()

Какой VPN сервис юзает ЛОРовец в конце 2020 года?

Форум — Security

Сабж. Где нормально работает WireGuard под линуксом, где меньше проблем с капчами и т. д.

 , ,

Pacmu3ka
()

Медленно масштабируются X11 окна

Форум — Desktop

Программы на голом протоколе X11 или Motif (xclock, acme, nedit) медленно меняют размер окна и содержимое дёргается. С программами на Qt/GTK такого не наблюдается. Кто нибудь знает, чем это вызвано? X.Org сломали?

openSUSE, KDE

 ,

X512
()

В питон завозят паттерн-матчинг

Форум — Development

Кто бы мог подумать, ещё лет 5 назад, что питон получит типизацию и функциональщину. Но нет:

def is_tuple(node: Node) -> bool:
    match node:
        case Node(children=[LParen(), RParen()]):
            return True
        case Node(children=[Leaf(value="("), Node(), Leaf(value=")")]):
            return True
        case _:
            return False

История показывает, что участь любого популярного ЯП - С++ ужас.

https://www.python.org/dev/peps/pep-0622/

 

RazrFalcon
()

2 ip и 2 шлюза на 1 машине

Форум — Admin

Подскажите, возможно ли поставить 2 ip и 2 шлюза (с разных диапазонов) на 1 интерфейс. rhel6, 2.6.32 kernel

xZergx
()

wildcard, ksh, прогулка по файлам, aix

Форум — General

Чойта я туплю отчаянно. AIX (ох, сейчас камней будет). ksh. Хочу в скрипте сделать что-то с каждым файлом *.dat в каталоге.

Вариант 1:

for f in /dir/*.dat; do

работает хорошо, если файлы есть. Но если нет - тело цикла вызывается один раз с параметром /dir/*.dat. Приходится внутри делать какое-нибудь глупое if [ -f $f ]

Вариант 2:

ls /dir/*.dat | while read $f; do

тоже работает, но, если файлов нет, ls ругается. Приходится перенаправлять 2>/dev/null, что не очень красиво

Вариант 3:

find /dir -name '*.dat' | while read $f; do

не совсем то, ибо лезет вглубь, а я не хочу (тамошний find не знает про maxdepth).

Как кошерно? Я понимаю, что надо использовать нормальный linux, bash, find и т.д. Но условия в задачке именно такие.

 ,

svu
()