David Madore's WebLog: Parfois, inexplicablement, les ordinateurs marchent

[Index of all entries / Index de toutes les entréesLatest entries / Dernières entréesXML (RSS 1.0) • Recent comments / Commentaires récents]

↓Entry #1647 [older| permalink|newer] / ↓Entrée #1647 [précédente| permalien|suivante] ↓

(vendredi)

Parfois, inexplicablement, les ordinateurs marchent

C'est devenu tellement habituel pour moi de me plaindre que les ordinateurs ne marchent pas que je devrais plutôt signaler les fois où quelque chose a — inexplicablement — marché. Aujourd'hui, il y en a eu deux.

La première, c'est le Wifi. C'est un peu malhonnête de dire que ça a marché pour dire que je n'ai passé que toute la journée à le faire marcher, mais, tout de même, ça a marché, et s'agissant du Wifi c'est quelque chose de vraiment exceptionnel.

Pour être plus précis, la carte Wifi de mon ordinateur (basée sur un chipset Atheros AR2414) est potentiellement gérée par deux pilotes différents sous Linux (deux pilotes dont, évidemment, on comprend mal les rapports de prime abord, surtout que ce sont les mêmes personnes qui s'occupent des deux) : l'un, ancien, compliqué et plus trop maintenu, s'appelle Madwifi (et qui contient un blob binaire, c'est-à-dire qu'on n'a pas le source de la totalité du pilote), et l'autre, censé être plus petit, plus propre et complètement ouvert, basé sur une réécriture à peu près complète des couches Wifi de Linux, s'appelle ath5k. Jusqu'à récemment, j'utilisais Madwifi (le vieux pilote, donc) : pour des raisons mystérieuses et qui le resteront, Madwifi s'est mis a marcher de moins en moins bien au fur et à mesure que le temps passait (de temps en temps, le réseau cessait complètement de répondre), au point que c'en était devenu vraiment insupportable. Donc j'avais bien envie de passer à ath5k (le nouveau pilote). Malheureusement, ma carte Wifi me sert de point d'accès, pas juste de station, et le mode point d'accès (ou maître) est ce que tous les pilotes semblent implémenter en dernier (voire, jamais) : et ath5k n'implémente officiellement pas encore ce mode point d'accès que j'attends avec impatience à chaque nouvelle version du noyau (il sera officiel dans les noyaux 2.6.31, donc dans environ quatre mois). Ou alors, il faut chercher la toute toute dernière version de l'arbre de développement des pilotes Wifi : c'est ce que j'ai fini par faire, pressé par mon poussinet qui voulait pouvoir utiliser un Wifi correct, et donc je me retrouve avec un noyau 2.6.30-rc8~wireless-testing et l'inquiétude qu'il me claque entre les doigts en détruisant mes systèmes de fichiers (et de fait, il me crache des messages d'erreurs très inquiétants du style WARNING: at fs/fs-writeback.c:292 __writeback_single_inode+0x4ab/0x4c0(), que je vais prier pour pouvoir ignorer parce que ça a l'air de vouloir dire que mes fichiers vont exploser dans un temps très bref).

Évidemment, juste comme ça, ça n'a pas marché. Le poussinet arrivait à se connecter au Wifi géré par le nouveau pilote ath5k, mais mon Eee PC, нет, il n'arrivait pas à s'associer. J'ai un autre copain chez qui j'ai le même problème : mon Eee PC n'arrive pas à s'associer au Wifi de sa *box, alors que lui n'a pas de problème et que le même Eee arrive à utiliser plein d'autres réseaux. Ça m'a sérieusement énervé, alors j'ai décidé que je comprendrais ce mystère coûte que coûte : j'ai fait afficher les trames d'association et j'ai essayé de les interpréter même sans connaître les détails des protocoles IEEE 802.11b/g :

00000000  00 00 30 01 00 1b 11 14  d5 0f 00 22 43 00 6c 54  |..0........"C.lT|
00000010  00 1b 11 14 d5 0f 80 1f  11 04 03 00 00 0a 44 61  |..............Da|
00000020  76 69 64 6f 75 6e 65 74  01 08 82 84 8b 96 0c 12  |vidounet........|
00000030  18 24 32 04 30 48 60 6c  dd 07 00 0c 43 06 00 00  |.$2.0H`l....C...|
00000040  00 01 00 00 0f ac 02 01  00 00 0f ac 04 01 00 00  |................|
00000050  0f ac 02 00 00                                    |.....|
00000055

(Oui, Davidounet c'est le SSID de mon Wifi.) Il manque les octets 30 14 (annonçant 0x14=20 octets de RSN IE) immédiatement avant l'octet 0x41 ! L'explication du problème était donc que le Eee envoyait des trames d'association mal formées et que, contrairement à Madwifi et certaines bornes d'accès qui, plus tolérants, devaient se contenter d'ignorer ce qu'ils ne comprennaient pas, le nouveau driver rejetait la trame complètement et il devenait impossible de s'associer.

Le Wifi, c'est quelque chose de vraiment aléatoire, qui fonctionne uniquement quand les mânes de Maxwell sont de bonne humeur : je déteste ce truc, mais il faut admettre que, quand ça marche, c'est bien pratique. En l'occurrence, le driver incriminé sur le Eee PC, un driver écrit par le fabricant (Ralink), était visiblement porté à la va-vite depuis Windows, et il n'est sans doute pas surprenant qu'il fût buggué. J'ai fini par me rendre compte que quelqu'un avait déjà corrigé le problème et j'ai fini par réussir à associer mon Eee PC à mon Wifi qui, depuis, s'obstine à fonctionner correctement.

[Capture d'écran i>TELE]La deuxième chose qui a marché, c'est un stick récepteur TNT qu'un ami m'a passé. Là, c'est vraiment incompréhensible : ce genre de choses n'aurait pas dû être si simple à utiliser. Il doit y avoir anguille sous roche.

↑Entry #1647 [older| permalink|newer] / ↑Entrée #1647 [précédente| permalien|suivante] ↑

[Index of all entries / Index de toutes les entréesLatest entries / Dernières entréesXML (RSS 1.0) • Recent comments / Commentaires récents]