LINUX.ORG.RU
ФорумTalks

BFS и ядро 4.7.0-rc4, или поломанный шедулер

 , ,


0

2

//UPD Справился самостоятельно, кому нужен патч - обращайтесь tim[dot]dorohin[at]gmail.com

//UPD2 в ядре перефигачили не одну подсистему. надо переделывать, cpu-hotplug(а с ним и suspend) не работают нормально

tl;dr: Help разобраться шо наворотили с шедулингом в ядре 4.7

Собственно из-за кончины старого компа я случайно celeron n3050*

Поддержка ядром у этого г-на -> ~0%

Нормально пашет только 4.7-rc{1..4}

Но скорость.. соответствует железу. И BFS уже исправлял ее на ядре 4.6.2 ( где штырит i915 -_- )

И все бы было хорошо... только товарищи муд^W многоуважаемые разработчики ядра решили оптимизировать шедулер под свои суперкомпьютеры и поломали интерфейс ядро<-->шедулер...

Вообщем, прошу помощи от мудрых сайта сего, ибо третий день пытаюсь переписать BFS...

cast post-factum

P.S. шедулер поломанный, ибо если то, что сейчас в ядре работает хорошо и быстро, то я - баклажан P.P.S в толксах ибо чую срач(

Тебе нужно сделать наоборот — завести 4.6. Что в 4.7 появилось такого, из-за отсутствия чего 4.6 у тебя не работает?

post-factum ★★★★★ ()
Ответ на: комментарий от post-factum

Штеуд свое пофисил -_- Там еще больше патчей и говн мамонта перекопали(

timdorohin ★★★ ()
Ответ на: комментарий от post-factum

Имею дело с арчем, стоковое ядро 4.6.2 - глюки видеодрайвера. На собранном из AUR 4.7.0-rc4 такого нет. Тормозят оба, пересобранное 4.6.2 с BFS не тормозит, но графика все равно глючит.

timdorohin ★★★ ()
Ответ на: комментарий от timdorohin

Что вы с ним такое делаете, что нужен BFS?

dimss ★★★★★ ()

Судя по твоей «диагностике» с шедулером как раз всё хорошо. Ищи проблему в другом месте. 90% это дрова. Иногда люди ещё любят «тюнинговать» и накручивают всяких sysctl или «оптимизируют libc».

true_admin ★★★★★ ()
Ответ на: комментарий от true_admin

А, я тупанул, ты там ядро конпеляешь... Ну так сделай bisect и посмотри где поломали.

true_admin ★★★★★ ()
Ответ на: комментарий от dimss

Использовать пытаюсь. Увы, но даже опенок шевелется небыстро без него...

timdorohin ★★★ ()
Ответ на: комментарий от true_admin

Я нашел где поломали еще в lkml. Йа не осиляю понять как к измененной системе взаимодействия bfs прикрутить

P.S. моя не уметь в гит. и воопще я погромист на Action Script, чутка знающий С...

timdorohin ★★★ ()
Ответ на: комментарий от timdorohin

моя не уметь в гит.

Инет прямо ломится от туториалов по гит. Там нечего уметь, даже я освоил этот чёртов бисект.

А вообще, что мешает тупо взять последнее рабочее ядро? Потому что если ты не настоящий сварщик то тебе вся эта возня тем более не нужна.

true_admin ★★★★★ ()
Ответ на: комментарий от post-factum

Да, нам n3050 в линуксах видео не работает от слова «почти вообще». В 4.2 работало, в 4.4 перестало, в 4.6 скорее не работает, в 4.7 по крайней мере слегка работает

no-dashi ★★★★★ ()

шедулер

OpenIndiana или вообще солярка.

Shadow ★★★★★ ()
Ответ на: комментарий от true_admin

Последнее рабочее ядро для BFS 4.6.2 - глючит из-за видеозатычки

Последнее рабочее с моей видеозатычкой ядро - 4.7.0-rc4, BFS не пашет с версии 4.7.0-rc1

Нашел изменения в ядре, попытаюсь проделать аналогичные над bfs...

timdorohin ★★★ ()
Ответ на: комментарий от Shadow

i915, Карл! i915! Из-за него ведь кактусы новые есть приходится...

timdorohin ★★★ ()
Ответ на: комментарий от timdorohin

Можно пойти от обратного и сделать git merge той ветке, где видеодрова.

post-factum ★★★★★ ()
Ответ на: комментарий от post-factum

Я таки начал пилить BFS, разобравшись с гитом. Оказалость, что несколько больших функций растащили по кусочкам, на много мелких, сейчас вручную делаю это же над BFS

А идея git merge меня немного пугает. К томуже я не до конца въехал как пользоваться им. Да и какая ветка мне нужна? И как сделать merge только нужной части mainline например? Кажется проще именно BFS портировать, рано или поздно ведь придется его портировать на 4.7, так лучше уж рано, чем поздно...

timdorohin ★★★ ()
Ответ на: комментарий от post-factum

Спасибо! Попробую...

Тогда получается мне нужно сначала взять ветку linux-4.6.y и в нее сделать merge?

timdorohin ★★★ ()
Ответ на: комментарий от timdorohin

Ну почти. Если оно потянет за собой куски 4.7, то просто так ты то, что хочешь, не получишь.

post-factum ★★★★★ ()
Ответ на: комментарий от Shadow

Даже драйвер в 4.6.2 оказался говном мамонта, и только с 4.7 появились патчи для моего говножелеза. Там что, intel-drm-next чтоле? Скорее всего работать не будет...

timdorohin ★★★ ()
Ответ на: комментарий от post-factum

Переписал BFS под новое api ядра(функцию migrate_call убили и растащили труп на четыре)

Конпеляю, помолитесь шоб заработало)

timdorohin ★★★ ()
Ответ на: комментарий от post-factum

УРА!!!

Короче, работает оно. уже под ним сижу. Проблем пока не нашел(возможно,временно)

Патч нужен? //там костыли планетарного масштаба )))

timdorohin ★★★ ()
Ответ на: комментарий от timdorohin

Было бы хорошо не только патч целиком, но и отдельно посмотреть, чего ты там нахимичил.

post-factum ★★★★★ ()
Ответ на: комментарий от post-factum

Вот патч

https://drive.google.com/file/d/0B0HmvX_y0YB5U2hsbUM4SVdUaUE/view?usp=sharing

Чего я где нахимичил? Посмотреть можно выдрав bfs.c из файла.

Больше я ничего не трогал. Если можешь протестировать, буду благодарен, сам не могу - железо не то, ведро часами собирать приходится... Однако общее улучшение отзывчивости заметил.

Химичил не в гите, но с его помощью: git log -p --follow kernel/sched/core.c на mainline сорцах. Вручную производил все касающиеся bfs изменения (у Коливаса использован каркас от cfs)

Может я там нагнал, я уже написал Коливасу в блог вопросец, пойдет или я чего-то поломал. Ты погромист опытней, тебе и выяснять :-)

timdorohin ★★★ ()
Ответ на: комментарий от post-factum

Только-что нашел: я сломал саспенд!!! Ураааа... Нет. це дуже плохо!

timdorohin ★★★ ()
Ответ на: комментарий от timdorohin

А я тем временем смотрю, что поменялось.

http://termbin.com/pr8v

Починишь саспенд — маякни :). Там точно что-то с CPU hotplug, они его хорошо поменяли в 4.7, ЕМНИП.

post-factum ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.