Language Selection

English French German Italian Portuguese Spanish

Kernel space: Bisection divides users and developers

Filed under
Linux

The last couple of years have seen a renewed push within the kernel community to avoid regressions. When a patch is found to have broken something that used to work, a fix must be merged or the offending patch will be removed from the kernel. It's a straightforward and logical idea, but there's one little problem: when a kernel series includes over 12,000 changesets (as 2.6.25 does), how does one find the patch which caused the problem? Sometimes it will be obvious, but, for other problems, there are literally thousands of patches which could be the source of the regression. Digging through all of those patches in search of a bug can be a needle-in-the-haystack sort of proposition.

One of the many nice tools offered by the git source code management system is called "bisect." The bisect feature helps the user perform a binary search through a range of patches until the one containing the bug is found. All that is needed is to specify the most recent kernel which is known to work (2.6.24, say), and the oldest kernel which is broken (2.6.25-rc9, perhaps), and the bisect feature will check out a version of the kernel at the midpoint between those two. Finding that midpoint is non-trivial, since, in git, the stream of patches is not a simple line. But that's the sort of task we keep computers around for. Once the midpoint kernel has been generated, the person chasing the bug can build and test it, then tell git whether it exhibits the bug or not. A kernel at the new midpoint will be produced, and the process continues. With bisect, the problematic patch can be found in a maximum of a dozen or so compile-boot-test cycles.

Bisect is not a perfect tool.




More in Tux Machines

today's howtos

Leftovers: Gaming

More Mandriva Eulogies

  • Good-bye, Mandriva!
    I think that it is sad that the Mandriva star twinkles no more in the OS universe, but it is good that other distros can continue with its legacy: Mageia, OpenMandriva Lx and, up to a certain extent, PCLinuxOS.
  • Finally! It's the year of Linux on the desktop TITSUP
    Mandriva, a French purveyor of desktop Linux, is being wound up, after becoming totally incapable of supporting usual performance (TITSUP), financially at least. The liquidation notice suggests the company's 2013 was around €600,000 and that the company has between 10 and 19 staff.
  • Goodbye, Mandriva, Thank You for the Mandriva Linux OS
    It is with sadness in our hearts that we inform you today, May 27, about the termination of the French Mandriva company, which is currently in the process of being liquidated, according to a notice posted on the societe.com website.
  • A Linux company that spent 17 years competing with Windows is officially over
    It also had some success in Malaysia. But by 2012, the company was on the brink of bankruptcy, a situation that had happened several times since its early days, in 1998. It was saved for a few more years by Jean-Manuel Croset, who joined as COO in 2011 and soon after became CEO.

Android Leftovers