LINUX.ORG.RU

Линус Торвальдс отверг изменения в MMC для Linux 7.0: «полный мусор»

 , ,


0

2

Перед выходом ядра Linux 7.0 планировались некоторые интересные изменения в подсистеме Linux MultiMediaCard «MMC», такие как идентификаторы устройств NXP IW61x для чипов Wi-Fi через SDIO, поддержка дат производства после 2025 года, оптимизация безопасного erase/TRIM для некоторых eMMC-карт Kingston, очистка кода DW_MMC, поддержка Mediatek MT8189 в mtk-sd и различные обновления драйверов SHDCI.

Но Линус Торвальдс, проверив предложенный запрос на слияние, отклонил его, прокомментировав:

Нет.
Эти изменения — полная ерунда, и они даже не компилируются. По-видимому, они никогда не были в linux-next и не тестировались при сборке.
Если мы собираем этот файл core.o при CONFIG_MULTIPLEXER=m:

obj-$(CONFIG_MULTIPLEXER) += mux-core.o

но в include/linux/mux/consumer.h у вас есть

#ifdef CONFIG_MULTIPLEXER

что не будет истинным (поскольку определено CONFIG_MULTIPLEXER_MODULE), поэтому мы получим длинный поток чего-то вроде

drivers/mux/core.c:312:14: error: redefinition of ‘mux_control_states’

потому, что в заголовочном файле mux/consumer.h будет определена фиктивная функция-обертка. Другими словами, коммит ad314348ceb4 («mux: Add helper functions for getting optional and selected mux-state») — это чистый, ничем не разбавленный, непротестированный мусор.
Я не хочу видеть от Вас «исправленный» запрос на слияние. Это совершенно неприемлемо, и я больше ничего от вас не буду принимать в течение ближайшего периода слияния (this merge window). Прекратите присылать мне непротестированный хлам, который не был включен в linux-next и даже не проходит самую поверхностную проверку на наличие проблем.
Вы можете попробовать еще раз для версии 7.1, но только после включения в linux-next и надлежащего тестирования.

Таким образом, изменения в Linux MultiMediaCard теперь придется отложить до начала периода слияния Linux 7.1 в середине апреля, после дебюта стабильной версии Linux 7.0.

>>> Источник



Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 10)
Ответ на: комментарий от question4

В жизни нет смысла. Почему он должен быть в картинках на ЛОРе?

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

Какой смысл несёт картинка?

Перед Linux 7.0 были запланированы некоторые интересные изменения в MMC, такие как идентификаторы устройств NXP IW61x для чипов Wi-Fi через SDIO, поддержка дат производства после 2025 года, оптимизация безопасного erase/TRIM для некоторых eMMC-карт Kingstom, очистка кода DW_MMC, поддержка Mediatek MT8189 в mtk-sd и различные обновления драйверов SHDCI.
Sm0ke85
() автор топика
Ответ на: комментарий от question4

Где на картинке карты Kingston? Где оптимизация удаления с SSD?

При чем тут это, речь идет про wi-fi модули и MMC карты…?

Если что-то не устраивает, то предлагай свою картинку на общее обозрение.

Sm0ke85
() автор топика
Ответ на: комментарий от question4

Предлагаю этот рендер удалить как неинформативный.

Чем он тебе не информативен…? Что там можно еще поставить информативнее…? Ты ж даже не смог что-то на замену предложить… Опрос показал (и я с ним согласен), что картинки нужны, а эта картинка отлично отражает смысл статьи, а именно: в 7.0 не будет изменений в ММС, в частности идентификаторы устройств NXP IW61x (на картинке «похожий» чип)… Это точно лучше чем «ничего», точно лучше че просто пингвина бахнуть на белом фоне (т.к. пингвин точно не отражает смысл темы)… Если у тебя есть какие-то мысли - сделай картинку, которая будет отображать смысл статьи и как ты хотел не забудь там обязательно:

карты Kingston ... оптимизация удаления с SSD
Sm0ke85
() автор топика
Ответ на: комментарий от Sm0ke85

картинку, которая будет отображать смысл статьи

Линус с оттопыренным средним пальцем отображает.

Lusine
()

В вендорских ядрах половина кода -подобный хлам, так что хорошо, что не пускают. Пускай рефакторят

mittorn ★★★★★
()

автоперевод

Полный мусор

Верно. И картинка такая же.

Язабан.

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

Про парня из Эммасте ещё вспомни. Это даже ближе к теме и, насколько я понимаю, было реальной новостью, в отличие от.

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 1)

Как эти изменения вообще попали к финскому? Оно ж всё должно было сначала пройти мейнтейнеров полстстемы. И таки да, попасть в linux-next.

apt_install_lrzsz ★★★★
()

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

@Sm0ke85, я обеими руками поддерживаю твоё желание писать новости, но откровенный автоперевод в них пихать всё же не надо. Да, я как подтверждающий новости согласен где-то поправить стиль, где-то орфографию, это корректорская работа. Но вычитывать и полностью переделывать тексты, помещённые по принципу «на отвались» – это не задача модераторов и корректоров.

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 1)

