Literally billions of peripherals will benefit! 🥹
❓Qu’est-ce que le kernel ?
C’est le code le plus primordial : Il permet en résumé au système d’exploitation de parler aux composants d’un périphérique, il gère les fonctions les plus élémentaires comme la lecture/écriture des données sur le disque, l’exécution des programmes, etc.
ℹ️ Which devices are affected?
Quand on parle de « périphériques », c’est très large.
Le kernel Linux est présent sur les serveurs web (90 à 99% du marché), les smartphones Android (85% du marché), et les quelques millions d’ordinateurs ayant installé un OS GNU/Linux (2 à 4%) !
Not to mention the boxes and other connected objects running Linux.
Mac OS and iOS also use part of Linux. Basically, only Windows desktops are not affected at all.
The whole thing really does make billions of devices involved, without exaggerating. 🤪
Thanks to its creator Linus Torvalds which always maintains the code.
❓ What is the specific problem corrected here?
👉 J’ai relevé une anomalie sur les PC portables de la marque LG, série Gram sous Linux, soulevant un problème kernel potentiel.
Le problème : Un process système qui utilise plus de ressources qu’attendu (et cause de la chauffe et consommation d’énergie inutile) lorsque le périphérique est en charge relié à un dock.
1) Discovering the bug
Fin 2022, je découvrais le problème et le fait que je n’étais pas seul : La communauté Ubuntu commençait à en parler. https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1987829
J’ai reproduit le problème sous Ubuntu et Fedora qui sont des distributions assez différentes, indiquant que le souci ne venait pas de l’OS mais plutôt de Linux.
2) Initial understanding of the bug
Février 2023, le souci commençait à se préciser, on avait assez d’éléments pour penser que ça venait du kernel et que le souci n’était pas encore corrigé, même sur les dernières versions.
J’ai alors crée un compte sur kernel.org et ouvert cette issue pour essayer de prévenir les bonnes personnes : https://bugzilla.kernel.org/show_bug.cgi?id=217076
Je n’étais pas sûr de moi à ce moment là, car c’était la première fois, mais il faut croire que j’ai bien fait les choses.
3) Thorough understanding and resolution of the bug
What happens next is totally beyond me, it's all about advanced Linux Dev Kernel... Some people make hypotheses, test them, understand exactly what the problem is, suggest a hotfix to test. And some of them confirm that the bug has been solved. All this takes almost a year and a half.
4) Publication of the patch
Le code correctif est ensuite proposé et accepté dans le kernel pour que tout le monde en profite. C’est ce qui est précisément en cours désormais : https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9e3caa9dd51b23e232f095a98336a84f42e4a7f2
What's next?
In the next two weeks, the whole world will benefit from the patch.
L’idée d’avoir pu impacter des milliards de périphériques donne le vertige ! 🥵
It took time, and required extremely specific skills, but the result is there. 🍾
C’est beau l’open-source ! 😍
Leave a Reply