Journal Le sans fil de la peur

Posté par  .
Étiquettes : aucune
0
22
août
2006
Bonsoir à tous,

Je me retrouve confronté à un fâcheux dilemme, et j'aimerais avoir votre avis sur la question; d'autant que je ne pense pas être le seul concerné.

Les nouveaux laptops à base de Core Duo sont très bien gérés par Linux, sauf le wifi. De base, les Centrino sont livrés avec un chip Intel 3945 a/b/g qui ne dispose que d'un driver minimal (pas d'injection de trames) et semi propriétaire (daemon régulateur tournant en root nécessaire). Le tout est codé comme un goret, dixit le preux hacker OpenBSD qui l'a reverse.

Pas de problème, me direz vous, il suffit d'ouvrir la machine et de lui remplacer sa carte maladive par une saine. J'aurais bien doté la mienne d'une superbe Prism54 FullMac qui me restait, mais je me suis rendu compte de l'horrible vérité lors de l'ouverture... Il n'y a pas de port Mini PCI dans ces machines, seulement un port Mini Card (Mini PCI express).

Paniqué à l'idée de passer pour un ringard chez ma boulangère, j'ai passé en revue les cartes Mini-PCIe existantes. Ça n'a pas pris bien longtemps, il n'y a apparemment que trois chipsets disponibles...

* Intel 3945 a/b/g (bah oui)
* Atheros AR5006EX
* Broadcom BCM4311

L'Atheros aurait pu être la solution idéale au niveau des fonctionnalités, mais sous GNU/Linux nous ne disposons que du driver MadWifi qui utilise un blob à la nVidia... Ça implique donc de recompiler/patcher MadWifi à chaque mise à jour noyau, et de dépendre entièrement d'Atheros en cas de bug. Sans compter la récente vulnérabilité indépendante de l'OS (grâce au blob ?) qui toucherait les drivers Atheros. Quelqu'un ici utilise-t-il le portage Linux de l'OpenHAL d'OpenBSD avec un chip Atheros récent ?

La Broadcom a l'énorme avantage de disposer d'un driver libre pour sa famille de chipsets dans le noyau, mais après une rapide recherche, il s'avère qu'un changement au niveau du TX power limite sévèrement sa portée, et il faut utiliser un patch expérimental pour le chip 4311 pci express. L'injection est aussi supportée via un hack très expérimental.

Bref, c'est un peu comme une prise de krav maga dans la glotte et gstreamer dans KDE, la comparaison est difficile.

Mon instinct me ferais choisir la Broadcom, dont le support ne peut que se bonifier avec les versions futures du noyau, mais j'aimerais savoir s'il y a un nouveau portage du driver ath d'OpenBSD pour Atheros, l'ancien semblant mort :'(

Des retours d'expérience sur les BCM4311 (utilisés dans les MacIntel aussi il me semble) seraient également très intéressants.

