Линус Торвальдс отчитал отладчика, неверно использовавшего BUG_ON().
В начале текущей недели состоялся релиз версии ядра Linux 4.8. Тем не менее, по словам главного разработчика Линуса Торвальдса, в ней присутствует код, способный «убить ядро». Анонсируя выход финальной версии в воскресенье, 2 октября, Торвальдс заявил, что она получила «несколько поразительных исправлений с момента выхода релиз-кандидата 8». Однако уже во вторник разработчик извинился перед пользователями, поскольку исправление оказалось еще хуже, чем исправляемая им ошибка.
Проблема связана с попыткой исправить ошибку, присутствующую в ядре, начиная с версии 3.15. Не скупясь в выражениях, Торвальдс в привычной для него манере отчитал разработчика Эндрю Мортона (Andrew Morton), в чьи обязанности входит отладка. По его словам, исправление «еще хуже, чем сама ошибка, поскольку ошибка не могла убить машину».
Как пояснил Торвальдс, Мортон неверно использовал BUG_ON(). «Раньше я уже объяснял людям, как использовать BUG_ON() для отладки, так какого черта эти проблемы до сих пор возникают?», - заявил разработчик, имея в виду свою публикацию за 2002 год, в которой объясняется, как правильно использовать BUG_ON().
Мортон воспринял критику шефа достойно, однако, по мнению Торвальдса, он мог и должен был справиться с задачей лучше. «Я должен был отреагировать на проклятые добавленные строки BUG_ON(). Я так и думал, что в итоге мне придется раз и навсегда удалить идиотский концепт BUG_ON(), потому что сознательному убийству ядра нет никакого чертового извинения», - заявил разработчик.