Autor Tema: parches que vais a necesitar en 3.8 en adelante  (Leído 34452 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14460
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #60 en: 01-09-2013, 22:21 (Domingo) »
Acabo de caer en algo importante , para que puedas reproducir el problema.



airodump-ng hay que ponerlo a escanear en un canal FIJO , si lo lanzas con salto de canales..aunque levantes wlanX no pasara nada.


airmon-ng start wlan0
airodump-ng mon0 -c 6
ifconfig wlan0 up



voila....deberias ver entonces en airodump , el channel -1



Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14460
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #61 en: 01-09-2013, 23:04 (Domingo) »
a ver quien lo descifra ......   ;) ;D

Sabia que si alguien con conocimientos me hechba un cable , se podria solventar.



alist3r

  • Visitante
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #62 en: 01-09-2013, 23:05 (Domingo) »
Por pura curiosidad ,probe los patches contra el 3.11-rc7 y aplican todos ....a ver si hay suerte y si se arregla todo al menos se que las ramas 3.10 y 3.11 las tengo aseguradas ( en caso de que el patch 4 de resultados positivos )

por un lado, el uso de netlink es ya casi una oblicacion para todos, asi que tranquilo por libnl.

por otro, los cambios estructurales son una cosa (son los que nos rompen los parches y las compilaciones) y los cambios menores son otras (que apenas piden modificaciones o mantenimiento).

por lo que respecta a cambios estructurales, desde que se rompió el funcionamiento de airodump-ng hasta este momento, los cambios estan acotados y no son tantos como pudiera parecer.

de hecho solo tenemos identificados los channel_ctx, que entraron allá por 3.7-rcX (no he rastreado con claridad el punto exacto en que pasó a mainline, pero por ahi anda) y que son lo que nos está tocando las bolas y ha generado la cascada de parches que estamos pariendo.  

por lo que respecta a otros commits menores, los hay constantemente y no hay nada de lo que preocuparse. incluso la ruptura de las ralink parece directamente ligada a los channel_ctx. Si puedo iré a dar la brasa en el foto de serialmonkeys sobre este tema; y si es posible que me den feedback sobre la primera propuesta de parche que he hecho (no veo nada más que tocar, salvo el código de los stats. ahora toca probarlo con una ralink)

como te comentaba antes: lo mas enriquecedor e instructivo que puedes hacer es darte un paseo por el github de Linus Torvalds y aprender a usar la interfaz para navegar entre versiones del codigo y ver sus cambios, o mejor aun, en lugar de descargar solo una instantánea de las fuentes, puedes descargar y sincronizar todo el git del kernel (son unos cientos de megas) y luego consultar tranquilamente tooooooda la historia de cambios y modificaciones en el tiempo usando un buen browser de git como gitk, que aunque sea viejito va de fabula para navegar por el tiempo en un repo git.

PD: tengo que mirar la historia del driver ralink con mucha mas calma. hay una posibilidad considerable de que el parche 4 resuelva el problema de las ralink indirectamente, ya que la consulta de stats tambien acaba pasando por get_channel. en tal caso, mi propuesta de parche se puede ir a la papelera directamente, pero de nuevo, se tendrá que probar con una ralink a mano.
« Última modificación: 01-09-2013, 23:19 (Domingo) por alister »

Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14460
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #63 en: 01-09-2013, 23:14 (Domingo) »
tu guarda los parches que te vendran bien ... sobretodo el 4.


yo cuento un total de 5 modificaciones en kernel ...que no esta nada mal.


yo tengo un ralink 3070 si quieres que pruebe algo sobre este que hemos parcheado dimelo.

tengo

ar5005gs
ar9285
ar9271
rtl8187l
rt3070l
rt73



ahora a pelearme con aufs ... ;)



Y sobretodo GRACIAS




Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14460
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #64 en: 01-09-2013, 23:19 (Domingo) »
Historia de cambios sobre los canales.


hasta la rama 3.5  ,  todo bien

ramas 3.6 y 3.7 funcionan perfectas simplemente con

Código: [Seleccionar]
--- a/net/wireless/chan.c 2013-08-29 18:47:51.000000000 +0200
+++ b/net/wireless/chan.c 2013-08-31 22:20:45.014734447 +0200
@@ -441,4 +441,2 @@
  return -EOPNOTSUPP;
- if (!cfg80211_has_monitors_only(rdev))
- return -EBUSY;


ramas 3.8  en adelante ya todas implementan controles exhaustivos sobre el uso de canales.


asi que parte de la 3.8 hacia arriba.



Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14460
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #65 en: 01-09-2013, 23:21 (Domingo) »
a Mathy  , le falto encontrar este ultimo del parche 4 aunque hiba muy bien encaminado/a  que no se si es tio o tia  ;D