C'est quand même dommage, alors que l'enfer du wifi semblait toucher à sa fin pour les chips mini pci ou cardbus, voilà que ça recommence avec le mini pcie et le nouveau machin qui remplace le cardbus... (oui, pas de pcmcia non plus, ç'aurait été trop simple ;) ).

Je remercie d'avance tous ceux qui pourront éclairer la situation :)

P.S.: Les options "utilise OpenBSD/un stick USB" sont hors sujet ^__^
  • # Une prise de krav maga dans la glotte et gstreamer dans KDE

    Posté par  . Évalué à 5.

    Malheureusement ce phénomène ne semble pas s'améliorer et je ressens la même frustration. Linux et les logiciels libre qui l'accompagnent sont une merveille en terme de software, mais en même temps on est soumis à une grosse contrainte en termes de pilotes. Mon expérience:

    J'ai emprunté une carte wifi pcmcia Netgear WG511 à quelqu'un à qui elle faisait double-emploi (merci Wanadoo et sa livebox munie d'un dongle usb), et je m'attendait à un bon support linux car elle est basée sur un chip prism54. Perdu ! Il y a plusieurs révisions de la carte, et certaines sont des "soft-macs", dont la mienne. Double-frustration: il y a peu de chances de s'en rendre compte avant d'essayer le piloteprism54, car Netgear n'a pas changé l'aspect extérieur de la carte, et n'a même changé le deviceID, donc lspci la reconnaîtra comme une banale prism54. Heureusement, ndiswrapper me sauve et me permet d'utiliser la carte.

    D'autre part, j'ai goûté il y a quelques temps à Compiz/aiglx/xgl, et j'avoue que j'aimerais bien pouvoir continuer à en profiter si je change de portable. Pour le moment, pas trop de problème, j'ai une radeon mobility 7500 : il n'y a pas le choix, c'est pilote open-source ou rien. Et c'est tant mieux, je ne changerais pour un pilote binaire pour rien au monde, je chérie ma liberté de faire tourner X dans gdb et de fouiller dans les pilotes pour les débugger si nécessaire. Mais pour une nouvelle machine, seul les puces Intel semblent avoir un pilote, donc ça limite nettement le choix !

    Enfin, le démon régulateur que nécessite ta carte wifi Intel est, selon le README qui l'accompagne, "chargé de contrôler et configure des aspects du matériel nécessaires pour le faire fonctionner en accord avec diverses agences de régulation. Ceci comprend le contrôle des canaux qui ont le droit de faire de la recherche active/passive, de la puissance de transmission, des canaux qui peuvent transmettre, et le support de IEEE 802.11h". D'après Wikipédia, cette dernière norme est conçue pour empêcher les interférences avec les radars et satellites. Tout ça me paraît être du même ordre que les arguments anti-opérabilité des DRM, mais à l'échelon des régulations internationales, comme si Intel se disait : "pour être sûr que ces normes soient respectées, nous allons fournir un binaire, comme ça les petits malins ne pourront pas trifouiller".

    J'aimerais tant une société plus basée sur la confiance, où les DRM et autres "binaires de régulation" n'existeraient pas.
  • # Driver minimal

    Posté par  . Évalué à 5.

    >driver minimal (pas d'injection de trames)

    C'est vrai qu'il est pourri ce driver, je peux pas casser mes réseaux wifi Wep en 10 secondes.
  • # Autre option

    Posté par  . Évalué à 5.

    Comme on ne peut pas te proposer d'utiliser OpenBSD, peut-on te proposer de backporter le driver OpenBSD dans linux ? Ou de trouver un hacker de linux près à te le faire, pour 1/2/5 bières ? Je n'ai pas d'idée de la quantité de travail que cela représente, ce n'est surement pas facile, mais ça doit être faisable, non ?
    • [^] # Re: Autre option

      Posté par  . Évalué à 2.

      Il n'y avait pas récemment une nouvelle architecture concernant le wifi qui devait être intégrée à linux et qui permettait au final un support nettement meilleur et faciliter l'écriture de nouveaux pilotes ? Est-ce que quelqu'un sait si tout cela permettrait de se débarasser de cette cochonnerie de binaire sur les cartes intel ?
    • [^] # Re: Autre option

      Posté par  . Évalué à 2.

      J'ai écarté l'option OpenBSD car le support de l'ACPI n'est pas (encore) au niveau de Linux... J'aurais certes une carte wifi opérationnelle mais l'autonomie générale de la machine prendrait un sacré coup. Je ne suis pas sûr non plus que le chip son sigmatel soit géré. Bref, ça résoudrais un problème mais en créerais plusieurs autres :)

      Pour le portage, je ferais ça avec plaisir si j'avais les connaissances nécessaires :) Je me dépatouille un peu en C pour des applis userland, mais bricoler des driver en mode noyau ce n'est pas le même niveau. Il ne suffira pas de remplacer des strlcat() quoi :( Il y a aussi le facteur temps, j'en aurais beaucoup moins dès la rentrée...
  • # Injection de trames

    Posté par  (site web personnel) . Évalué à 2.

    Bonjour

    Pour toi l'injection de paquet à l'air d'être un critere de choix. Est ce que ça sert à autre chose qu'a cracker les clés wep/wpa ?
  • # Soluce possible

    Posté par  . Évalué à 2.

    Ça implique donc de recompiler/patcher MadWifi à chaque mise à jour noyau

    J'ai découvert DKMS (Dynamic Kernel Module Support), du temps ou j'utilisais Mandriva et c'est vachement pratique !

    Le noyau est mis à jour... no problemo les drivers sont recompilés au démarrage.

    Tout est expliqué ici : http://www.lea-linux.org/cached/index/HOWTO_Dkms.html
  • # Pas d'OpenBSD, .....

    Posté par  (site web personnel) . Évalué à 3.

    Si tu ne veux pas d'OpenBSD, prend toi un FreeBSD ou un NetBSD, avec une carte Atheros... Le support est très bon sur ces deux OS aussi.
    les derniers intel vont arriver bientôt sous FreeBSD :
    http://lists.freebsd.org/pipermail/freebsd-mobile/2006-July/(...)
  • # Personnellement

    Posté par  . Évalué à 3.

    Et bien que ça ne fera peut-être pas avancer le débat, je trouve assez bête de prendre un portable avec du Core Duo et donc du Wifi intégré dedans si c'est pour ne pas utiliser ce qui est déjà fourni pour des raisons idéologiques. Et si c'est le cas, j'ai cru comprendre que des développeurs d'OpenBSD étaient parvenus à contourner le truc qui pose problème. Il est peut-être possible de l'adapter à un Linux...
    • [^] # Re: Personnellement

      Posté par  (site web personnel) . Évalué à 4.

      D'autant plus que l'avantage du Centrino c'est sa très faible consommation. Avantage qui disparaît dès qu'on met une autre carte.
    • [^] # Re: Personnellement

      Posté par  . Évalué à 2.

      Au fait, à propos de porter le driver pour OpenBSD sous Linux, est-ce qu'il y a un projet en cours ?

      Si oui, rencontre-t-il déjà des difficultés particulières ?

      Est-ce que le driver libre a des performances comparables avec celui d'Intel, notamment en termes de consommation d'énergie ?
    • [^] # Re: Personnellement

      Posté par  . Évalué à 4.

      Bah le reste du matériel de ce laptop est excellent, difficile de trouver un autre portable avec un chip graphique aussi bien géré, et une puissance/autonomie équivalente pour le même prix.

      Je ne vois donc pas en quoi c'est idiot de changer la seule pièce qui ne m'apporte pas entière satisfaction sur la machine; au niveau de la consommation, je ne pense que changer de chipset fasse une énorme différence sur batterie, mais ça fera une énorme différence pour moi :)

      Et ce n'est pas (seulement) pour raisons "idéologiques", mais aussi car j'aimerais bien pouvoir bidouiller ma Nintendo DS avec (donc injection de frames), et pouvoir mettre à jour kernel et/ou driver rapidement s'il y a un trou, (sans "ah bah non si je passe en 2.6.19 ça casse le driver" ou "ah bah le fabriquant s'en fout de mon bug rare").

      A priori, ces deux souhaits sont compromis avec ma carte actuelle et l'Atheros/MadWifi.
  • # Commentaire supprimé

    Posté par  . Évalué à 2.

    Ce commentaire a été supprimé par l’équipe de modération.

    • [^] # Re: bcm4311 pas encore supporte

      Posté par  . Évalué à 2.

      Bon, au final, je vais prendre la Broadcom. Le driver est déjà libre (m'étonnerait qu'Atheros ou même la dernière Intel passe en libre rapidement), et le hack sanglant qui permet l'injection actuellement laisse à penser qu'un support complet plus tard est possible. Si le code n'est pas trop obscur il y aura peut être même moyen de le hacker un peu :)

      Merci à tous pour vos réponses :)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.