[lvc-project] [PATCH] crypto: rockchip/rk3288 - Add dereference of NULL pointer check
Fedor Pchelkin
pchelkin at ispras.ru
Sat Mar 16 11:29:25 MSK 2024
On Fri, 15. Mar 22:01, Мишин Александр Борисович wrote:
> Здравствуйте, Федор!
>
>
> Это был самый первый мой патч, так что, как ни старался, без косяков,
> увы, не обошлось. В последующих постепенно стараюсь их избегать. Большое
> спасибо за замечания.
Всё в порядке. Для первого патча это очень хорошая попытка. Процесс
подготовки патчей для Linux требует учета некоторых нюансов и к нему
следует приобщиться. Если перед отправкой патчей в международное сообщество
есть сомнения по оформлению патчей или есть желание, чтобы мы со своей
стороны провели мини-ревью, то можете их предварительно отправлять в список
рассылки lvc-patches at linuxtesting.org .
>
> Конкретно по пунктам:
>
> 1. По названию - честно говоря, я свой вариант перевел как "добавление
> проверки на разыменование нулевого указателя". Но с Вашим вариантом
> согласен, он более полно отражает проблему, поменяю.
Придумывание названия - процесс, сугубо зависящий от собственных
предпочтений, но лучше чтобы оно наиболее четко и кратко отражало суть
проблемы. Да, в этом случае это отсутствие проверки возвращаемого
значения функции, а разыменовывание NULL указателя - последствие этого.
> 2. Про пустые строки Алексей мне уже написал, в последующих патчах
> (кроме одного) я это учел.
> 3. По коду возврата - согласен, не учел, исправлю.
>
> Кроме того, в нескольких последующих патчах имеется ошибка с потерей
> кавычек в теге Fixes, т.е.
> Fixes: 4a835afd808a (mmc: dw_mmc: Fix potential null pointer risk)
> вместо
> Fixes: 4a835afd808a ("mmc: dw_mmc: Fix potential null pointer risk")
> Ошибка чисто техническая, но не заметил. Учел.
Kees Cook в списке рассылки предложил удобный вариант для правильной
генерации этого тега [1].
>
> Касаемо этого патча: я правильно понимаю, что мне необходимо выпустить
> вторую версию согласно п. "Подготовка второй версии патча" из
> https://portal.linuxtesting.ru/How-to-send-patches-to-kernel.html?
>
Произошла интересная ситуация - аналогичный патч смерджили в upstream
буквально сегодня ночью [2]. Готовить вторую версию необходимости теперь
нет. К сожалению, автор не добавил в свой патч тег Fixes или Cc:stable - в
стабильные ветки он вряд ли попадет.
crypto_engine_alloc_init() возвращает NULL при ошибке выделения памяти
GFP_KERNEL. Это не тот тип ошибок, которые легко провоцировать
непривилегированному пользователю: проблема незначительная с точки зрения
безопасности. Но, несмотря на это, мы добавим в поддерживаемые LVC-ветки.
Насчет сложившейся ситуации - случаи, когда аналогичное исправление уже
было кем-то отправлено и принято мэйнтейнерами, нередки. Чтобы понять
текущее состояние, можно проверять, исправлена ли проблема в репозиториях
мэйнтейнеров затрагиваемой подсистемы [3]. В определенное время мэйнтейнеры
отправляют пулл-реквесты Линусу Торвальдсу с просьбой смерджить по гит-тегу
состояние их репозитория в upstream. В данном случае, мэйнтейнер
crypto-подсистемы Herbert Xu добавил интересующий нас патч к себе еще
24.02.2024, а сегодня ночью Линус смерджил его в upstream.
Также поиск по спискам рассылки [4] работает достаточно неплохо. Если по
интересующей функции ядра происходили какие-то обсуждения, то fuzzy-поиск
их выведет (правда может быть очень много результатов). Для
целенаправленного поиска по определенной подсистеме лучше выбирать соотв.
список рассылки, например, linux-crypto [5].
[1]: https://lore.kernel.org/lkml/202403091243.99279C61@keescook/
[2]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a24e3b583ea2db3418f0c6ae1f12b07ca96531cc
[3]: https://git.kernel.org/pub/scm/linux/kernel/git/
[4]: https://lore.kernel.org/
[5]: https://lore.kernel.org/linux-crypto/
--
Федор
More information about the lvc-project
mailing list