Avant que le noyau Linux 6.3 ne soit potentiellement publié comme stable dimanche, deux correctifs de dernière minute pour le pilote de système de fichiers Btrfs ont été soumis aujourd’hui pour résoudre un problème urgent depuis Linux 6.2.
Btrfs pour Linux 6.3 voit un travail de dernière minute pour résoudre les problèmes de rejet asynchrone, qui a été activé par défaut depuis Linux 6.2. Le comportement de rejet asynchrone par défaut avait une faible limite d’IOPS et le traitement d’un grand nombre de rejets prendrait beaucoup de temps et gaspillerait de l’énergie/de l’activité du disque.
Boris Burkov a envoyé les correctifs Btrfs plus tôt ce mois-ci et explained :
“Depuis que le rejet=async est devenu la valeur par défaut implicite dans btrfs dans le noyau 6.2, il y a eu de nombreuses plaintes concernant le rejet trop étalé sur les systèmes de poste de travail. Cela se traduit par des situations comme un lecteur d’utilisateurs qui n’est pas inactif pendant une période de temps étonnamment longue.
Cela est dû à une limite d’iops par défaut relativement faible de 10, donc cette série augmente la limite par défaut à 1000 (délai de 1 ms) et modifie un repli étrange comportement pour limit=0 à interpréter comme illimité.
…
Auparavant, la valeur par défaut était un 10 relativement conservateur. Cela entraîne un délai de 100 ms, donc avec ~300 rejets dans un commit, cela prend la totalité 30 s jusqu’au prochain commit pour terminer les rejets. Sur un poste de travail, le disque ne reste jamais inactif, gaspille de l’énergie/de la batterie, etc.Définissez la valeur par défaut sur 1000, ce qui entraîne l’utilisation du plus petit délai possible, actuellement, qui est de 1 ms. Cela s’est avéré ne pas garder pathologiquement le disque occupé par le rapporteur d’origine.”
Le changement Btrfs devrait atterrir sous peu dans Linux 6.3 Git et vraisemblablement repris par Linux 6.2 comme un correctif stable également.