А была бы автоматизация с CI/CD, и патч бы просто не прошел проверку автоматически, без всякого участия Линуса. И не было бы очередной типа драмы и новости. А может быть даже и не нужно было бы «ждать до 7.1», а выпускать протестированные ядра каждую неделю. Автоматизацию человечество не просто так придумало. А так из Линуса делают какого-то зануду, а скоро ещё и старпера.

seiken ★★★★★
()
Последнее исправление: seiken (всего исправлений: 2)

Нет. Эти изменения — полная ерунда, и они даже не компилируются. По-видимому, они никогда не были в linux-next и не тестировались при сборке.

Шёл 2026 год, а в Линуксе до сих пор не завезли CI для проверки собираемости коммитов перед рассмотрением. Вместо этого всё должен самолично проверять руководитель проекта и разводить истерики. Это простительно для небольшого хобби проекта, но это какой-то стыд для такого крупного международного проекта как Линукс.

Даже в Haiku есть CI для проверки патчей на собираемость.

X512 ★★★★★
()
Последнее исправление: X512 (всего исправлений: 1)
Ответ на: комментарий от X512

А что лучше: когда вася навайбил говна и через два латающих сборку коммита пропихнул его в ядро на том лишь основании, что говно кое-как сбилдилось, или когда васе с порога говорят «иди нахер со своим вайбом, отдохни полгодика»?

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

Вы с @seiken слова «даже» в новости не заметили?

«Даже не компилируются». Это такой тонкий намёк, что скорее всего, некомпилируемость – не единственная потенциальная проблема предложенных патчей. А если Линус всё равно будет проверять менее очевидные вещи, сделать разовую сборку руками для него не проблема.

Я-то не против CI, даже обеими руками за. Но что-то мне кажется, что Линусу виднее. Если кто-то сделает форк ядра с полноценной CI и будет туда тянуть неутверждённые (пока) патчи из LKML – мы с интересом посмотрим за результатом.

hobbit ★★★★★
()

Вангую, кто то выдал Ai шлак за свой код

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

«Даже не компилируются». Это такой тонкий намёк, что скорее всего, некомпилируемость – не единственная потенциальная проблема предложенных патчей.

Ну вообще на ранних этапах обсуждения предполагаемых изменений исходники вполне могут не компилироваться. Это по сути черновик для обсуждения того, нужно ли вообще это изменение, правильный ли подход к реализации, используемые алгоритмы и т.д.. Слишком расточительно доводить патч к готовому к принятию формату когда потом скажут, что надо всё переделать, хотя это можно было понять ещё из черновика патча. Не компилируемость сама по себе не означает, что патч вообще не заслуживает никакого внимания. Это означает только то, что патч не готов к принятию в текущем виде. Так что аргумент к «даже» не принимается.

В ваших словах просматривается какой-то культ и преклонение к фигуре Линуса Торвальдса как будто каждое сказанное им слово истина в последней инстанции и вам надо обязательно придумать и написать аргумент критикам как они не правы.

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

Не компилируемость сама по себе не означает, что патч вообще не заслуживает никакого внимания.

Чувак, окстись.

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

Вы никогда псеводкод не писали чтобы обсудить с коллегами? Всегда код сразу релизного качества?

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

Ну, пинус штурвальтс утверждает что код как раз пролетел мимо стадии обсуждения. И патч шел на включение не как ознакомительный драфт

I-Love-Microsoft ★★★★★
()
Последнее исправление: I-Love-Microsoft (всего исправлений: 1)
Ответ на: комментарий от X512

Ну вообще на ранних этапах обсуждения предполагаемых изменений исходники вполне могут не компилироваться.

О каких «ранних этапах» можно говорить, когда речь идёт о передаче изменений, уже одобренных мейнтейнером подсистемы?

Вангую, что тут авторы забили на принцип атомарности коммитов и исправили ошибку в другом, мейнтейнер поверил конечный результат, а Линус смотрит отдельные патчи

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

Ну значит «мейнтернер подсистемы» некомпетентный. Что никак не отменяет необходимость автоматизации поверки сборки (а лучше и юнит тестов).

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

Вы никогда псеводкод не писали

В пулл-реквест? В рабочую ветку? Чтобы обсудить?

thesis ★★★★★
()

Ну, собственно говоря мы увидели яркий пример того - почему драйверам подобного плана - не место в ядре. было-бы ядро - гибридным и проблем-бы не было. Ну не работает - да черт с ним - проблема дравероваятеля и все шишки - ему. Да и самому Линусу не пришлось-бы возиться с этим вот всем. Сделай ты стандартные и стабильные интерфесы ОДИН раз - и все. Но нет - мы тащим в ядро снова и снова. Кадавр жрет и жиреет.

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

Патч перенесли на 7.1, не…?Оо

Да мне как то пох :)

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

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

seiken ★★★★★
()

А чего ответ товарища не принесли?

