不可清除的页面

2024-01-10

我遇到如下内核崩溃。在这里我可以观察到不可修复页面中存在大量内存。 我想知道内存何时被添加到不可清除的页面列表中。

另外,从下面的消息我可以了解到系统中只有 1724kB 可用。 这是对的吗?

kswapd0: page allocation failure. order:0, mode:0xd0
[<c002aed4>] (unwind_backtrace+0x0/0xdc) from [<c006d5b0>] (__alloc_pages_nodemask+0x490/0x4ec)
[<c006d5b0>] (__alloc_pages_nodemask+0x490/0x4ec) from [<c008416c>] (cache_alloc_refill+0x260/0x4f4)
[<c008416c>] (cache_alloc_refill+0x260/0x4f4) from [<c0084498>] (__kmalloc+0x98/0xd8)
[<c0084498>] (__kmalloc+0x98/0xd8) from [<c01f73d8>] (__alloc_skb+0x44/0x124)
[<c01f73d8>] (__alloc_skb+0x44/0x124) from [<c01f7cac>] (skb_copy+0x2c/0xa0)
Exception stack(0xc4ecbdf0 to 0xc4ecbe38)
bde0:                                     00000000 00000064 c0347718 00000000 
be00: 00000001 00000000 c0347718 c0347718 c4ecbf54 00000000 00000000 000000fd 
be20: c4ecbf00 c4ecbe38 c00724b4 c00724c4 80000013 ffffffff                   
[<c0024b18>] (__irq_svc+0x38/0xc0) from [<c00724c4>] (shrink_zone+0x88/0x70c)
[<c00724c4>] (shrink_zone+0x88/0x70c) from [<c0072ff4>] (kswapd+0x34c/0x4d8)
[<c0072ff4>] (kswapd+0x34c/0x4d8) from [<c004dcec>] (kthread+0x7c/0x84)
[<c004dcec>] (kthread+0x7c/0x84) from [<c0025ed0>] (kernel_thread_exit+0x0/0x8)
Mem-info:
Normal per-cpu:
CPU    0: hi:   42, btch:   7 usd:  36
Active_anon:124 active_file:0 inactive_anon:129
 inactive_file:0 unevictable:8111 dirty:0 writeback:0 unstable:0
 free:431 slab:19526 mapped:408 pagetables:53 bounce:0
Normal free:1724kB min:1396kB low:1744kB high:2092kB active_anon:496kB inactive_anon:516kB active_file:0kB inactive_file:0kB unevictable:32444kB present:121920kB pages_scanned:0 all_unreclaimable? no
lowmem_reserve[]: 0 0
Normal: 103*4kB 34*8kB 3*16kB 3*32kB 2*64kB 0*128kB 1*256kB 1*512kB 0*1024kB 0*2048kB 0*4096kB 0*8192kB 0*16384kB = 1724kB
8114 total pagecache pages
30720 pages of RAM
547 free pages
1204 reserved pages
19526 slab pages
1662 pages shared
0 pages swap cached

不可清除的页面只是由于各种原因而无法调出的页面。这可能意味着该页面属于 ramdisk,受到 mlock() 调用的保护、共享和锁定,或者内核被告知“不要触摸”的任何其他情况。这是由内核管理的LRU http://lwn.net/Articles/286485/框架。

您能否提供更多有关崩溃的背景信息?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