alist3r

  • Visitante
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #66 en: 01-09-2013, 23:35 (Domingo) »
edito esto porque no habia leido tu mensaje anterior indicando que ya está.

tu guarda los parches que te vendran bien ... sobretodo el 4.
mi github se encarga de eso. no problem.

Citar
si quieres que pruebe algo sobre este que hemos parcheado dimelo.

habria que probar todos los parches de tipo general contra el stack (los que he numerado como 1 2 y 3), SIN el parche ralink, para acabar de determinar si mi parche es un acierto o una cagada.

para hacerlo, cualquier ralink que use drivers de la familia rt2x00 deberia servir para atacar ese problema de las ralink:
rt2400, rt2500, rt2570, rt61 and rt73

dejemos el asunto de las atheros de momento. esto tambien deberia estar resuelto indirectamente

sabemos que en el codigo general del stack 80211 las modificaciones van a ser obligatorias, por eso, en mi opinión antes de nada deberias probar el parche de McPherson por si hubiera cambios en los resultados.
Es sumamente probable que eso resuelva los problemas de ralink etc.


--> tema finiquitado, pues.

Creo que es mejor que intentemos no ahondar en el código especifico de cada driver, siempre que pertenezcan al stack mac80211, la solución mas fiable estará en el stack80211. Adicionalmente, vamos a proveernos de una base científica y fáctica para tomar caminos, es decir, que si el git muestra que no ha habido modificaciones en el código de ralink en el último año, podemos descartar dicho código como causante y centrarnos en el stack. Esa seria la manera cientifica y eficiente de conseguir los parches que buscamos.

bueno, esto sigue siendo atemporalmente válido. cuanto más conocimiento científico sobre el código, y sobre todo, el uso correcto de git para comprender la evolucion del kernel a lo largo del tiempo y encontrar dónde se rompieron las cosas, más posibilidades de dar en la tecla.

Citar
ahora a pelearme con aufs ... ;)

Okajima lo mantiene siempre en forma y sincronizado con lo último de mainline, por la cuenta que le trae.
http://sourceforge.net/p/aufs/aufs3-standalone/ci/aufs3.10/tree/
no creo que te dé por saco.

Citar
Y sobretodo GRACIAS

de nada hombre. todos los auditores y todas las distros tenemos este objetivo en común.
la tendencia de linux es hacia lo corporativo/servidores, y nosotros debemos defender nuestro trocito de terreno juntos.
me quedan un par de dias relajados, y luego vuelvo a perderme en mis proyectos profesioanles. hay que aprovechar a fondo para romper el atascamiento, y ya luego se irá haciendo con calma.
« Última modificación: 01-09-2013, 23:57 (Domingo) por alister »

alist3r

  • Visitante
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #67 en: 01-09-2013, 23:52 (Domingo) »
a ver quien lo descifra ......   ;) ;D

acabo de verlo xD

PD: efectivamente, levantar la interfaz wlan0 por segunda vez cuando la mon0 ya estaba en marcha en un canal fijo, genera el error en aircrack cuando el kernel solo tiene el parche primero.

De todos modos eso a nivel práctico, no tendria que sudecer jamás, me equivoco?

A nivel práctico ya se sabe que las interfaces managed no funcionaran nunca bien cuando haya otras monitor trabajando, y que siempre se van a pelear irremediablemente por los recursos. Despues de todo son dos dispositivos virtuales accediendo a un solo dispositivo físico.

De todos modos, cuanto mas se puedan evitar estas situaciones, tanto mejor, desde luego.

PPD: quedaria confirmar con todos los drivers posibles y todo el hardware a mano.
« Última modificación: 02-09-2013, 00:01 (Lunes) por alister »

Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14460
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #68 en: 01-09-2013, 23:58 (Domingo) »
a ver quien lo descifra ......   ;) ;D

acabo de verlo xD

Todo solventado añadiendo el parche 4.

Ya toy compilando con aufs .. uso un script personal, que automatiza TODO , compilacion y parcheos de kernel ..ademas de generarme mis xzm etc ...vmlinuz ...  y tenia un pequeño problema al identificar la version dekernel ..con un parametro en cut  para saber solo el numero ....

el 3.10 , me lo cortaba a 3.1 ..y de hay los fallos despues.  ;D

ya he solventado ese pequeño bug en mi script , y ya a que trabaje el script por mi ....como a  ti te gusta.  ;)

alist3r

  • Visitante
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #69 en: 02-09-2013, 00:11 (Lunes) »
Todo solventado añadiendo el parche 4.

EPIC WIN


Citar
Ya toy compilando con aufs .. uso un script personal, que automatiza TODO , compilacion y parcheos de kernel ..ademas de generarme mis xzm etc ...vmlinuz ...  y tenia un pequeño problema al identificar la version dekernel ..con un parametro en cut  para saber solo el numero ....

