KERNEL 2.6.12 et IPW2200 - Linux et OS Alternatifs
Marsh Posté le 21-06-2005 à 15:52:12
oui j'ai exactement la même, je ne sais pas pourquoi, mais j'ai posté dans le topic officiel
http://forum.hardware.fr/hardwaref [...] 1401-1.htm
Marsh Posté le 21-06-2005 à 16:11:09
Bha suffit de lire, c'est marqué, y'a une variable redéfinie, z'avez qu'a la renommer proprement dans un des deux ( de préférence dans le driver ipw2200 ), et ca devrait aller
Marsh Posté le 21-06-2005 à 16:44:21
ça marche nickel, mais question, je connais pas bcp le c, y a une notation à suivre ? parce que la j'ai juste rajouté un 2 à la fonction, est c'est assez moche mdr
Marsh Posté le 21-06-2005 à 16:47:43
montre le bout de code que t'as touché pour voir ... ( avec l'original de pref ... )
Marsh Posté le 22-06-2005 à 10:50:57
désolé pour le temps de réponse...
Code :
|
L'original est pareil sauf sans le 2, et tous les appels de la fonction dans les autre fichiers ont été modifiés. voila..
Marsh Posté le 22-06-2005 à 15:14:54
L0k a écrit : désolé pour le temps de réponse...
|
Si t'as modifié les appels de fonctions dans les fichiers ca va alors
( Sinon il serait entrain d'appeller l'autre fonction (celle du fichier du kernel qui entre en conflit et la ... aieaieaie )
tu peut ptêtre poster un diff pour faciliter la chose pour les autres (bien qu'il est fort possible qu'un patch plus "propre" existe sous peu...
D'ailleurs si ca se trouve la fct qui est dans le kernel est la même et il a été décidé de l'integrer ( faudrait aller voir le code) et dans ce cas la, la manip propre serait de virer la déclaration faite dans le module ipw2200
Marsh Posté le 22-06-2005 à 18:02:16
dans le kernel il y a ça comme code, ça ressemble bcp
Code :
|
mais dans ce cas je me demande si il faudrait pas plutot utiliser is_valid_ether_addr ?
Marsh Posté le 22-06-2005 à 20:07:34
Nan il faut pas utiliser is_valid, il teste le contraire justement.
je sais pas ce que ca implique que l'adresse commence par ff ( c'est la seule diff entre la version du kernel et celle du module ), je suis entrain de vérifier, mais a terme je pense qu'il faut utiliser celle du kernel
Marsh Posté le 22-06-2005 à 20:14:52
bon disons que c'est provisoire de toute façon, la prochaine version du pilote sera corrigée merci de tes conseils en tt cas.
Marsh Posté le 22-06-2005 à 20:21:06
Bon de ce que j'ai vu, ff:ff:ff:ff:ff:ff est une adresse de broadcast (utilisé notament par ARP) ne tester que le premier ca doit être une version "rapide" du test de broadcast je suppose, pour être "propre" il faudrait donc :
- virer la déclaration de is_multicast_ether_addr() dans le module
- avoir une fonction is_broadcast_ether_addr() ( qui test ff ) (ptêtre qu'elle existe déja )
- que le module face un is_multicast && !is_broadcast à la place de l'ancien multicast.
Alternativement, on pourrait voir ce qui se passe si on utilise simplement le test is_multicast du noyo sans utiliser de is_broadcast, peut-être que d'avoir un "true" en cas de broadcast ne gène en rien la carte, et ca serait l'idéal, bonne séance de test si ca te dis ^^
Enfin le patch que t'as fait suffit amplement pour le moment, mais je suis curieux de voir la décision qui sera finalement prise ...
Marsh Posté le 22-06-2005 à 21:01:43
ouais ça serait intéressant de voir, mais j'ai pas de résau wifi à portée en ce moment.. je peux toujours voir si ça plante pas le tout.. mais je peux faire aucun tests..
Marsh Posté le 22-06-2005 à 21:09:40
mhh (addr[0] != 0xff) je sais pas si c'est un test broadcast rapide, parce que juste après dans le code du modules y a un fonction pour vérifier si c'est broadcast...
Code :
|
et la ça vérifie tout.
Y a p'tet des spécfication particulières pour un multicast qui interdit d'avoir 0xff sans pour autant que ça soit du broadcast...
Marsh Posté le 22-06-2005 à 21:42:11
utilisez le patch mm1 -> il contient les ipw2200 ainsi que reiser4
Marsh Posté le 20-06-2005 à 23:33:59
Bonjours !
Je viens de compiler le nouveau kernel 2.6.12, mais quand je compile le driver IPW2200 ça me donne cette erreur :
make -C /lib/modules/2.6.12-mr-ti.com/build SUBDIRS=/root/ipw2200/ipw2200-1.0.4 MODVERDIR=/root/ipw2200/ipw2200-1.0.4 modules
make[1]: Entering directory `/usr/src/linux-2.6.12'
CC [M] /root/ipw2200/ipw2200-1.0.4/ipw2200.o
In file included from /root/ipw2200/ipw2200-1.0.4/ipw2200.h:50,
from /root/ipw2200/ipw2200-1.0.4/ipw2200.c:33:
/root/ipw2200/ipw2200-1.0.4/net/ieee80211.h:722: error: redefinition of `is_multicast_ether_addr'
include/linux/etherdevice.h:67: error: `is_multicast_ether_addr' previously defined here
make[2]: *** [/root/ipw2200/ipw2200-1.0.4/ipw2200.o] Erreur 1
make[1]: *** [_module_/root/ipw2200/ipw2200-1.0.4] Erreur 2
make[1]: Leaving directory `/usr/src/linux-2.6.12'
make: *** [modules] Erreur 2
Quelqun aurait-il eu cette erreur ?
merci d'avance ...