不可清除的页面 的相关文章

  • Linux内核container_of宏和C90中的通用容器

    是否有可能实施容器的 http lxr linux no linux tools perf util include linux kernel h L18纯C90中的宏 我不确定如何做到这一点 因为内核实现取决于海湾合作委员会黑客 http
  • 堆栈是向上增长还是向下增长?

    我在 C 中有这段代码 int q 10 int s 5 int a 3 printf Address of a d n int a printf Address of a 1 d n int a 1 printf Address of a
  • 为什么这段代码会死锁?

    我在可加载模块中创建了 2 个 Linux 内核线程 并将它们绑定到在双核 Android 设备上运行的单独 CPU 内核 运行几次后 我注意到设备重新启动并重置了硬件看门狗定时器 我一直在解决这个问题 什么可能导致僵局 基本上 我需要做的
  • NUMA 在虚拟内存中是如何表示的?

    有许多资源 https en wikipedia org wiki Non uniform memory access从硬件角度描述NUMA的架构性能影响 http practical tech com infrastructure num
  • PAE(物理地址扩展)如何实现大于4GB的地址空间?

    维基百科文章的摘录物理地址扩展 http en wikipedia org wiki Physical Address Extension x86 处理器硬件架构通过用于选择附加内存的附加地址线进行了增强 因此物理地址大小从 32 位增加到
  • iOS-将图像转为视频时,CVPixelBufferCreate内存无法正确释放

    我正在将图像制作成视频 但总是因为内存警告而崩溃 分配太多CVPixelBufferCreate 我不知道如何正确处理 我看过很多类似的主题 但没有一个能解决我的问题 这是我的代码 void writeImagesArray NSArray
  • 如何在WinMobile6上启用ARMv6非对齐访问?

    ARMv6 引入了一个很棒的功能 未对齐的内存访问 这使得代码中的某些事情变得更加简单和更快 但微软只在winCE6中提供了API 现在大多数 PDA 都基于 WinMobile6 基于 CE 5 x 默认情况下禁用未对齐访问 我尝试在 C
  • 当 mov 指令导致页面错误并且在 x86 上禁用中断时会发生什么?

    我最近在自定义 Linux 内核 2 6 31 5 x86 驱动程序中遇到一个问题 其中 copy to user 会定期不将任何字节复制到用户空间 它将返回传递给它的字节数 表明它没有复制任何内容 经过代码检查 我们发现代码在调用 cop
  • 一个地址有多少字节? [复制]

    这个问题在这里已经有答案了 在64位机器上 我们知道一个地址是8个字节 然而 我并不完全清楚一个地址中有多少字节的信息 虚拟内存中的每个字节都有一个地址吗 或者内存中的每 64 位都有一个地址 还是取决于架构 如果这取决于架构 那么我应该如
  • 检测从内核扩展的文件复制

    我正在尝试构建 POC 该 POC 可以使用 fileop 范围回调来识别来自基于 kauth 的内核扩展的文件复制活动 但是 复制文件似乎涉及两个单独的身份验证操作 从中打开 src 文件并创建新文件 我的目标相当简单 在填充数据后检测新
  • 已删除的类实例上的方法仍然有效吗?

    我在 Visual C 2010 上有这段代码 include
  • 在 python 上获取大目录文件列表的最佳方法?

    我有一个疯狂的大目录 我需要通过 python 获取文件列表 在代码中我需要获取迭代器 而不是列表 所以这不起作用 os listdir glob glob uses listdir os walk 我找不到任何好的库 帮助 也许是c li
  • 读取文件而不从操作系统页面缓存中逐出

    这主要适用于 Linux 或者理想情况下适用于任何 POSIX 系统 当我阅读以下页面时 我正在寻找一种读取大量文件 其中任何一个文件本身可能高达 1GB 的方法 具有以下特征 如果相关磁盘页面已在文件系统缓存中 则使用该页面 如果相关页面
  • MemoryStream“内存不足”C#

    我有一个自定义数据对象 虚拟文件 的实现see here https stackoverflow com questions 4024657 how to drop a file from windows formlistview to d
  • 为什么 call_usermodehelper 大多数时候都会失败?

    从内核模块中 我尝试使用 call usermodehelper 函数来执行可执行文件 sha1 该可执行文件将文件作为参数并将文件的 SHA1 哈希和写入另一个文件 名为输出 可执行文件完美运行 int result 1 name hom
  • 这些工作队列标志意味着什么?

    在研究工作队列时 我遇到了内核中定义的工作队列标志和常量 我有以下我无法理解的疑问 这里的排水和救援到底是什么意思 WQ DRAINING 1 lt lt 6 internal workqueue is draining WQ RESCUE
  • 如何在非零端点(libusb)上发送 USB 控制事务?

    我正在编写代码来了解 Freescale Kinetis 微控制器上的 USB 外设 我已经设法在 Linux 主机上完成枚举 并且可以使用 EP0 上的供应商自定义代码发送和接收数据包 与 libusb 测试程序交互 看起来我可以在微控制
  • 虚拟内存澄清——大连续内存的分配

    我有一个应用程序 我必须在 Windows 上分配 使用运算符 new 相当大的内存空间 数百 MB 该应用程序是 32 位 我们现在不使用 64 位 即使在 64 位系统上也是如此 我启用了 LARGEADDRESSAWARE 链接器选项
  • 哪些对齐问题限制了 malloc 创建的内存块的使用?

    我正在用 C 编写一个用于各种数学计算的库 其中一些需要一些 临时 空间 用于中间计算的内存 所需的空间取决于输入的大小 因此不能静态分配 该库通常用于使用相同大小的输入执行相同类型计算的多次迭代 因此我不希望这样做malloc and f
  • 民意调查立即从驱动程序中退出

    这是我第一次在 Linux 内核中实现驱动程序并面临这个问题 我正在尝试在我的字符驱动程序中实现 poll 我已调用 poll wait 并传递了一个等待队列 当从用户空间程序打开该驱动程序的设备文件并在此设备文件描述符 fd 上调用 po

