[FRsAG] Re: Debian 12 / ext4 data corruption

2023-12-11 Par sujet Romain
Version 12.4 dispo, problème réglé :)

Le dim. 10 déc. 2023 à 18:26, Romain  a écrit :

> A mettre dans /etc/apt/preferences.d/buggy-kernel :
> with the contents:
> # avoid kernel with ext4 bug
> # 1057843
> Package: linux-image-*
> Pin: version 6.1.64-1
> Pin-Priority: -1
>
> Ça permet de rester en 6.1.52-1 et de recevoir la 6.1.66-1 quand elle sera
> disponible.
>
> Romain
>
> Le dim. 10 déc. 2023 à 11:47, Romain  a écrit :
>
>> Pour ceux qui auraient raté l'actu :
>> - https://twitter.com/debian/status/1733559140914749547
>> - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1057843
>>
>> Ne pas installer le paquet 6.1.64-1 du kernel.
>>
>> Romain
>>
>
___
Liste de diffusion du %(real_name)s
http://www.frsag.org/

[FRsAG] Re: Debian 12 / ext4 data corruption

2023-12-10 Par sujet Vincent Tondellier via FRsAG
Le dimanche 10 décembre 2023, 21 h 40 min 22 s CET Samuel Thibault a écrit :
> Vincent Tondellier via FRsAG, le dim. 10 déc. 2023 21:26:00 +0100, a ecrit:
> > Le dimanche 10 décembre 2023, 11 h 47 min 05 s CET Romain a écrit :
> > > Pour ceux qui auraient raté l'actu :
> > > - https://twitter.com/debian/status/1733559140914749547
> > > - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1057843
> > > 
> > > Ne pas installer le paquet 6.1.64-1 du kernel.
> > 
> > Ca tombe bien, ca fait une semaine que mon serveur de fichier tourne avec
> > ce noyau. J'ai du le rebooter pour patcher le bug de zfs qui pouvait
> > corrompre le fs, et j'ai voulu éviter un autre reboot en l'installant
> > depuis b-p-u ...
> > 
> > De ce que je comprends d'après les commits, ca n'affecte que les fichiers
> > ouverts en O_DIRECT|O_SYNC|O_(RDWR|WRONLY) et en cas de crash : ils
> > risquent de se retrouver tronqués.
> 
> Non, ça c'est le scénario corrigé par le patch fautif... Le problème
> c'est qu'il manquait un autre patch pour que le premier patch se
> comporte correctement, d'où corruption des données. Le cas qui pose
> problème, c'est O_DIRECT tout court, la position dans le fichier n'est
> pas mise à jour en fin d'opération d'entrée/sortie, de là les
> données peuvent être écrites un peu n'importe où.
> 
> https://lore.kernel.org/stable/20231205122122.dfhhoaswsfscuhc3@quack3/

OK, autant pour moi, je suis pas réveillé aujourd'hui, je suis effectivement 
parti du premier patch ...

Ca ne change pas grand chose pour moi, je n'ai pas d'applications utilisant 
O_DIRECT avec ext4 sur les serveurs affectés (et le serveur DB n'est pas dans 
le lot, encore en deb11), mais c'est effectivement un peu plus gênant ...

> > Le cas est donc assez peu courant vu que O_DIRECT est peu utilisé,
> > mis a part peut être pour certaines bases de données (pas PostgreSQL
> > en tout cas).
> 
> grep O_DIRECT dans le source de postgresql-16 indique plutôt que si.

Uniquement dans une configuration debug non standard et non recommandée :

https://www.postgresql.org/docs/current/runtime-config-developer.html#GUC-DEBUG-IO-DIRECT

debug_io_direct dans la conf, io_direct_flags dans le code.

A ma connaissance toutes les I/O (data, wal, etc) de PostgreSQL (hors 
configuration exotique) utilisent le chemin classique (et bien testé) 
synchrone avec buffer et fdatasync.

Vincent





___
Liste de diffusion du %(real_name)s
http://www.frsag.org/

[FRsAG] Re: Debian 12 / ext4 data corruption

