Re: Question sur le montage
Latreyte David wrote:
Bonsoir à tous,
juste une question à propos de montages loopback. J'ai réalisé un certain
nombre d'images de cd sur mon serveur afin de pouvoir les partager sur le
réseau. Pour les rendre accessibles, j'utilise une commande qui ressemble à :
mount -o loop -t iso9660 .......
j'obtiens bien ce que je désire si ce n'est que c'est accompagné du message :
Invalid session number or type of track
Ne l'ayant pas tout d'abord bien lu, j'ai cru à une restriction du nombre de
loop poosibles (seulement loop0 à loop8 dans /dev/) mais après recherche, je
suis parvenu à monter ce nombre à 16 (bien que je n'ai que 6 CD partagés) et
j'obtiens toujours le même message.
Quelqu'un connaît-il la signification du message ?
(Kernel 2.4.12)
En fait le seul moyen que je connaisse pour vraiment savoir d'où ça
vient est de regarder le source. Rien dans
/usr/src/linux/drivers/block/loop.c. C'est donc que le pb vient du
support du FS iso9660. Dans /usr/src/linux/fs/isofs/inode.c, on trouve
le message en question à la ligne 436. Si je comprends bien cette partie
du code, il s'agit de la détection des CD-Roms multi-sessions comme
l'indique le message "Session %d start ...". Il me semble cependant
bizarre qu'on affiche un message d'erreur quand on détecte une session.
Donc pour moi c'est un (petit) bug : il manque un else { ... } autour du
2ème printk comme ceci :
if (!i) {
...
}
else
{
printk(KERN_ERR "Invalid session number or type of
track\n");
}
Extrait de /usr/src/linux-2.4.12/fs/isofs/inode.c (l 423 à 437)
[...]
if(session >= 0 && session <= 99) {
struct cdrom_tocentry Te;
Te.cdte_track=session;
Te.cdte_format=CDROM_LBA;
i = ioctl_by_bdev(bdev, CDROMREADTOCENTRY, (unsigned long)
&Te);
if (!i) {
printk(KERN_DEBUG "Session %d start %d type %d\n",
session, Te.cdte_addr.lba,
Te.cdte_ctrl&CDROM_DATA_TRACK);
if ((Te.cdte_ctrl&CDROM_DATA_TRACK) == 4)
return Te.cdte_addr.lba;
}
printk(KERN_ERR "Invalid session number or type of track\n");
}
[...]
Je sais que ça fait un peu masquage du pb, mais le plus important est la
compréhension du pb (que j'espère correct :-)).
Fred
Reply to: