Созданное мной CWM рекавери всегда вылетает


Я создал CWM recovery для своего устройства (Samsung Young S6310) по инструкции в CyanogemMod. Проблема в том, что это рекавери ничего не показывает.
Я проверил код восстановления, добавил функции fprintf() для отладки (журнал находится в /tmp/recovery.log) и обнаружил, что когда восстановление должно отображать что-то на устройстве - оно вылетает.
Когда я пытаюсь запустить восстановление вручную (с помощью / sbin / recovery), я получаю ошибку сегментации, и на экране ничего не отображается.
Это устройство в настоящее время не поддерживается CyanogenMod, но мне нужен рабочий код для восстановления. Как я могу это исправить или проанализировать проблему?
(Я не могу использовать execinfo.h - он не поддерживается Android).
Кажется, что это связано с OpenGL, но я не уверен.
Спасибо

1 ответ

Причиной сбоя был слишком маленький размер struct fb_var_screeninfo.
Я нашел переопределение памяти, которое вызвало этот сбой.
Затем я покопался в ядре и нашел правильный размер этой структуры.
Теперь у меня есть работающий рекавери для Янга!

Другие вопросы по тегам