工具/软件:Linux
大家好、
我使用的是 SDK 2.00.01.07 (4.1.13)的 Linux 内部版本、对基于 BeaglebonebBlack 的我们自己的硬件进行了修改(主要是 DTS)。 我们的网络应用程序在 initramfs 的"init"脚本中启动。 我们没有其他文件系统。 系统工作一段时间。 有时、应用程序会被阻止超过100秒(通常正好是103秒)。 在这种情况下、CPU 在内核空间中使用了99%、并且未完成线程处理。 串行控制台的使用有时会受到限制。 在这种饥饿之后、系统继续正常运行。 在某些情况下、随后会显示 RCU_PREOSTALL (请参阅下文)。
有人可以提供建议吗?
--提前感谢您
--彼得
引导日志总数:
U-Boot 2015.07 (2017年3月16日- 10:38:29 +0100)
I2C: 就绪
DRAM: 128 mib
MMC: OMAP SD/MMC:0、OMAP SD/MMC:1.
使用默认环境
网络: 未设置。 验证第一个电子保险丝 MAC
CPsw、USB_ether
按任意键停止自动引导: 0
文件传输命令:PAR = 0x10
无类型测试
XHIF 引导
bootargs:console=ttyS0、115200n8 mem=128M init=/init fastboot rootdelay=0 ertec_boot=rel build=(94) root=/dev/ram0 rw ip=off rootfstype=ramfs
文件传输命令:内核= 0x01
正在将文件复制到:0x82000000 ####
传输大小:0x0032598
文件传输命令:FDT = 0x03
正在将文件复制到:0x84000000 #
传输大小:0x00008680
文件传输命令:Rd = 0x02
正在将文件复制到:0x84080000 ########
传输大小:0x00600923
文件传输命令:end = 0x5555
zImage:0x82000000 initrd:0x84080000:600923 FDT:0x84000000
内核映像@ 0x82000000 [ 0x000000 - 0x325698]
###展平设备树状物在84000000处
使用0x84000000处的 FDT blob 进行引导
正在将 Ramdisk 加载到86925000,结束位置86f25923 ... 好的
正在将设备树加载到86919000,结束8692467f... 好的
正在启动内核...
正在解压缩 Linux... 已完成、正在引导内核。
[0.000000] 在物理 CPU 0x0上引导 Linux
[0.000000] 正在初始化 cgroup Subsys cpuset
[0.000000] 正在初始化 cgroup 子系统 CPU
[0.000000] 正在初始化 cgroup Subsys cpuacct
[0.000000] Linux 版本4.1.13 (Ubuntu@Ubuntu)(gcc 版本4.9.3 20150413 (预发布版本)(Linaro GCC 4.9-2015.05))#1抢先于 Thu Mar 16 10:47:05 CET 2017
[0.000000] CPU:ARMv7处理器[413fc082]修订版2 (ARMv7)、CR=10c5387d
[0.000000] CPU:PIPT/VIPT 非混叠数据高速缓存、VIPT 别名指令高速缓存
[0.000000] 机器型号:XYZ
[0.000000] CMA:在0x85000000处保留24 MIB
[0.000000] 内存策略:数据高速缓存写回
[0.000000] CPU:所有 CPU 均在 SVC 模式下启动。
[0.000000] AM335X ES2.1 (NEON)
[0.000000] 在区域顺序和移动分组中构建了1个区域列表。 总页数:32480
[0.000000] 内核命令行:console=ttyS0、115200n8 mem=128M init=/init fastboot rootdelay=0 ertec_boot=rel build=(94) root=/dev/ram0 rw ip=off rootfstype=ramfs
[0.000000] PID 哈希表条目:512 (顺序:-1、2048字节)
[0.000000] 条目高速缓存散列表条目:16384 (顺序:4、65536字节)
[0.000000] inode 高速缓存散列表条目:8192 (顺序:3、32768字节)
[0.000000] 内存:89496K/131072K 可用(6379K 内核代码、259K rwdata、2172K rodata、268K init、229K BSS、 17000K 保留、24576K CMA 保留、0K HIGHMEM)
[0.000000] 虚拟内核内存布局:
[0.000000] 矢量 :0xff0000-0xff1000 (4KB)
[0.000000] fixmap :0xc00000 - 0xc00000 (3072 KB)
[0.000000] vmalloc:0xc8800000 - 0xc000000 (872 MB)
[0.000000] 低内存 :0xC0000000 - 0xc8000000 (128 MB)
[0.000000] pkmap :bbfe00000 - 0xC0000000 ( 2 MB)
[0.000000] 模块:bbf000000 - bbbfe00000 ( 14 MB)
[0.000000] .text:0xc0008000 - 0xc086205c (8553KB)
[0.000000] .init:0xc0863000 - 0xc08a6000 (268 KB)
[0.000000] .data:0xc08a6000 - 0xc08e6d68 (260KB)
[0.000000] .bss:0xc08e9000 - 0xc0922708 (230KB)
[0.000000] slub:HWalign=64、order=0-3、MinObjects=0、CPU=1、Nodes=1
[0.000000] 可抢占的分层 RCU 实现。
[0.000000] 打印的每个 CPU 的附加信息有停转。
[0.000000] RCU kthread 优先级:1.
[0.000000] NR_IRQ:16 nr_IRQ:16 16.
[0.000000] IRQ:在0xfa200000 (修订版5.0)处找到具有128个中断的 INTC
[0.000000] OMAP 时钟事件源:timer2为25000000 Hz
[0.000030] sched_clock:25MHz 时为32位、分辨率为40ns、每85899345900ns 换行一次
[0.000076] 时钟源定时器1:屏蔽:0xFFFFFFFF max_cycles:0xFFFFFFFF、max_idle_ns:76450417870 ns
[0.000103] OMAP 时钟源:Timer1、25000000 Hz
[0.000482] 控制台:彩色虚拟设备80x30
[0.000555] 校准延迟环路... 298.59 BogoMips (lpj=1492992)
[0.067853] pid_max:默认值:32768最小值:301
[0.068063] 安全框架已初始化
[0.068178] 安装高速缓存散列表条目:1024 (顺序:0、4096字节)
[0.068208] 安装点高速缓存散列表条目:1024 (顺序:0、4096字节)
[0.069745] 正在初始化 cgroup Subsys blkio
[0.069803] 正在初始化 cgroup Subsys 内存
[0.069899] 正在初始化 cgroup 子系统设备
[0.069939] 初始化 cgroup Subsys 冷冻柜
[0.069977] 正在初始化 cgroup 子系统 perf_event
[0.070037] CPU:测试写入缓冲器一致性:好的
[0.070797] 为0x80008240 - 0x800082b0设置静态标识映射
[0.074631] devtmpfs:已初始化
[0.101650] VFP 支持 v0.3:实施者41架构3第30部分版本 c 修订版3
[0.125570] omap_hwmod:tptc0、使用 EDMA 中断开的 dt 数据
[0.125869] omap_hwmod:tptc1、使用 EDMA 中断开的 dt 数据
[0.126133] OMAP-hwmod:tptc2、使用 EDMA 中断开的 dt 数据
[0.133372] OMAP_hwmod:debugss:_wait_target_disable 失败
[0.203280] 时钟源 Jiffies:MASK:0xFFFFFFFF max_cycles:0xFFFFFFFF、max_idle_ns:19112604462750000 ns
[0.208174] pinctrl 内核:已初始化 pinctrl 子系统
[0.211113] NET:注册协议系列16.
[0.216652] DMA:为原子相干分配预先分配的256 KiB 池
[0.247946] 空闲:使用调速器梯
[0.277902] 空闲:使用调速器菜单
[0.287050] OMAP GPIO 硬件版本0.1
[0.303482] OMAP-GPMC 50000000。GPMC:找不到节点/ocp/l4_wkup@44c00000-SCM@210000/ pinmux@800/pinmux_xhif_pins 的 pctldev、延迟探针
[0.308808] 没有 ATAG?
[0.308869] 硬件断点:不支持调试架构0x4。
[0.379206] EDMA-DMA-engine EDMA-DMA-engine.0:TI EDMA 引擎驱动程序
[0.386601] vgaarb:已加载
[0.388020] SCSI 子系统已初始化
[0.389349] 介质:Linux 介质接口:v0.10
[0.389534] Linux 视频捕捉接口:v2.00
[0.389682] pps_core:LinuxPPS API 版本。 1已注册
[0.389705] pps_core:软件版本 5.3.6 -版权所有2005-2007 Rodolfo Giometti
[0.389788] PTP 时钟支持已注册
[0.391778] OMAP-mailbox 480c8000.mailbox:OMAP mailbox 修订版0x400
[0.392294] 高级 Linux 声音架构驱动程序已初始化。
[0.394387] 切换到时钟源 Timer1
[0.421957] NET:注册协议系列2.
[0.423864] TCP 建立哈希表条目:1024 (顺序:0、4096字节)
[0.423929] TCP 绑定哈希表条目:1024 (顺序:0、4096字节)
[0.423979] TCP:已配置哈希表(建立1024 BIND 1024)
[0.424142] UDP 哈希表条目:256 (顺序:0、4096字节)
[0.424199] UP-Lite 哈希表条目:256 (顺序:0、4096字节)
[0.424756] NET:注册协议系列1.
[0.425558] RPC:注册后命名的 UNIX 套接字传输模块。
[0.425589] RPC:注册的 UDP 传输模块。
[0.425607] RPC:注册 TCP 传输模块。
[0.425626] RPC:注册的 TCP NFSv4.1反向通道传输模块。
[0.426800] 尝试将 rootfs 映像解压为 initramfs...
[1.677577] 释放 initrd 内存:6148K (c6925000 - c6f26000)
[1.678552] CPU PMU:无法解析/pmu/interrupt-affinity [0]
[1.678660] 硬件性能事件:通过 armv7_cortex_A8 PMU 驱动器启用、提供5个计数器
[1.683206] futex 散列表条目:256 (顺序:-1、3072字节)
[1.683419] 审核:初始化 netlink 子系统(已禁用)
[1.683567] 审核:type=2000审核(1.670:1):已初始化
[1.703302] VFS:磁盘配额 dquot_6.6.0
[1.703820] VFS:Dquot 高速缓存散列表条目:1024 (顺序0、4096字节)
[1.709613] NFS:注册 id_resolver 密钥类型
[1.709764] 注册了密钥类型 id_resolver
[1.709786] 注册了密钥类型 id_legacy
[1.709955] jffs2:版本2.2。 (NAND)(摘要) 2001-2006 Red Hat, Inc.
[1.716593] NET:注册协议系列38.
[1.716762] 已注册 IO 调度程序 NOOP
[1.716801] 已登记 IO 调度程序截止日期
[1.716948] 已注册 IO 调度程序 cfq (默认值)
[1.719367] pinctrl-single 44e10800.pinmux:142引脚、PA f9e10800大小568
[1.724196] wkup_m3_IPC 44e11324.wkup_m3_IPC:无法获取 rproc 句柄
[1.726892] 串行:8250/16550驱动程序,10个端口,启用 IRQ 共享
[1.736129] 控制台[ttyS0]已禁用
[1.736303] 44e09000.serial: tmio 0x44e09000处的 ttyS0 (IRQ = 155、base_baud = 3000000)是8250
[2.388560] 控制台[ttyS0]已启用
[2.394487] [DRM]已初始化 DRM 1.1.0 20060810
[2.426381] 返修:模块已加载
[2.442705] loop:模块已加载
[2.448175] mtdoops:必须提供 MTD 器件(mtddev=name/number)
[ 2.481682] DaVinci_MDIO 4a101000.MDIO:在 RET = 0时启用 phy
[2.554443] DaVinci_MDIO 4a101000.MDIO:达芬奇 MDIO 修订版本1.6
[2.560596] DaVinci_MDIO 4a101000.MDIO:检测到的 phy 掩码 fffffd
[2.583031] libphy: 4a101000.mdio:探测
[2.587432] DaVinci_MDIO 4a101000.MDIO:PHY[1]:器件4a101000.MDIO:01、驱动程序未知
[2.597320] cpsw 4a100000.以太网:检测到的 MACID = 40:EC:F8:09:E9:E5
[2.608120] mousedev:PS/2鼠标设备,适用于所有鼠标
[2.613787] i2c /dev/entries 驱动程序
[2.620020] ledtrig-CPU:已注册以指示 CPU 上的活动
[2.626942] OMAP-AES 53500000。AES:OMAP AES 硬件加速器版本:3.2
[2.635921] OMAP-SHIM 53100000.sham:OMAP 版本4.3上的硬件加速器
[2.645433] remoteproc0:wkup_m3可用
[2.649940] remoteproc0:注意:remoteproc 仍在开发中并被视为实验。
[2.659412] remoteproc0:二进制格式尚未最终确定、并且尚不能保证向后兼容性。
[2.676640] 配置文件:使用 ARM/armv7
[2.681165] 正在初始化 XFRM netlink 套接字
[2.685925] NET:注册协议系列17.
[2.690508] NET:注册协议系列15.
[2.695379] 注册的密钥类型 DNS_旋 变传感器
[2.700474] OMAP_VOLTGE_LARD_INIT:未添加电压驱动器支持
[2.707783] CPU CPU0:of_pm_voltdm_notifier_register:无法获取 CPU0稳压器/voltdm:-517
[2.716730] CPU CPU0:CPU0时钟通知器未就绪、请重试
[2.723019] 支持 ThumbEE CPU 扩展。
[2.727540] 正在注册 SWP/SWPB 仿真处理程序
[2.737708] OMAP-GPMC 50000000。GPMC:GPMC 版本6.0
[2.742933] GPMC_mem_init:禁用映射在0x0-0x1000000的 CS 0
[2.753067] CPU CPU0:of_pm_voltdm_notifier_register:无法获取 CPU0稳压器/voltdm:-517
[2.762108] remoteproc0:为 wkup_m3加电
[2.768721] remoteproc0:引导 FW 映像 AM335x-pm-firmware.elf、大小为219803
[2.776396] CPU CPU0:CPU0时钟通知器未就绪、请重试
[2.782960] hctosys:无法打开 RTC 设备(rtc0)
[2.788774] remoteproc0:远程处理器 wkup_m3现已启动
[2.794516] wkup_m3_IPC 44e11324.wkup_m3_IPC:CM3固件版本= 0x191
[2.810741] vmmcsd_fixed:正在禁用
[2.815171] ALSA 器件列表:
[2.81818183] 找不到声卡。
[2.823277] 释放未使用的内核内存:268K (c0863000 - c08a6000)
正在加载、请稍候...
[2.982820] init:使用 rel
[2.987892] init:内部版本号为(94)
[3.064103] systemd-udevd[98]:开始版本215
[3.090944] 随机:可使用4位熵进行 systemd-udd urandom 读取
开始:加载基本驱动程序
(笑声) [4.338142] CPU CPU0:of_pm_voltdm_notifier_register:无法获取 CPU0稳压器/voltdm:-517
[4.364911] CPU CPU0:CPU0时钟通知器未就绪、请重试
[4.493304] m25p80:未知符号 SPI_NOR_SCAN (错误0)
[4.562921] m25p80 spi1.0:m25p80 (1024KB)
[4.567858] 在 MTD 器件 spi1.0上找到1个部件分区
[4.573392] 在"spi1.0"上创建1个 MTD 分区:
[4.578500] 0x000000000000 0x000000100000:“SPI-NOR”
[4.601053] CPU CPU0:of_pm_voltdm_notifier_register:无法获取 CPU0稳压器/voltdm:-517
完成。
开始:运行/scripts/init-premount ... 完成。
开始:安装根文件系统... 开始:运行/scripts/local-top ... [4.626218] CPU CPU0:CPU0时钟通知器未就绪、请重试
完成。
开始:运行/scripts/local-premount ... 完成。
完成。
[4.740145] net eth0:正在初始化 cpsw 版本1.12 (0)
[4.750449] CPU CPU0:of_pm_voltdm_notifier_register:无法获取 CPU0稳压器/voltdm:-517
[4.759608] CPU CPU0:CPU0时钟通知器未就绪、请重试
[4.834831] net eth0:Phy found:id is:0x20005c90
[4.969931] 初始化:未设置 SPI 路径、未安装 SPI 闪存
[4.986874] syslogd 已启动:Busybox v1.21.1
[4.991988] 初始化:使用启动应用程序/app/gw_app
有时显示:
[16896.185613]信息:RCU_PRETER-DET占用 CPU 上的自检测失速
[16896.191042] 0:(此 GP 为1个周期) IDLE=963/1/0 softirq=269972/269972 fqs=0
[16896.198049] (t=10308 jiffies g=169238 c=169237 q=4)
[16896.203152] RCU_preempt kthread 为10308个圣战而挨饿!
[16896.208676] CPU 的任务转储0:
[16896.211930] swapper R 运行 0 0 0x00000002
[16896.218351]回溯:
[16896.220895][ ](dump_backtrace)从[ ](show_stack+0x18/0x1c)
[16896.228512] r7:c08b2cf0 r6:80030193 r5:00000000 r4:c08a8878
[16896.234292][ ](show_stack)从[ ](sched_show_task+0xac/0x108)
[16896.242103][ ](sched_show_task)、来自[ ](dump_CPU_TASK_0x24/0x30)
[16896.250066] R5:c08b2cf0 R4:00000000
[16896.253724][ ](dump_CPU_task)、来自[ ](RCU_Dump_CPU_STACK_0xa0/0x100)
[16896.262151][ ](RCU_Dump_CPU_STACK_STACK_)、来自[ ](RCU_CHECK_callbacks+0x448/0x890)
[16896.271159] R9:c08b3310 R8:c08a6138 r7:c08b3050 R6:c08a6140 R5:c08b2cf0 R4:c08b30cc
[16896.279038][ ](RCU_CHECK_callback)、来自[ ](update_process_times_0x40/0x6c)
[16896.287960] R10:00000001 R9:c08b3318 R8:c08a4000 r7:00000f5d R6:f2e02ec8 R5:00000000
[16896.295900] R4:c08a8878
[16896.298494][ ](update_process_times)从[ ](tick_sched_handle+0x50/0x5c)
[16896.307242] R5:c08a5f20 R4:c08b3a80
[16896.310885][ ](tick_sched_handle)从[ ](tick_sched_timer+0x48/0x90)
[16896.319304][ ](tick_sched_timer)、来自[ ](_run_hrtimer+0x6c/0x130)
[16896.327441] r7:00000000 R6:c0087340 R5:c08b3350 R4:c08b3a80
[16896.333203][ ](_run_hrtimer)、来自[ ](hrtimer_interrupt+0x11c/0x2e8)
[16896.341514(XV) r7:00000000 R6:c08b3318 R5:00000f5d R4:f2dfc820
[16896.347279][ ](hrtimer_interrupt)、来自[ ](OMAP2_gp_timer_interrupt+0x2C/0x3c)
[16896.356376] R10:c08e445a R9:c7004c00 R8:00000010 r7:00000000 R6:00000000 R5:c08aa974
[16896.364314] R4:c08aa974
[16896.366914][ ](OMAP2_gp_timer_interrupt)、来自[ ](handle_irq_event_perpu + 0x7c/0x148)
[16896.376647][ ](handle_irq_event_perpu)、来自[ ](handle_IRQ_EVENT_+0x68/0x90)
[16896.385569] R10:00000001 R9:c08a6110 R8:c7006000 r7:00000001 R6:00000000 R5:c08aa974
[16896.393507] R4:c7004c00
[16896.396091][ ](handle_irq_event)从[ ](handle_level_IRQ+0xa8/0x154)
[16896.404490] R5:c08bcf94 R4:c7004c00
[16896.408133][ ](handle_level_IRQ)、来自[ ](generic_handle_IRQ+0x30/0x44)
[16896.416619] R5:c08bcf94 R4:00000010
[16896.420266][ ](generic_handle_IRQ)、来自[ ](_handle_domain_IRQ+0x50/b0)
[16896.429014] R5:c08bcf94 R4:00000010
[16896.432658][ ](_handle_domain_IRQ)、来自[ ](OMAP-INTC_Handle_IRQ+0xc8/0xd8)
[16896.441579] R9:c08a6110 R8:00000000 r7:00000044 R6:c08a5f20 R5:c090f900 R4:c08bd200
[16896.449465][ ](OMAP-INTC_Handle_IRQ)、来自[ ](_IRQ_Svc+0x40/0x74)
[16896.457519]异常堆栈(0xc08a5f20至0xc08a5f68)
[16896.462620] 5f20:00000001 00000000 c0020140 c08a4000 c08a6110 00000000 00000000
[16896.470858] 5f40:00000000 c08a6110 00000001 c08a5f74 c08a5f78 c08a5f68 c00102bc c00102c0
[16896.479085] 5f60:60030013 ffffff
[16896.482598] r7:c08a5f54 r6:ffff r5:60030013 r4:c00102c0
[16896.488365][ ](arch_cpu_idle)从[ ](CPU_STARTUP_END+0x194/0x214)
[16896.496714][ ](CPU_STARTUP_INPUK)、来自[ ](REST_INIT+0x78/0x90)
[16896.504502] r7:c08a6000
[16896.507106][ ](REST_INIT)从[ ](start_kernel+0x358/0x3c8)
[16896.514632] R5:00000001 R4:c08e7050
[16896.518285][ ](start_kernel)从[<80008078>](0x80008078)