el 3.10 , me lo cortaba a 3.1 ..y de hay los fallos despues.  ;D

me quito el sombrero porque eres de las personas en este foro que más se ha superado a sí misma y ha empujado sus límites. creo que te llevas lo mejor de cada uno de los demás. aunque por otro lado es lógico puesto que le dedicas más tiempo que nadie; en el fondo nada es producto de la suerte.

tambien habrás cometido errores, pero los errores grandes sólo están en objetivos grandes: "al que juzgue mi camino, le presto mis zapatos"

Citar
ya he solventado ese pequeño bug en mi script , y ya a que trabaje el script por mi ....como a  ti te gusta.  ;)
hack yea! nada como automatizar las cosas para llegar el doble de lejos en la mitad de tiempo y disfrutando el doble del camino 8) la automatizacion es lo que diferencia a un PC de una maquina de escribir XD
« Última modificación: 02-09-2013, 00:14 (Lunes) por alister »

alist3r

  • Visitante
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #70 en: 02-09-2013, 00:24 (Lunes) »
si quieres fusionar los parches 1 y 2, o si quieres fusionarlos todos para más comodidad, puedes usar las difftools.
Código: [Seleccionar]
combinediff -U 1 nombredelparche1 nombredelparche2 nombredelparche3 ... > nombre_del_patch_set_combinado.patch

y una ultima doble verificación, contra un pack de fuentes limpio, recien extraido del tarball:

Código: [Seleccionar]
patch -p1 --dry-run < ruta/hacia/el/nombre_del_patch_set_combinado.patch

y despues de eso puedes modificar el post primero con los enlaces que quieras, borrarlo o hacer como te vaya mejor
« Última modificación: 02-09-2013, 00:26 (Lunes) por alister »

Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14460
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #71 en: 02-09-2013, 00:49 (Lunes) »
si quieres fusionar los parches 1 y 2, o si quieres fusionarlos todos para más comodidad, puedes usar las difftools.
Código: [Seleccionar]
combinediff -U 1 nombredelparche1 nombredelparche2 nombredelparche3 ... > nombre_del_patch_set_combinado.patch

y una ultima doble verificación, contra un pack de fuentes limpio, recien extraido del tarball:

Código: [Seleccionar]
patch -p1 --dry-run < ruta/hacia/el/nombre_del_patch_set_combinado.patch

y despues de eso puedes modificar el post primero con los enlaces que quieras, borrarlo o hacer como te vaya mejor


Voy a hacer justo lo contrario , ... el primero que contenia 2 parcheos , lo voy a dividir en 2 , por que seguro que vendran mas toqueteos , y prefiero tener cada uno por separado , asi si uno falla , pues tener el objetivo bien claro.

Espero que no les de por añadir mas comprobaciones de channel , y solo sea corregir el numero de linea a parchear en caso de que añadan code y no coincidan.   ;)

Ya he arrancado el 3.10.10.PAE , en modo live y todo perfect , he de refinar algo en la config por que el dmesg me arroja un par de errores con mi hardware.  ;) , pero eso ya es otro tema.  >:(



Código: [Seleccionar]
wifislax ~ # dmesg | grep error
[    4.105262] ACPI: Marking method WMNB as Serialized because of AE_ALREADY_EXISTS error
[    4.126920] asus-nb-wmi: probe of asus-nb-wmi failed with error -5
wifislax ~ #



Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14460
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #72 en: 02-09-2013, 00:54 (Lunes) »
Parece que es un pequeño bug, en la rama 3.10 y solved en el 3.11

https://bugs.archlinux.org/task/35320
« Última modificación: 02-09-2013, 00:55 (Lunes) por USUARIONUEVO »

alist3r

  • Visitante
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #73 en: 02-09-2013, 03:06 (Lunes) »
Voy a hacer justo lo contrario , ... el primero que contenia 2 parcheos , lo voy a dividir en 2 , por que seguro que vendran mas toqueteos , y prefiero tener cada uno por separado , asi si uno falla , pues tener el objetivo bien claro.
por norma general a los hackers del kernel les gustan asi, separaditos. montones de ellos, uno para cada "feature" o cambio específico en un archivo específico del código.

Citar
Espero que no les de por añadir mas comprobaciones de channel , y s[olo sea corregir el numero de linea a parchear en caso de que añadan code y no coincidan.   ;)
por favor notese que no ha sido a mala leche. la segunda mitad del parche 1, asi como el cuarto no es exactamente por el hecho de que se comprobase el modo monitor.
efectivamente, habia comprobaciones, y para eso estaba la primera mitad del parche 1.

pero el problema ha venido dado por una des-sincronización introducida por una caracteristica nueva. la caracteristica nueva crea un nuevo sitio donde se puede guardar la config de la interfaz wifi. y este nuevo sitio donde habia que consultar, no estaba reflejado como posibilidad en el caso de las interfaces en modo monitor.

es mas, se podria decir que hemos hecho crecer la caracteristica de los channel_ctx, en lugar de recortarla; ahora el codigo de mac80211 es capaz de manejar contextos de canales en interfaces que estan en modo monitor, con las cuales antes no interaccionaba.

Citar
Ya he arrancado el 3.10.10.PAE , en modo live y todo perfect

perfect. congratulations! parece que sacarás una versión nueva de la live en breve.


Código: [Seleccionar]
wifislax ~ # dmesg | grep error
[    4.105262] ACPI: Marking method WMNB as Serialized because of AE_ALREADY_EXISTS error
[    4.126920] asus-nb-wmi: probe of asus-nb-wmi failed with error -5
wifislax ~ #


si no está, intenta incluir el modulo asus-nb-wmi en el initrd
EDIT: de todos modos como dices, en la rc-2 pasaron un commit que salvó la vida de algunos usuarios pero ha jodido la de otros. Es el pez que se muerde la cola. Harán una regresión del commit, y tendrán que estudiar mejor cómo resolver el problema sin crear otro.
« Última modificación: 02-09-2013, 03:21 (Lunes) por alister »

Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14460
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #74 en: 02-09-2013, 04:53 (Lunes) »
nada , de todas formas ese bug solo me afecta al control sobre las teclas de funcion especial en los laptop-asus.

3.9 y 3.10 parecen afectados.


3.8 -->> ok
3.11 -->> dicen ok , estoy compilando el rc7 a ver  ;)

