Linus Torvalds criticizes Paragon Software and in the process of GitHub creates unnecessary mergers

Linus Torvalds has been waiting for a long time to have Paragon Software ship its driver NTFS to add it to the Linux kernel and this is already done and Torvalds has finally merged the new driver with the Linux 5.15 kernel source.

But before that he complained about using GitHub's merge request feature in the post, saying that GitHub "creates absolutely unnecessary merges." Apparently the creator of the Linux kernel doesn't really like GitHub merges, if they do. Also, compiler warnings are now treated as default errors in kernel builds.

At the beginning of August, Torvalds gave Paragon Software a push to make the pull request»An actual send of code that will be merged with the kernel sources, so that its read / write NTFS driver can be included in the next version 5.15, for which the merge window is currently open.

Paragon duly submitted its "withdrawal request", saying:

"Current version works with normal / compressed / spars files and supports acl and NTFS log playback." That said, the company is still getting familiar with the submission process, and Torvalds had quite a few comments to make, with the intention of improving future pull requests. First of all, the creator of the Linux kernel said that the pull request should have been signed. "In a perfect world, that would be a PGP signature that I can trace directly to you through the chain of trust, but I never really demanded it," he said.

Then noticed that the code in the pull request included merge commits made with the GitHub web UI.

"It's another one of those things I * really * don't want to see: GitHub creates unnecessary merges and you should never use GitHub interfaces to merge anything." mergers are not one of those things. In the past, especially in 2012, Torvalds had complained about certain aspects of GitHub.

“I don't do GitHub pull requests. GitHub discards all relevant information, such as even having a valid email address for the person making the pull request. The diffstat is also lacking and unnecessary, ”he said at the time. Note that the git request-pull command is different from the pull request function from GitHub. Also, the Paragon repository has commit messages that are missing information, such as »Merge branch 'torvalds: master' into master«. Speaking of which, Torvalds said on Saturday that "Linux kernel merges must be done * correctly *".

Besides adding the controller Paragon NTFS to Linux kernel 5.15, Torvalds has also enabled the "-Werror" build option, which is the default for all kernel builds.

The compilation flag »-Werror«treat all warnings as compilation errors. By promoting all warnings as errors, Torvalds forces developers to ensure that build warnings that might otherwise go unnoticed or only loosely affected by developers are now prioritized as they interrupt the build process.

Torvalds commented about the change that we really should always have a clean build and we will disable overzealous specific warnings if necessary, if we cannot fix them. But while I enforce this quite religiously on my own tree, the various construction robots that don't necessarily report the warnings don't.

Make sure warnings are handled, but most of these projects are not the size of the Linux kernel. On the other hand, WERROR as a Kconfig switch. This will turn off the »-Werror» flag if newer versions of the compiler introduce new warnings that the kernel cannot correct immediately or other selective problems for which it is not possible to create a kernel without warnings. The WERROR option is enabled by default for all kernel builds.

Linus finished the message of the patch with:

"Hopefully this will mean that I will receive fewer pull requests containing new warnings that were not noticed by the various automations we have implemented." I knock on wood.


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.