2023-12-10 Par sujet Samuel Thibault
Vincent Tondellier via FRsAG, le dim. 10 déc. 2023 21:26:00 +0100, a ecrit:
> Le dimanche 10 décembre 2023, 11 h 47 min 05 s CET Romain a écrit :
> > Pour ceux qui auraient raté l'actu :
> > - https://twitter.com/debian/status/1733559140914749547
> > - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1057843
> > 
> > Ne pas installer le paquet 6.1.64-1 du kernel.
> 
> Ca tombe bien, ca fait une semaine que mon serveur de fichier tourne avec ce 
> noyau. J'ai du le rebooter pour patcher le bug de zfs qui pouvait corrompre 
> le 
> fs, et j'ai voulu éviter un autre reboot en l'installant depuis b-p-u ...
> 
> De ce que je comprends d'après les commits, ca n'affecte que les fichiers 
> ouverts en O_DIRECT|O_SYNC|O_(RDWR|WRONLY) et en cas de crash : ils risquent 
> de se retrouver tronqués.

Non, ça c'est le scénario corrigé par le patch fautif... Le problème
c'est qu'il manquait un autre patch pour que le premier patch se
comporte correctement, d'où corruption des données. Le cas qui pose
problème, c'est O_DIRECT tout court, la position dans le fichier n'est
pas mise à jour en fin d'opération d'entrée/sortie, de là les
données peuvent être écrites un peu n'importe où.

https://lore.kernel.org/stable/20231205122122.dfhhoaswsfscuhc3@quack3/

> Le cas est donc assez peu courant vu que O_DIRECT est peu utilisé,
> mis a part peut être pour certaines bases de données (pas PostgreSQL
> en tout cas).

grep O_DIRECT dans le source de postgresql-16 indique plutôt que si. De
manière générale c'est pas tellement utilisé en effet, mais pour des
bases de données qui veulent optimiser l'ordonnancement des écritures,
si.

Samuel
___
Liste de diffusion du %(real_name)s
http://www.frsag.org/

[FRsAG] Re: Debian 12 / ext4 data corruption

2023-12-10 Par sujet Vincent Tondellier via FRsAG
Le dimanche 10 décembre 2023, 11 h 47 min 05 s CET Romain a écrit :
> Pour ceux qui auraient raté l'actu :
> - https://twitter.com/debian/status/1733559140914749547
> - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1057843
> 
> Ne pas installer le paquet 6.1.64-1 du kernel.

Ca tombe bien, ca fait une semaine que mon serveur de fichier tourne avec ce 
noyau. J'ai du le rebooter pour patcher le bug de zfs qui pouvait corrompre le 
fs, et j'ai voulu éviter un autre reboot en l'installant depuis b-p-u ...

De ce que je comprends d'après les commits, ca n'affecte que les fichiers 
ouverts en O_DIRECT|O_SYNC|O_(RDWR|WRONLY) et en cas de crash : ils risquent 
de se retrouver tronqués. Le cas est donc assez peu courant vu que O_DIRECT 
est peu utilisé, mis a part peut être pour certaines bases de données (pas 
PostgreSQL en tout cas).

Donc on est loin du kernel radioactif qui détruit toutes les données, même si 
il vaut mieux l'éviter par précaution ...


___
Liste de diffusion du %(real_name)s
http://www.frsag.org/

[FRsAG] Re: Debian 12 / ext4 data corruption

2023-12-10 Par sujet Romain
A mettre dans /etc/apt/preferences.d/buggy-kernel :
with the contents:
# avoid kernel with ext4 bug
# 1057843
Package: linux-image-*
Pin: version 6.1.64-1
Pin-Priority: -1

Ça permet de rester en 6.1.52-1 et de recevoir la 6.1.66-1 quand elle sera
disponible.

Romain

Le dim. 10 déc. 2023 à 11:47, Romain  a écrit :

> Pour ceux qui auraient raté l'actu :
> - https://twitter.com/debian/status/1733559140914749547
> - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1057843
>
> Ne pas installer le paquet 6.1.64-1 du kernel.
>
> Romain
>
___
Liste de diffusion du %(real_name)s
http://www.frsag.org/

[FRsAG] Re: Debian 12 / ext4 data corruption

2023-12-10 Par sujet Yves Rougy
Hello,

Normalement le paquet linux-image 6.1.66-1 est dans
bookworm-proposed-updates et devrait être dans bookworm dans les heures qui
viennent si tout va bien (Merci à Cyril Brulebois pour l'info).

Il faut passer au 6.1.66-1 directement.

On Sun, Dec 10, 2023 at 11:48 AM Romain  wrote:

> Pour ceux qui auraient raté l'actu :
> - https://twitter.com/debian/status/1733559140914749547
> - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1057843
>
> Ne pas installer le paquet 6.1.64-1 du kernel.
>
> Romain
> ___
> Liste de diffusion du %(real_name)s
> http://www.frsag.org/
___
Liste de diffusion du %(real_name)s
http://www.frsag.org/