- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在使用 Monta-Vista Linux 2.6.10。在内核初始化期间,在使用“insmod”注册我的模块时,在重新启动 7,000 次后发生以下内核转储。
DMY Touch Panel Filter Driver Version Ver.1.0.0 Major=200
usbdmy_init
DMY USB-Driver Ver.1.0.5
usbdmy_probe vendor=$afa product=$3e8
usbdmy_probe: endpoint irq-in 1 ,interval=1
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = c7a28000
[00000000] *pgd=a79fd031, *pte=00000000, *ppte=00000000
Internal error: Oops: 817 [#1]
Modules linked in: usbdmy tpdmy
CPU: 0
PC is at __free_pages+0x24/0x64
LR is at free_task+0x1c/0x34
pc : [<c005df04>] lr : [<c003833c>] Tainted: P
sp : c7e51eb0 ip : c7e51ec0 fp : c7e51ebc
r10: c7ddf3c8 r9 : 00000005 r8 : 00000000
r7 : 00000000 r6 : c7e50000 r5 : c7ddf320 r4 : c7ddf320
r3 : ffffffff r2 : 00000000 r1 : 00000001 r0 : c03eb900
Flags: nZCv IRQs on FIQs on Mode SVC_32 Segment user
Control: 397F Table: A7A28000 DAC: 00000015
Process default.hotplug (pid: 953, stack limit = 0xc7e501b0)
Stack: (0xc7e51eb0 to 0xc7e52000)
1ea0: c7e51ed4 c7e51ec0 c003833c c005deec
1ec0: c7ddf320 c7ddf320 c7e51efc c7e51ed8 c003c924 c003832c c785e6c0 000003ba
1ee0: c7ddf320 c7e50000 c7ddf320 00000000 c7e51f84 c7e51f00 c003efbc c003c7b8
1f00: c785e6c0 4000cba4 c7a28000 00000000 c7a28000 c7861b60 00000000 c7861ac0
1f20: 7efff034 ffffffff 00000000 c7861ac0 c0036dec 00000000 00000000 c7e51f48
1f40: 00000000 c7861ac0 c0036dec c7861bc4 c7861bc4 c7e51fb0 00000001 ffffffea
1f60: 7efff034 ffffffff 00000072 c00231f4 c7e50000 00900072 c7e51fa4 c7e51f88
1f80: c003f404 c003e6a0 00000000 ffffffff c7e51fec 00000001 00000000 c7e51fa8
1fa0: c0022a60 c003f3d8 00000001 7efff034 ffffffff 7efff034 00000001 00000000
1fc0: 00000001 7efff034 ffffffff 000b4388 00000000 ffffffff 00000000 00000000
1fe0: 40018d30 7efff000 400f67a0 400f67c0 60000010 ffffffff 00000000 00000000
Backtrace:
[<c005dee0>] (__free_pages+0x0/0x64) from [<c003833c>] (free_task+0x1c/0x34)
[<c0038320>] (free_task+0x0/0x34) from [<c003c924>] (release_task+0x178/0x188)
r4 = C7DDF320
[<c003c7ac>] (release_task+0x0/0x188) from [<c003efbc>] (do_wait+0x928/0xca8)
r8 = 00000000 r7 = C7DDF320 r6 = C7E50000 r5 = C7DDF320
r4 = 000003BA
[<c003e694>] (do_wait+0x0/0xca8) from [<c003f404>] (sys_wait4+0x38/0x4c)
[<c003f3cc>] (sys_wait4+0x0/0x4c) from [<c0022a60>] (ret_fast_syscall+0x0/0x2c)
r4 = 00000001
Code: e2132001 189da800 e5903004 e3730001 (05822000)
prev->state: 2 != TASK_RUNNING??
default.hotplug/953: BUG in __schedule at kernel/sched.c:2905
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = c7a3c000
[00000000] *pgd=a79a6031, *pte=00000000, *ppte=00000000
Internal error: Oops: 817 [#2]
Modules linked in: usbdmy tpdmy
CPU: 0
PC is at __free_pages+0x24/0x64
LR is at free_task+0x1c/0x34
pc : [<c005df04>] lr : [<c003833c>] Tainted: P
sp : c7a27eb0 ip : c7a27ec0 fp : c7a27ebc
r10: c7861b68 r9 : 00000005 r8 : 00000000
r7 : 00000000 r6 : c7a26000 r5 : c7861ac0 r4 : c7861ac0
r3 : ffffffff r2 : 00000000 r1 : 00000001 r0 : c03ebfc0
Flags: nZCv IRQs on FIQs on Mode SVC_32 Segment user
Control: 397F Table: A7A3C000 DAC: 00000015
Process default.hotplug (pid: 948, stack limit = 0xc7a261b0)
Stack: (0xc7a27eb0 to 0xc7a28000)
7ea0: c7a27ed4 c7a27ec0 c003833c c005deec
7ec0: c7861ac0 c7861ac0 c7a27efc c7a27ed8 c003c924 c003832c c0016040 000003cb
7ee0: c7861ac0 c7a26000 c7861ac0 00000000 c7a27f84 c7a27f00 c003efbc c003c7b8
7f00: 00000000 00000001 c7a3c000 00000000 c7a3c000 c7ddf140 00000000 c7ddf0a0
7f20: 7efff684 ffffffff 00000000 c7ddf0a0 c0036dec 00000000 00000000 c7a27f48
7f40: 00000000 c7ddf0a0 c0036dec c7ddf1a4 c7ddf1a4 c7a27fb0 00000000 ffffffea
7f60: 7efff684 ffffffff 00000072 c00231f4 c7a26000 00900072 c7a27fa4 c7a27f88
7f80: c003f404 c003e6a0 00000000 ffffffff c7a27fec 00000001 00000000 c7a27fa8
7fa0: c0022a60 c003f3d8 00000001 7efff684 ffffffff 7efff684 00000001 00000000
7fc0: 00000001 7efff684 ffffffff 00000003 00000000 00000001 00000003 00000000
7fe0: 40018d30 7efff650 400f67a0 400f67c0 60000010 ffffffff 763074f6 0000023c
Backtrace:
[<c005dee0>] (__free_pages+0x0/0x64) from [<c003833c>] (free_task+0x1c/0x34)
[<c0038320>] (free_task+0x0/0x34) from [<c003c924>] (release_task+0x178/0x188)
r4 = C7861AC0
[<c003c7ac>] (release_task+0x0/0x188) from [<c003efbc>] (do_wait+0x928/0xca8)
r8 = 00000000 r7 = C7861AC0 r6 = C7A26000 r5 = C7861AC0
r4 = 000003CB
[<c003e694>] (do_wait+0x0/0xca8) from [<c003f404>] (sys_wait4+0x38/0x4c)
[<c003f3cc>] (sys_wait4+0x0/0x4c) from [<c0022a60>] (ret_fast_syscall+0x0/0x2c)
r4 = 00000001
Code: e2132001 189da800 e5903004 e3730001 (05822000)
prev->state: 2 != TASK_RUNNING??
default.hotplug/948: BUG in __schedule at kernel/sched.c:2905
usbdmy_specify : len=2 data=$06 $00
drivers/usb/core/file.c: looking for a minor, starting at 181
Unable to handle kernel paging request at virtual address 0000a000
pgd = c0004000
[0000a000] *pgd=00000000
Internal error: Oops: 817 [#3]
Modules linked in: usbdmy tpdmy
CPU: 0
PC is at memcpy+0x5c/0x5a0
LR is at copy_process+0xbc/0xe14
pc : [<c010a4bc>] lr : [<c0039300>] Tainted: P
sp : c0467e0c ip : 00000000 fp : c0467e34
r10: 00804111 r9 : 00000000 r8 : 00000000
r7 : 00000000 r6 : 00000000 r5 : 00000000 r4 : 00000000
r3 : 00000000 r2 : 00000030 r1 : c0466120 r0 : 00009ff4
Flags: nzCv IRQs on FIQs on Mode SVC_32 Segment kernel
Control: 397F Table: A7A38000 DAC: 00000017
Process khelper (pid: 5, stack limit = 0xc04661b0)
Stack: (0xc0467e0c to 0xc0468000)
7e00: 00009ef4 c7ddfd20 c042f2c0 00009ef4 c0466000
7e20: fffffff4 c02d8388 c0467e7c c0467e38 c0039300 c010a46c 00000000 c0467ed8
7e40: 00000000 00000000 c0467ed8 00000000 00200200 00000000 00804111 000003cc
7e60: c0466000 00000000 00000000 c0467ed8 c0467ecc c0467e80 c003a1c4 c0039250
7e80: 00000000 00000000 000003cc c0467e98 00000000 c0467e94 c0467e94 c7ddfaa0
7ea0: c0467ecc 00804111 c0467ed8 c7a01d60 c004c548 c0431ec0 c7a01d60 c0431ec8
7ec0: c0467f3c c0467ed0 c002557c c003a100 00000000 00000000 00000000 c7a01d60
7ee0: c004c548 c003d5f0 00000000 00000000 00000000 00000000 00000000 00000000
7f00: 00000000 00000000 00000000 00000000 00000000 c0024d50 00000013 00000000
7f20: c7a01d60 c7a01d28 c0466000 00000000 c0467f54 c0467f40 c004c6c4 c0025514
7f40: c7a01e1c c7a01d2c c0467fc4 c0467f58 c004cccc c004c698 c0451f2c c004c68c
7f60: ffffffff ffffffff 00000001 00000000 c0036dec 00010000 00000000 c0466000
7f80: 00000000 c042f2c0 c0036dec 00100100 00200200 00000000 c0467fc4 c0431ec0
7fa0: c0466000 c0451f28 c004cac8 fffffffc 00000000 00000000 c0467ff4 c0467fc8
7fc0: c0051b74 c004cad4 ffffffff ffffffff 00000000 00000000 00000000 00000000
7fe0: 00000000 00000000 00000000 c0467ff8 c003d5f0 c0051a98 cc33cc33 cc33cc33
Backtrace:
[<c010a460>] (memcpy+0x0/0x5a0) from [<c0039300>] (copy_process+0xbc/0xe14)
r9 = C02D8388 r8 = FFFFFFF4 r7 = C0466000 r6 = 00009EF4
r5 = C042F2C0 r4 = C7DDFD20 r0 = 00009EF4
[<c0039244>] (copy_process+0x0/0xe14) from [<c003a1c4>] (do_fork+0xd0/0x1e8)
[<c003a0f4>] (do_fork+0x0/0x1e8) from [<c002557c>] (kernel_thread+0x74/0x84)
[<c0025508>] (kernel_thread+0x0/0x84) from [<c004c6c4>] (__call_usermodehelper+0x38/0x74)
r7 = 00000000 r6 = C0466000 r5 = C7A01D28 r4 = C7A01D60
[<c004c68c>] (__call_usermodehelper+0x0/0x74) from [<c004cccc>] (worker_thread+0x204/0x2c0)
r4 = C7A01D2C
[<c004cac8>] (worker_thread+0x0/0x2c0) from [<c0051b74>] (kthread+0xe8/0x11c)
[<c0051a8c>] (kthread+0x0/0x11c) from [<c003d5f0>] (do_exit+0x0/0xd8c)
r8 = 00000000 r7 = 00000000 r6 = 00000000 r5 = 00000000
r4 = 00000000
Code: f5d1f03c f5d1f05c e8b113f8 e2522020 (a8a013f8)
不知各位大侠能否帮我看看为什么会出现这样的错误。谢谢。
最佳答案
我认为您的内核或模块二进制文件已损坏。
因为您声明启动设备是 CF 卡,并且您的脚本会连续重启它 7000 次,所以在我看来,CF 卡必须承受相当多的写入事件。
只有 eMMC 和 micro-SD 卡等较新的闪存介质设备通常具有闪存磨损均衡的硬件支持,因此可以(几乎)安全地用作 ext3/ext4 文件系统。
对于较旧的闪存介质(如 CF 卡),通常不会实现适当的闪存磨损均衡,并且只需要几天(有时是几个小时)就会磨损。
我的建议是检查您系统上的每个文件,如果校验和与另一个正常工作的系统的校验和相匹配。我几乎可以肯定,在您的情况下,至少有一个文件无法正确 check out 。
关于linux - 内核初始化期间崩溃(模块 insmod),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15609842/
总的来说,我对 Linux 内核和操作系统非常感兴趣。我想知道的是,内核的文件类型或扩展名是什么?它显然没有 .exe 或 .out 扩展名,因为它们用于安装在操作系统上的应用程序。 内核只是一个二进
我需要为 Raspbian Linux 内核添加一个自己的系统调用。现在我在搜索了大约 2 天以找到解决方案后陷入困境。 要加一个系统调用,我基本上是按照大纲来的( http://elinux.org
对于一个学术项目,我希望将源文件 (myfile.c) 添加到 kernel/目录,与exit.c相同的目录和 fork.c .构建系统似乎不会自动获取新文件,因为我在 myfile.c 中定义的函数
浏览器排行榜 浏览器市占率排行榜全球榜 。 浏览器市占率排行榜中国榜 -快科技 。 如果按照浏览器内核来看, Chromium 内核的市场占有率无疑是最大的,一家独大
给定一个进程或线程的任务结构,迭代属于同一进程的所有其他线程的习惯用法是什么? 最佳答案 Linux 不区分进程(任务)和线程。库调用 fork() 和 pthread_create() 使用相同的系
我正在用c(不是linux。完全从头开始)从头开始制作一个内核,但我遇到了一些问题。我有这个代码: #include "timer.h" int ms = 0; void timer_handler(
我正在从头开始制作一个 C 内核,我实际上只是从网站上复制了这段代码,因为我的代码无法工作,所以我很困惑。 void kmain(void) { const char *str = "my f
我不确定,如果我完全理解上述差异,所以我想自己解释一下,你可以打断我,只要我有错:“内核是创建内核线程的初始代码段。内核线程是由内核管理的进程。用户线程是进程的一部分。如果你有一个单线程进程,那么整个
看一下struct file 定义from this code Linux 内核版本 2.6.18。 我正在尝试比较代码中的两个 struct file 变量,并确定它们是否指的是同一个文件。该结构中
我试图在 Linux 启动时使嵌入式设备中的 LED 闪烁。基本上,LED 闪烁表明 Linux 正在启动。为了使 LED 闪烁,我正在做以下事情 在 init/main.c 中创建了一个全局定时器(
我有一些在 FreeBSD 和 Linux 上运行的特定硬件。 我必须做一个用户空间应用程序,它将使用内核/用户空间应用程序之间的共享内存与驱动程序一起工作。我的应用程序对来自用户空间的共享内存进行忙
我在哪里可以找到 linux 内核中相应函数的解释,特别是对于 ICMPv4? 例如:icmp_reply、icmp_send等 感谢您的帮助。 最好的,阿里木 最佳答案 探索 Linux 内核中的
我在 Linux Kernel 3.4 上工作,我有以下代码: /* Proximity sensor calibration values */ unsigned int als_kadc;
我正在阅读“罗伯特·洛夫 (Robert Love) 撰写的 Linux 内核开发第 3 版”,以大致了解 Linux 内核的工作原理..(2.6.2.3) 我对等待队列的工作方式感到困惑,例如这段代
我之前也问过同样的问题,但是我的帖子不知为何被删除了。 无论如何,我正在尝试使用 C++ 并编写一个允许我直接访问内存并向其中写入内容的程序。我听说我需要对内核做一些事情,因为它是连接操作系统和应用程
在尝试了解 Ruby 执行方法时,我找到了这篇关于在 Ruby 中运行命令的五种方法的博文 http://mentalized.net/journal/2010/03/08/5_ways_to_run
是否有 Linux 发行版(Minix 除外)包含良好的源代码文档?或者,是否有一些好的文档来描述一般的 Linux 源代码? 我已经下载了内核源代码,但是(不出所料)我有点不知所措,我想知道是否有一
有谁知道 linux 中的哪个函数或文件包含查找用于 bind() 系统调用的随机端口的算法?我到处寻找,在 Linux 源代码中找不到包含此算法的方法。 谢谢! 最佳答案 这是一段又长又复杂的代码,
前言 首先,对于有科班背景的读者,可以跳过本系列文章。这些文章的主要目的是通过简单易懂的汇总,帮助非科班出身的读者理解底层知识,进一步了解为什么在面试中会涉及这些底层问题。否则,某些概念将始终
CentOS7.2与CentOS6区别及特点 Linux 操作系统的启动首先从 BIOS 开始,接下来进入 boot loader,由 bootloader 载入内核,进行内核初始化。内核初始化的
我是一名优秀的程序员,十分优秀!