随机推荐

  • 设置 pygame 混合器的输出设备

    我需要使用 pygame 通过不同的音频设备播放音频文件 显然这可以通过参数来实现devicename在方法中pygame mixer init https www pygame org docs ref mixer html pygame
  • 如果其他变量为 NA,则设置新变量 NA

    我想向我的数据框添加一个新变量 N notNAs 它定义其他变量是否为 NA x y z N notNAs 2 3 NA NA NA 1 3 NA 2 3 5 1 4 4 3 1 不确定为什么这是您想要的输出 但实现此目的的一种可能方法是将
  • Apache Web 服务器不允许我刷新 /about 但在 localhost 上工作正常

    我捆绑了我的一个项目 效果很好 但是 当在路由 about 上点击刷新时 它会显示请求的 URL about 在此服务器上未找到 但是 当我在 Web 服务器上的本地主机上执行此操作时 它在刷新和前进 后退按钮上工作正常 我正在使用 Rea
  • 即使服务器收到成功消息,也无法在我的设备中接收 GCM 消息

    我从 gcm 收到了作为对 Web 服务器 本地主机 的响应的成功消息 但设备未收到该消息 请帮忙 下面是我使用的代码 主要活动 package vitpat placement import java io IOException imp
  • SWT:获取系统设备更改的通知(USB 设备连接/断开)

    我正在编写一个 SWT 应用程序 该应用程序需要位于系统托盘中 并在用户连接某些 USB 设备时自动弹出 该应用程序用作其控制面板 在本机环境 在本例中为 win32 但我最终应该与平台无关 中执行此操作的方法是侦听 WM DEVICECH
  • 在 Django 视图中向 Postgres 添加用户/帐户表

    前往编辑2 在views py中调用以下adduser函数 我首先保存用户 因为它的 id 由 Django 在 INSERT 时自动创建 是帐户和密码的主 外键 添加用户似乎工作正常 但是当它到达时Accounts user u 抛出以下
  • 可以在不更改键盘语言的情况下为文本框设置拼写检查语言吗?

    我正在使用 C 和 Net 4 0 并且希望在不更改键盘布局的情况下为文本框设置不同的拼写检查语言 我通过阅读此处的精彩帖子发现可以更改 InputLanguage CurrentInputLanguage 来更改文本框的拼写检查语言 但这
  • 使用git作为集中版本服务器

    我目前在工作中使用svn 我们的设置是 每个人都有一个工作副本 并且我们致力于由 apache2 提供服务的 svn 服务器 所以我提交了更改 其他更新 每个人都可以按照自己的意愿处理副本 所以部署起来非常容易 但现在 我想做同样的事情 但
  • 从不同订阅下创建的映像创建 Azure VM

    有没有办法备份虚拟机 按照 sysprep 方法捕获图像 然后使图库中的该图像对其订阅下的人员可见 例如 我创建一个虚拟机 将其存档到图像库 然后我的同事出现并想要从该图像创建一个虚拟机 该同事不能是我的订阅的共同管理员 或者 是否有一种方
  • UICollectionViewFlowLayout 不使用整体框架

    我最近开始使用 UICollectionView 对 UICollectionViewFlowLayout 有点困惑 集合视图中每个单元格的框架似乎是在每个项目之间的间距相等的情况下计算的 这会导致某些单元格的帧具有分数位置 这会导致标签模
  • 如何对 find 的输出执行“for every”?

    我想找到所有mp41920x1080 的文件 If I do find type f name mp4 exec ffprobe 2 gt 1 它会找到所有mp4文件并显示视频信息 例如 输出将包含 以及其他行 Input 0 mov mp
  • Fortran 90 中双精度的最大数组大小是多少?

    抱歉 如果这不是做这个问题的正确位置 这不是关于编程的问题 而是一个技术问题 我需要处理大量双精度二维向量数组 大约有 1000 万个 但是 在其他程序中 我在处理这种数组时遇到了内存问题 我的问题是双精度数组大小是否有某种限制 我在 Li
  • jquery select2如何使选择后不关闭

    使用 多值选择框 时http ivaynberg github io select2 http ivaynberg github io select2 每次选择后选择框都会回落 有没有办法不这样做 以便用户可以选择其中的几个而不需要额外单击
  • 如何在 C# 中以管理员模式启动进程[重复]

    这个问题在这里已经有答案了 我有一个 Visual Studio Windows 应用程序项目 我添加了代码来下载安装程序更新文件 下载完成后 安装程序需要管理员权限才能运行 我添加了一个清单文件 当用户单击 DownloadUpdate
  • 如何在新创建的 .NET Core 2.0 Web 应用程序中以 .NET Standard 2.0 为目标?

    我刚刚使用创建了一个新项目dotnet new web 我的 Google foo 可能让我失望 但我没有找到与我的答案相关的任何内容 如果我错过了一些明显的东西 请链接到另一个 SO 答案或相关文档 如果我想确保这个新项目符合 NET S
  • 有没有一种简单的方法可以在 VB.NET 中随机化列表?

    我有一个类型列表System IO FileInfo 我想随机化列表 我想我记得看到过类似的东西list randomize 不久前 但我找不到我在哪里见过的 我第一次涉足这个领域 得到了这个函数 Private Shared Sub Ge
  • 从 Firebase 数据库读取和显示数据

    我正在尝试从 firebase 数据库检索数据并将数据存储在我在课堂上定义的课程数组中 到目前为止我已经得到 import AngularFireDatabase AngularFireList from angularfire2 data
  • 如何将 dataframe-js 导入 Google App 脚本?

    我使用http链接导入包 var d3Url https gmousse github io dataframe js dist dataframe js eval UrlFetchApp fetch d3Url getContentTex
  • 使用 GUI -OR- adb 命令从模拟器中提取文件时出现问题

    我正在 Eclipse Win7x64 中开发我的第一个 Android 应用程序 但在提取 SQLite 文件来检查其中的内容时遇到问题 我使用 DDMS GUI 来拉取时看到了这个问题 这似乎有些已知 2011 03 01 20 15
  • 不可清除的页面

    我遇到如下内核崩溃 在这里我可以观察到不可修复页面中存在大量内存 我想知道内存何时被添加到不可清除的页面列表中 另外 从下面的消息我可以了解到系统中只有 1724kB 可用 这是对的吗 kswapd0 page allocation fai