Mi teléfono se reinicia después de un kernel, ¿qué puedo hacer?

Uso el firmware CyanogenMod en mi teléfono (CM7.2 en un HTC Wildfire) y cuando tomo fotos a veces se reinicia. Descubrí que ocurre un kernel ups debido a una desreferencia de puntero nulo en el kernel.

Ya presenté un informe de error en el rastreador para el proyecto CyanogenMod.

¿ Puede alguien ayudarme a entender el Kernel Oops en last_ksmg ?
Si lo necesita, también hay un logcat .

Hice su pregunta más genérica, ya que su problema estaba demasiado localizado y solo los mantenedores de su firmware pueden abordarlo (para el cual ya presentó correctamente un informe de error). Depende de los desarrolladores arreglarlo. Di algunas sugerencias genéricas aquí sobre lo que se puede hacer en tal caso.

Respuestas (2)

He echado un vistazo a kmsg y logcat,

El logcat estaba mostrando esto:

[ 01-13 13:14:11.036   138:0xc46 I/mm-camera ]Open Device node : /dev/msm_camera/frame0 
[ 01-13 13:14:11.036   138:0xc46 E/mm-camera ]Got exception but camframe_exit == 0!
[ 01-13 13:14:11.046   138:0xc46 E/QualcommCameraHardware ]ignoring preview callback--camera has been stopped
[ 01-13 13:14:11.196   138:0xc04 E/mm-camera 7x-vfe ]Received VFE start ACK!!! This is a user preview start.
[ 01-13 13:14:11.196   138:0x8a D/QualcommCameraHardware ]startPreview X
[ 01-13 13:14:11.226  2840:0xb18 V/camera   ]mJpegCallbackFinishTime = 725ms
[ 01-13 13:14:11.337  2840:0xb18 D/camera   ]
.....
[ 01-13 13:14:14.400   138:0x8a D/QualcommCameraHardware ]FLASHLIGHT is ENABLED
[ 01-13 13:14:14.410   138:0x8a D/QualcommCameraHardware ]stopPreviewInternal E: 1
[ 01-13 13:14:14.410   138:0x8a D/QualcommCameraHardware ]cancelAutoFocusInternal E
[ 01-13 13:14:14.410   138:0x8a D/QualcommCameraHardware ]cancelAutoFocusInternal X: 0
[ 01-13 13:14:14.480   138:0xc04 I/mm-camera 7x-vfe ]vfe_process_QDSP_VFETASK_MSG_VFE_STOP_ACK: call mmcamera_vfe_stop_ack_callback()

Me pregunto si hay algún problema con la cámara, como cuestión de interés, al tomar una instantánea con la cámara, generalmente reproduce un clip de audio de sonido de "instantánea" cuando se presiona el botón.

Esto está coincidiendo con el oops:

[ 4264.409912] adsp_pmem_del name JPEGTASK vaddr:0x40e68000 paddr:0x27012000 len:4096
[ 4264.420715] adsp: closing module JPEGTASK
[ 4264.421173] adsp: disabling module JPEGTASK
[ 4264.422485] [KEY] gpiomatrix: key 272, 0-0 (35-42) changed to 1
[ 4264.444183] [KEY] gpiomatrix: key 272, 0-0 (35-42) changed to 1
[ 4264.465789] [KEY] gpiomatrix: key 272, 0-0 (35-42) changed to 1
[ 4264.487548] [KEY] gpiomatrix: key 272, 0-0 (35-42) changed to 1
[ 4264.509094] [KEY] gpiomatrix: key 272, 0-0 (35-42) changed to 1
[ 4264.530853] [KEY] gpiomatrix: key 272, 0-0 (35-42) changed to 1
[ 4264.552398] [KEY] gpiomatrix: key 272, 0-0 (35-42) changed to 1
[ 4264.574157] [KEY] gpiomatrix: key 272, 0-0 (35-42) changed to 1
[ 4264.595733] [KEY] gpiomatrix: key 272, 0-0 (35-42) changed to 1
[ 4264.600616] [AUD][audmgr.c:audmgr_enable] audmgr_enable: ARM9 did not reply to RPC am->state = 2
[ 4264.601013] Unable to handle kernel NULL pointer dereference at virtual address 00000000
[ 4264.601226] pgd = e321c000
[ 4264.601593] [00000000] *pgd=26037031, *pte=00000000, *ppte=00000000
[ 4264.602294] Internal error: Oops: 817 [#1] PREEMPT

Así que supongo que el reproductor de medios, en algún lugar, entre el hardware de Qualcomm que controla la cámara y la reproducción se estrelló. Estoy haciendo apuestas sobre la propia cámara del núcleo...

Es mejor publicar esto en el foro de CM para ver si se trata de un problema conocido.

El OP ya presentó correctamente un informe de error para esto ... En cuanto a las cosas de audmgr: tal vez las bibliotecas también inicialicen eso cuando abre la aplicación de la cámara. De todos modos: no podemos hacer mucho aquí, insinué algunos procedimientos e información genérica y sugerí cómo reaccionar...
@ ce4 el errr... la clave está [KEY] gpiomatrix: key 272...relacionada con una entrada clave que toma una instantánea, ya sea haciendo zoom o presionando el botón 'tomar instantánea'... justo antes del ups... :)
En cuanto a eso, no hay mucho que podamos hacer... :) /me encojo de hombros
Correcto. Eso depende de los chicos de CM... Inicialmente diría, cerrar porque 'demasiado localizado', pero luego lo hice más genérico para que también fuera útil para otros (el OP afirma que solo quería saber qué estaba pasando, y tal , para no hacer que lo arreglemos). aquí está el informe de errores , por cierto.
¡Gracias! También pensé que el problema está relacionado con el sonido, pero estaba en modo silencioso, por lo que ya no es normal que se llame al servicio de audio. Efectivamente , es key 272la tecla utilizada para tomar una instantánea. Sí, solo quería entender, pero si puede hacer más, puede hacerlo, pero muchas gracias @ ce4 y @ t0mm13b.
@Gadcam no podemos hacer más, ya que ese kernel está relacionado con su ROM CM. Solo espere y vea qué sucede con ese informe de error que ha presentado. :)
Pensé que sí... Pero a veces el oficial de un proyecto es lento porque hay más importante en otro lugar, así que intentaré arreglarlo o darles el mayor elemento que pueda.

Eché un vistazo al klog, todo lo que puedes hacer es:

  • busque un kernel diferente (¿su firmware está actualizado?)
  • pídale al mantenedor/desarrollador (¡correcto!) que lo arregle,
    especialmente si se trata de una compilación no oficial de CyanogenMod, no puede preguntarle al equipo de CM, pero debe preguntar en el foro de dónde obtuvo la imagen del firmware.
  • localícelo y arregle el kernel usted mismo (es poco probable que haya preguntado esto aquí)

Algunos antecedentes:
definitivamente es un problema del núcleo, eche un vistazo a la línea

[ 4264.601013] No se puede manejar la falta de referencia del puntero NULL del kernel en la dirección virtual 00000000
...
[ 4264.603424] La PC está en audmgr_enable+0x168/0x1c8

Si desea saber más, puede leer en Stackoverflow sobre Cómo diagnosticar un kernel oops y qué es una falta de referencia de puntero nulo del kernel de Linux .
También hay un HowTo disponible aquí .

aquí también hay un buen tutorial: ptgmedia.pearsoncmg.com/images/013147751X/downloads/…
Como se escribió en el informe de error, el firmware está actualizado y es oficial. Gracias por los enlaces de los temas.