From: Vasiliy Kovalev <kovalev@altlinux.org> To: Vitaly Chikunov <vt@altlinux.org> Cc: ALT Linux kernel packages development <devel-kernel@lists.altlinux.org> Subject: Re: [d-kernel] [PATCH 6.15 0/4] config: Remove obsolete options Date: Sun, 20 Apr 2025 10:15:06 +0300 Message-ID: <3cec8931-d4f3-10f2-dc91-c1718f0e836a@basealt.ru> (raw) In-Reply-To: <sxbdknc4dapgbqh4hg5zrs4hupsd2d5hl5pgapnlt3dcrvhw5w@uzy763qvgsnk> Vitaly, 20.04.2025 06:18, Vitaly Chikunov wrote: > Vasiliy, > > On Sun, Apr 20, 2025 at 05:35:38AM +0300, Vasiliy Kovalev wrote: >> 19.04.2025 22:37, Vitaly Chikunov wrote: >>> Vasiliy, >>> >>> On Sat, Apr 19, 2025 at 06:29:58PM +0300, Vasiliy Kovalev wrote: >>>> Эта серия патчей и последующие в течение ~5 мин., >>>> имеющие однотипный шаблон *Remove obsolete options*, >>>> удаляют устаревшие опции в соответствующих config* >>> >>> Нет цели все чистить, так что отсылка на чистку не обоснование >>> изменения. >> >> Vitaly, можете тогда прояснить обратную цель - какое обоснование >> оставлять устаревшие опции в ядрах, которые не оказывают никакого >> влияния на сборку ядра и зачем их наследовать в следующие версии >> веток? > > Я уже пояснил. За не именем "системы конфигурации", это наилучший вариант > для бекпортирования изменений в конфиги. > >> Например, с таким подходом в конфиге ветки 6.12 набралось >> почти 400 лишних строк: >> >> (патч "config: Remove obsolete options (unused in v6.12-v6.15)" поверх 6.12) >> git diff --stat HEAD~1 >> config | 382 -------------------------------------------------------------- >> 1 file changed, 382 deletions(-) >> >> Вероятность возвращения связанного функционала близка к нулю, >> особенно для стабильных веток. Даже если такое и произойдет, вернуть >> конкретную опцию не является существенной проблемой, к тому же часть >> популярных опций задается по-умолчанию в исходном коде. >> >>> Тем более, это делает будущие патчи на конфиги не применимы >>> ко всем конифгам - придется делать для каждого бранча/флейвора отдельный >>> патчсет. Что осложнит и их разработку, и применение. >> >> Но ведь это уже нарушено, например, ваши коммиты в ветках 6.14+ >> ee7084f38bcf ("config: Enable more Intel hardware") >> 240723f0ad50 ("config: Enable CONFIG_NTSYNC=m") >> не бэкпортированы в ближайшие 6.12/6/13 , причем, помимо >> консистентности конфигов, патчи на первый взгляд также актуальны. > > Их лучше скопировать. Для опций влияющих на поведение ядра я бы > предпочел, чтоб была задержка в их прохождении в стабильные ядра, чтоб их > успели протестировать. Если они вызовут нестабильность у ядра, то не > желательно их включать сразу у всех ядер. > > Кроме того, небольшой рассинхрон, это небольшой рассинхрон, вы же > предлагаете удалять много опций в зависимости от версии, что вызовет > больший рассинхрон. > >> >> Ещё момент, на который стоит обратить внимание, >> изменения коммита f495aad09ab5 ("config: unset CONFIG_BLK_DEV_FD") >> есть в ветках 6.12/6.14/6.15 >> но нет в ветке 6.13 > > Видимо, пропустил. Скопировал этот коммит сейчас. Спасибо что обратили внимание. > >> >> В противном случае, я бы для всех веток sisyphus ограничился бы >> отправкой одного патча из этой серии: >> [PATCH 6.15 1/4] config: Remove obsolete options (unused in v6.12-v6.15) >> >> Отправленные патчи "чистки конфигов" для остальных веток (на базе 6.1 и 5.10 >> ядер) >> этой стратегии придерживаются. >> >>>> файлах для удобства дальнейшей оценки конфигурации. >>> >>> Пожалуйста, не используйте исходник конифига для оценки >>> конфигурации, используйте итоговый конфиг из собранных ядер. >> >> Согласен и такой подход конечно правильный, но это также и противоречие, >> т.к. Вы сами анализируете исходники перед вынесением оценки конфигурации, >> например тут https://lore.altlinux.org/devel-kernel/20240610132835.qnphs5hv4rrym363@altlinux.org/ >> вероятно по той же причине - удобство и скорость первичной оценки. > > Исходный конфиг показывает намерение маинтайнеров. Извините, но это противоречивая позиция - нельзя одновременно утверждать, что исходные конфиги не следует использовать для оценки, и в то же время обосновывать их использование "намерениями маинтайнеров". Либо исходные конфиги информативны и полезны для анализа (и тогда мои выводы об устаревших опциях обоснованы), либо нет. Отмечу, что предложенные патчи как раз основаны на анализе обоих типов конфигов - как исходного, так и итогового из собранных ядер. > >> >> -- >> >> Итого, чтобы придти к какому-то компромиссу, предлагаю для веток >> sisyphus (6.12+) и остальных (на базе 5.10 и 6.1) следующие действия: >> >> 1) выполнить бэкпорт (cherry-pick) патчей для 6.13: >> f495aad09ab5 ("config: unset CONFIG_BLK_DEV_FD") >> 240723f0ad50 ("config: Enable CONFIG_NTSYNC=m") >> ee7084f38bcf ("config: Enable more Intel hardware") >> >> 2) выполнить бэкпорт (cherry-pick) патчей для 6.12: >> 240723f0ad50 ("config: Enable CONFIG_NTSYNC=m") >> ee7084f38bcf ("config: Enable more Intel hardware") > > В принципе, так и надо сделать. > >> >> 3) применить один патч для всех (sisyphus 6.12-6.15) веток из этой серии: >> [PATCH 6.15 1/4] config: Remove obsolete options (unused in v6.12-v6.15) >> >> 4) применить остальные отправленные (*Remove obsolete options*) патчи >> для соотв. веток на базе 5.10 и 6.1 ядер. > > Эти патчи не приносят пользы, но вносят ещё больший рассинхрон в конфиги. > > Желательно или придумать удобную систему конфигурирования 13 ядер > (умножить на кол-во архитектур), или не ломать то, что есть. То что > есть -- не так плохо как может показаться на первый взгляд. $ git diff --stat kernelbot/un-def/p9..kernelbot/un-def/p10 -- config | tee config | 1217 ++++++++++++++++++++++++++++++++++++++++------------------------ 1 file changed, 763 insertions(+), 454 deletions(-) $ git diff --stat kernelbot/un-def/p10..kernelbot/6.12/sisyphus -- config | tee config | 367 +++++++++++++++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 300 insertions(+), 67 deletions(-) $ git diff --stat kernelbot/un-def/p9..kernelbot/6.12/sisyphus -- config | tee config | 1538 +++++++++++++++++++++++++++++++++++++++++++--------------------- 1 file changed, 1040 insertions(+), 498 deletions(-) где un-def/p9 - ветка с ядром 5.10 un-def/p10 - ветка с ядром 6.1 При таких масштабных расхождениях аргумент о "небольшом рассинхроне" и удобстве бэкпортирования уже неактуален - конфиги давно радикально отличаются, и простой cherri-pick не всегда сработает без ручного вмешательства. Удаление ~400 устаревших строк значительно не усугубит ситуацию, но улучшит читаемость и понимание конфигов. > У других > дистрибутивов тоже не идеальные системы, я разбирался в вопросе. До возможного появления "системы конфигурирования" чистка от устаревших опций - это скорее шаг к упрощению, а не усложнению. Меньше "шума" в конфигах сделает и текущую поддержку, и будущую систематизацию более прозрачной. >> >>>> >>>> Эти опции выявлены анализом исходного кода ядра и >>>> конечного конфиг файла (/boot/config*), поставляемого >>>> kernel-image*.rpm пакетом соотв. ветки. >>>> >>>> [PATCH 6.15 1/4] config: Remove obsolete options (unused in v6.12-v6.15) >>>> [PATCH 6.15 2/4] config: Remove obsolete options (unused in v6.13-v6.15) >>>> [PATCH 6.15 3/4] config: Remove obsolete options (unused in v6.14-v6.15) >>>> [PATCH 6.15 4/4] config: Remove obsolete options (unused in v6.15) >>> >>>> _______________________________________________ >>>> devel-kernel mailing list >>>> devel-kernel@lists.altlinux.org >>>> https://lists.altlinux.org/mailman/listinfo/devel-kernel >>> >>> _______________________________________________ >>> devel-kernel mailing list >>> devel-kernel@lists.altlinux.org >>> https://lists.altlinux.org/mailman/listinfo/devel-kernel >> >> -- >> -- >> Thanks, >> Vasiliy -- -- Thanks, Vasiliy
next prev parent reply other threads:[~2025-04-20 7:15 UTC|newest] Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top 2025-04-19 15:29 Vasiliy Kovalev 2025-04-19 15:29 ` [d-kernel] [PATCH 6.15 1/4] config: Remove obsolete options (unused in v6.12-v6.15) Vasiliy Kovalev 2025-04-19 15:30 ` [d-kernel] [PATCH 6.15 2/4] config: Remove obsolete options (unused in v6.13-v6.15) Vasiliy Kovalev 2025-04-19 15:30 ` [d-kernel] [PATCH 6.15 3/4] config: Remove obsolete options (unused in v6.14-v6.15) Vasiliy Kovalev 2025-04-19 15:30 ` [d-kernel] [PATCH 6.15 4/4] config: Remove obsolete options (unused in v6.15) Vasiliy Kovalev 2025-04-19 19:37 ` [d-kernel] [PATCH 6.15 0/4] config: Remove obsolete options Vitaly Chikunov 2025-04-20 2:35 ` Vasiliy Kovalev 2025-04-20 3:18 ` Vitaly Chikunov 2025-04-20 7:15 ` Vasiliy Kovalev [this message] 2025-04-20 23:47 ` Vitaly Chikunov
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=3cec8931-d4f3-10f2-dc91-c1718f0e836a@basealt.ru \ --to=kovalev@altlinux.org \ --cc=devel-kernel@lists.altlinux.org \ --cc=vt@altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux kernel packages development This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel-kernel/0 devel-kernel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel-kernel devel-kernel/ http://lore.altlinux.org/devel-kernel \ devel-kernel@altlinux.org devel-kernel@altlinux.ru devel-kernel@altlinux.com public-inbox-index devel-kernel Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel-kernel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git