On Sun, 10 Nov 2002, Leopoldo Ghielmetti wrote:
> Il 19:20, sabato 09 novembre 2002, Yann Souchon ha scritto:
[ je profite de la concat�nation int�grale pour r�pondre � ce que
je n'ai pas encore r�pondu
]
> > Ne connaissant pas du tout ce soft, je l'ai lanc� et il y a beaucoup
> > d'options. Pourrais-tu m'indiquer o� est-ce que je peux savoir si
> > l'auto-remplacement des bad-blocks est activ� ? Idem pour le report
> > d'erreurs si �a te d�range pas.
Rapidement: (de m�moire)
AWRE si � 1, remplacement automatique lors d'une �criture et d'une
erreur, sans perte de donn�es
ARRE si � 1, remplacement automatique lors d'une lecture si erreur
*corrig�e* (par ECC, code correcteur � 24 bytes/512 bytes sauf
erreur chez IBM, mais hors du standard SCSI SDD).
PER si pas � 1, reporte les erreurs d�tect�es. On peut aussi choisir
si les erreurs r�cup�r�es sont �galement transmises: si l'OS
est d�fectueux il vaut mieux ne pas le faire. Linux reconna�t
correctement depuis 2.0.35 (au moins) les erreurs corrig�es.
Mettre ce bit � 1 rend le syst�me dangereux vu que des donn�es
erron�es peuvent �tre transmises: utile cependant dans le cas
de streaming multim�dia ou audio, pour lesquels la bande
passante et la latence (d�lais de r�-essais, correction, etc)
sont plus importantes que l'int�grit� d'une image sur 24 ou
d'un sample sur 44000.
J'ajoute que SCSI d�finit des codes d'erreur:
/usr/include/scsi/scsi.h
Il y en a toujours 3 (classe, erreur, qualificateur) ensemble, avec en
plus un indicateur d'imm�diatet� (erreur actuelle, ou plus ancienne li�e �
un cache, voire li�e � une transaction multiple donn�e (command queuing)).
Il y a aussi des informations sp�cifiques � l'erreur: num�ro de bloc;
taille des donn�es quand m�me lisibles; autres informations.
#define NO_SENSE 0x00
#define RECOVERED_ERROR 0x01
#define NOT_READY 0x02
#define MEDIUM_ERROR 0x03
#define HARDWARE_ERROR 0x04
#define ILLEGAL_REQUEST 0x05
#define UNIT_ATTENTION 0x06
#define DATA_PROTECT 0x07
#define BLANK_CHECK 0x08
#define COPY_ABORTED 0x0a
#define ABORTED_COMMAND 0x0b
#define VOLUME_OVERFLOW 0x0d
#define MISCOMPARE 0x0e
Les erreurs de classe RECOVERED_ERROR sont � logger mais � ignorer
autrement. Les erreurs 3 et 4 sont des erreurs mat�rielles li�es � des
blocks particulier ou au m�chanisme g�n�ral, respectivement.
Exemple pratique:
0x05 0x3B 0x0D
ILLEGAL REQUEST
MEDIUM DESTINATION ELEMENT FULL
est l'erreur retourn�e dans un changeur de cassette ou de CD si le slot
sp�cifi� pour p.ex. une insertion est d�j� plein.
Les erreurs de classe 0xB indiquent bien souvent des erreurs de c�blage.
Le kernel Linux peut �tre compil� pour interpr�ter ces valeurs: c'est
tangent d'ailleurs et il serait mieux de toujours donner les valeurs
num�riques car certaines sont sp�cifiques au mat�riel utilis� (voir la
documentation constructeur -- il est vrai que ce genre de choses est de
plus en plus rare: mon premier lecteur DDS avait 130 pages de
documentation SCSI; le dernier aucune page. Evidemment, vu que 95% des
sp�cialistes d'informatique usuels ne lisent jamais aucune documentation
avant d'appeler le support technique, je comprends l'�conomie en arbres).
Ne jouer avec cela que si l'on a compris ce qu'il y a derri�re.
Plus de d�tails notamment dans le SCSI-Programming HOWTO ou dans le
standard SCSI, dont la version 2 (tr�s lisible et compr�hensible) doit
�tre sur Internet, et la version 3 (tr�s standardis�e donc complexe) est
sur http://www.scsita.org/.
Le protocole SCSI est un protocole d'avenir: m�me si le SPI (SCSI Parallel
Interface) va probablement gentiment dispara�tre, le SCSI en tant que
protocole de haut niveau, vu qu'il est impl�ment� dans le haut de gamme
comme Fibre Channel, ou dans le bas de gamme comme IDE r�cent et USB
storage, notamment, va rester en tant que protocole de r�f�rence pour le
stockage. Un investissement en temps dans ce domaine vaut donc la peine.
> > Poss�dant une Tekram, j'ai pu faire le test. Aucune erreur n'est d�tect�e.
Pour information, Tekram a produit divers contr�leurs:
- ceux bas�s sur les chips NCR/SYM 53c8xx
- excellents chips, tr�s performants et tr�s bon march�s.
- une grande partie du processing se fait via un processeur
interne programmable
- achetables s�par�ment (on peut faire sa propre carte PCI
pour moins de 60.-). Symbios Logic est tr�s lib�ral avec
la documentation (�tait en tous cas: on re�oit toute la
documentation avec des exemples target/initiator gratuitement
et sur simple demande, sans NDA).
- sous Linux le pilote usuel sym53c8xx fonctionne tr�s bien.
- ceux bas�s sur les chips FPGA sp�cifiques � Tekram
- meilleurs march�s
- propri�taires
- pilote �crit par SuSE, de tr�s bonne qualit� si l'on consid�re
sa grande complexit� due au mat�riel plus simple et moins
ind�pendant.
- moins performants
Inutile de dire que je recommande les premiers (mais c'est clair que vu le
marketing stupide de SCSI, les anciens chips SYM moins performants que les
nouveaux mais plus que les sp�cifiques de Tekram ne sont plus d�pos�s sur
des cartes: on a donc un rapport 3x ou 4x entre les prix Tekram/SYM et
Tekram/FPGA).
--
http://www-internal.alphanet.ch/linux-leman/ avant de poser
une question. Ouais, pour se d�sabonner aussi.