[devel] Новая схема ведения исходников ядра

Evgeny Sinelnikov sin на altlinux.org
Пн Янв 3 08:33:06 MSK 2022


пн, 3 янв. 2022 г. в 09:07, Evgeny Sinelnikov <sin at altlinux.org>:
>
> С новым годом!
>
> чт, 23 дек. 2021 г. в 10:08, Andrey Savchenko <bircoph at altlinux.org>:
> >
> > On Thu, 23 Dec 2021 06:28:34 +0300 Mikhail Novosyolov wrote:
> > >
> > > 06.12.2021 15:12, Anton Farygin пишет:
> > > > On 06.12.2021 14:41, Anton V. Boyarshinov wrote:
> > > >> В Mon, 6 Dec 2021 15:27:11 +0400
> > > >> Alexey Sheplyakov <asheplyakov at basealt.ru> пишет:
> > > >>
> > > >>> 2) Некий логически монолитный кусок кода (например, LSM модуль AltHa, или
> > > >>>     драйвер dwmac-baikal) оказывается размазанным тонким слоем по N коммитам.
> > > >>>     При переносе на более свежее ядро из этих N коммитов всё равно надо сделать
> > > >>>     один патч (а затем доработать его вслед за изменившимися API).
> > > >> Да, эти "стабильные" патчи живут в отдельных ветках feat-* и fix-*
>
> Где их искать?
> Под какие мажорные релизы они поддерживаются?
> Можно ли рассчитывать, что патчи из этих веток лягут без конфликтов на
> более старшие минорые версии тех мажорных, под которые они ведутся?
>
> Здесь я их не наблюдаю:
> - http://git.altlinux.org/gears/k/kernel-image-std-def.git
> - http://git.altlinux.org/gears/k/kernel-image-un-def.git
>
> Наверное, это вычисляется. Но для этого потребуется:
> - вытянуть гигабайт исходников;
> - выяснить какой командой это вычисляется;
> - то есть потратить кучу времени без гарантии, что не ошибся и всё
> правильно сделал;
> - без возможности быстро посмотреть через веб-интерфейс ту часть
> истории, которая (казалось бы) должна быть доступна.
>

Я нашёл вот такой репозиторий:
http://git.altlinux.org/people/kernelbot/packages/kernel-image.git

Какие-то ветки там точно имеются.
Но вот какие, для какого ядра, в каком порядке нужно применять
совершенно непонятно.

Как это выяснить?

Я так полагаю, что предлагается такой вариант:
git log --merges --grep=fix- --grep=feat- --author=altlinux

Плохо и неудобно, что это не наглядно. Допустим.

Но как, взяв эти ветки, можно рассчитывать, что они лягут на то или
иное мажорное ядро.

Хорошо, что хоть эти ветки обновляются с --force, но тогда как найти
предыдущие варианты, которые "вмержены" в более старые, всем
интересные, актуальные LTS-ядра? И как потом можно рассчитывать, что
получившиеся исходники будут ровно теми, которые мы собираем? Мы ведь
и "начерипикать" можем (и делаем это регулярно)?

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

Именно эту проблему и предложено решить новой схемой ведения
исходников ядра. Может быть эту проблему можно решить и иначе. Для
начала, хотелось бы зафиксировать, что такая проблема есть (иначе
зачем её решать?)


[...]



-- 
Sin (Sinelnikov Evgeny)


Подробная информация о списке рассылки Devel