• [^] # Re: Fiabilité

    Posté par (site web personnel) . En réponse à la dépêche Entretien avec Andrew Tanenbaum à propos de MINIX. Évalué à 2.

    Sur ma Pandaboard, vsftpd avait à une époque la fâcheuse manie de se vautrer en état "uninterruptible sleep" ("D"). Après un peu de recherche, on constate qu'un processus dans cet état n'est pas killable : aucun moyen de le supprimer (sachant qu'il monopolise toujours le port 21/23) => rebooter est la seule solution ! Indépendamment du bug spécifique à cette situation (noyau ou vsftpd), j'ai été stupéfait de découvrir que mon Linux ne proposait aucun moyen de killer le truc, aucun appel système, aucune commande, rien !
    Autre exemple de "petit souci" : avec un ancien disque dur USB avait plein de secteurs défectueux qui bloquaient fréquemment les I/O (i.e. même pas moyen de faire un dd_rescue, ce dernier freezant définitivement (ou mettant un temps non acceptable à se décoincer à chaque freeze)). J'ai réussi à faire un script qui note la position pour pouvoir reprendre "un peu plus loin" que la zone fautive à chaque tentative, mais il fallait tout de même que je débranche/rebranche le câble USB à la main à chaque itération car le process dd_rescue ou cp -a n'est pas killable dans cet état "D" (pas vu non plus de moyen simple de forcer un reset du device ou du bus USB par soft... (N.B. quelqu'un sait-il si c'est possible avec la libusb ?))