Linus Torvalds apologizes for Linux 4.8 kernel bug

  sonic0002        2016-10-07 03:46:17       3,767        0    

On Oct 2, Linus Torvalds proudly announced the release of Linux 4.8. But just days after the release, a bug was found in the kernel and Linus came out and apologized for this bug.

I'm really sorry I applied that last series from Andrew just before doing the 4.8 release, because they cause problems, and now it is in 4.8 (and that buggy crap is marked for stable too).

In particular, I just got this kernel BUG at ./include/linux/swap.h:276 and the end result was a dead kernel.

The bug that commit 22f2ac51b6d64 ("mm: workingset: fix crash in shadow node shrinker caused by replace_page_cache_page()") purports to have fixed has apparently been there since 3.15, but the fix is clearly worse than the bug it tried to fix, since that original bug
has never killed my machine!

I should have reacted to the damn added BUG_ON() lines. I suspect I will have to finally just remove the idiotic BUG_ON() concept once and for all, because there is NO F*CKING EXCUSE to knowingly kill the kernel.

Just before the release, Linus accepted a patch from Andrew Morton which was meant to resolve a bug existing since 3.15. However, this patch introduced a more severe bug which can kill the kernel. 

Linus said he had high expectation about patches from Andrew but he didn't expect that there was BUG_ON() in the code which indicated the code was not fully tested. And back in 2002, he had warned about BUG_ON()

Later, Andrew, the author of the patch, responded 

Well, it's a VM_BUG_ON and few people run with CONFIG_DEBUG_VM.

And Linus responded to this and didn't agree with this assumption as a correct way of working.

Ehh. If by "few people" you mean "pretty much everybody", you'd be right, but your choice of wording would be somewhat misleading, wouldn't you say?

Killing machines because somebody made an assumption that was wrong is not ok.

The end result of this is that the patch may be removed completely and there will be some more actions taken on BUG_ON() in the future. And lastly from Linus's response, we can see what the correct attitude an engineer should have and everyone should be rigorous about his/her own work. Excuse is not acceptable.

LINUX  LINUX KERNEL  NEWS  LINUS TORVALDS  BUG_ON 

       

  RELATED


  0 COMMENT


No comment for this article.



  RANDOM FUN

Introducing MacBook Page Pro