alist3r

  • Visitante
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #75 en: 02-09-2013, 13:38 (Lunes) »
no uso las release candidates porque cambian mucho y a veces estan en estados "braindead". pero igual te sale jodida, que te sale perfecta. una vez mas es recomendable analizar la historia del git para comprender qué cambios hay y decidir si quieres entregar ese kernel al publico. incluso puedes hacer un backporting de ese commit que te interesa, llevándotelo desde 3.11-rc a 3.10.10. lo exportas como parche, lo aplicas contra 3.10.10, y tienes un kernel stable con una feature critica de 3.11-rc que te interesa tener.
todo es probar!

Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14460
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #76 en: 02-09-2013, 18:54 (Lunes) »
Lo de probar el 3.11 rc7 es mas curiosidad por saber si efectivamente solventa el bug , solo eso.

El bug no me parece critico , esperemos a otros ausarios con portátiles asus, a ver que cuentan.

Aun no probe el 3.11rc7 por que me salio mal 2 veces que lo compile ( incompetencias mias ) , y lo deje estar esta mañana.

Si el 3.11-rc7 solventa dicho asunto , mi idea era la que apuntas, de rebuscar el parche que le han aplicado a la rama 3.11.  ;D  .. me lees la mente.

Pero primero quiero ver si es verdad que esta reparado , sino es buscar a lo tonto para nada.

alist3r

  • Visitante
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #77 en: 02-09-2013, 19:40 (Lunes) »
he estado mirando el código no acabo de verlo claro, pero es que a veces en github no se puede exprimir toda la potencia de la navegacion en el tiempo de git.
https://github.com/torvalds/linux/blame/144a19ac94526c4609fa8b8264e6f9c3d48f7a55/drivers/platform/x86/asus-nb-wmi.c
miraré con mas calma a la noche con un programa local, y te cuento si ha cotado el / los commits en cuestion. tiene que ser sencillo porque la regresión se ha hecho en juno de 2013 (3.11-rc2)

Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14460
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #78 en: 02-09-2013, 20:36 (Lunes) »
¿ abrimos otro hilo a parte o seguimos squi ?



KERNEL 3.11 RC7 -->>  LIBRE DE BUG

Asi que hay que navegar entre los patches.

asus-nb-wmi

es donde hay que buscar , aunque veo que ya vas por el camino.  ;)


Quiero avisarte para que no te quedes colgado , HOY NO TRABAJO , estoy en casa , asi que seguramente a las 22.0 o 23:00 echare un vistazo al foro , y me acostare. , lo digo por que no te quedes a la espoera de ver si entro mas tarde , que normalmente lo hago por que trabajo pero este mes me toca librar los lunes.  ;D



Empezare bajando ..los parches de cada rc

https://www.kernel.org/pub/linux/kernel/next/
« Última modificación: 02-09-2013, 20:41 (Lunes) por USUARIONUEVO »

Desconectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 14460
Re: parches que vais a necesitar en 3.8 en adelante
« Respuesta #79 en: 02-09-2013, 20:47 (Lunes) »
https://lkml.org/lkml/2013/7/10/446


De todas formas , no falta mucho para el 3.11 stable ... pero bueno , ya es por cabezoneria  ;D