/*
* 2023/5/31 11:45 qing 38度
*/
/*
* Unable to handle kernel NULL pointer dereference at virtual address 00000000
*/
非法地址访问出错,使用了空指针
/*
* BUG: scheduling while atomic: fpv_cams/605/0x00010001
*/
试图在不应该休眠的地方休眠,比如在受自旋锁保护的临界区或中断处理程序中.
可以休眠的常见示例有 mutex_lock()、kmalloc(..., GFP_KERNEL)、get_user() 和 put_user()
如semaphore,mutex,sleep之类的可休眠的函数。
msleep ssleep 睡眠函数也不行。
mdelay udelay可以使用。
/*
* Hardware name: Generic DT based system
*/
这个也是由于 BUG: scheduling while atomic 导致的。
/*
* external abort on non-linefetch
*/
常见的原因是:读写芯片内某个部件的寄存器时,该部件的 power 和 clock 还没有开启。