I queued up the mux patches on Wed 4th last week (which is certainly a stretch that is unusual for me), but they did not reach linux-next for some reason, which I should have paid attention to. So, I simply trusted the build boots not reporting any errors to me, believing everything was fine.

Это даже уже не «собралось = работает», это новый уровень.

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

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

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

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

Ты о5 имеешь в виду монолитное ядро. В случае ядра гибридного - драйвера - головная боль или производителя оборудования, или того, кто собрался писать этот драйвер. НЕ создателей ядра, НЕ создателей дистрибутива. И уж тем более, когда разговор заходит о каком-то производстве и внедрении чего-либо туда, без многократного тестирования никто ничего не поставляет и не внедряет.

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

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

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

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

Ну да, ну да. Конечно, конечно. Только вот подобные случаи всплывают - регулярно. от этого, в том числе и такая скудность функционала драверов. Просто сравни удобство и функционал в линуксе, макос (unix) и даже той-же винде. И все сразу встает на свои метса. Особенно тебе стоит обратить свое внимание на драйвера МФУ. На их функционал и интерфейс взаимодействия с пользователем и интеграцию со сторонним ПО. Вот как внимательно хотя-бы туда посмотришь, потом придешь и доложишь нам тут о своих наблюдениях. Только после реальной работы, а не по типу (у меня все работает вроде как).

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

Ну вот ты пример привел с МФУ. Функционал драйвера зависит от того, сколько разраб над ним работает, здесь вопрос стабильного АПИ второстепенный. Иметь драйвер в апстриме имеет смысл, чтобы этот драйвер могли поддерживать для следующих версий ядра. Потенциально неограниченное количество релизов ядра.

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

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

В случае ядра гибридного - драйвера - головная боль или производителя оборудования, или того, кто собрался писать этот драйвер. НЕ создателей ядра, НЕ создателей дистрибутива.

Они осознанно и намеренно взяли на себя эту «головную боль», о чём я выше и писал. «Пишите драйвера, главное доведите их до принятия в ядро, а дальше мы сами всё будем делать».

Почему не отделить это все, кроме самых базовых драйверов оттуда?

Они и отделены - модулями.

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

Драйверов МФУ в ядре как раз нет, там юзерспейсный cups всё делает. А насчёт скудности функционала - связь неочевидна. Возможно производители офисноигровых железок просто ориентируются на винду изначально т.к. она популярнее.

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

Да, это выглядит как некомпетентность. Но подозреваю им будет сложно найти мейнтейнера не замену потому что должность не оплачивается Линусом или Linux Foundation.

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

Ну вот ты пример привел с МФУ. Функционал драйвера зависит от того, сколько разраб над ним работает

На самом деле я намеренно привел пример МФУ. Потому, как он, действительно работает через cups, который подарила apple. Но! Проблема остальных драйверов в том, что сегодня мы работам так, а завтра - по другому и поэтому поддерживать функционал и развивать драйвер устройства - сложнее и дороже. В том числе, учитывая непредсказуемость разработчиков того самого ядра.

повторюсь еще раз - кто мешает сделать стандартные интерфейсы драйверов к ядру? никто, кроме упоротости линуса по данному вопросу. который со студенческих времен свято верит в святой монолит. эта история с монолитным ядром хороша только в случае, когда мы сами собираем ядро каждый раз под свое оборудование и, при сборке, включаем только те модули ядра, которые нам нужны и - выключаем не нужные. Но кто этим занимается в реальности? Это настолько узкая сфера применения технолгии, что ею можно пренебречь и ею - пренебрегают в большинстве случаев. Просто - ставим дистрибутив XXXX на сервер YYYY и все на этом. А на то, что в ядре при этом куча ненужно - да и черт с ним, чай не времена 4й ветки ядра, когда оно… того. Но вот когда оно начнет о5 «того», из-за того, что растолстело еще больше - никому не известно. даже тем-же «создателям» ядра. И, в реальности, вопрос даже не в том, «если» рванет, а, скорее «когда» рванет.

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

что до твоего примера с виндой… да и не только, собственно говоря. обычно в 99 процентах случаев - производитель оборудования и разработчик драйвера - одна компания. Ну уволился программер - да и леший с ним. исходники естьв компании - наймут другого. Благо не 1 человек их обычно и пишет. Нет незаменимых программистов короче. На место одного «гения» лабуха - всегда можно нанять другого :)

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

Драйверов МФУ в ядре как раз нет, там юзерспейсный cups всё делает.

И завтра apple поменяет лицензию…. :)

Хотя и бог с ним. Но проблема в том, что даже имея подстстему печати (свою так и не смогли сделать вообще) - функционал - скуден.

DrRulez ★★★★★
()
Последнее исправление: DrRulez (всего исправлений: 1)
Ответ на: комментарий от DrRulez

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

это вся встраивальщина. Гигантский рынок.

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

Где оптимизация удаления с SSD?

Желаешь видеть это в виде картинки? //глухонемой мальчик жестами показал что его зовут Хуан Педро

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

А была бы автоматизация

Нацики любят людей мучать собственноручно

BydymTydym ★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.