gpt4 book ai didi

linux - 交换分区中的读取错误如何影响正在运行的进程?

转载 作者:太空狗 更新时间:2023-10-29 11:19:32 26 4
gpt4 key购买 nike

想象一下:

  • 您在故障磁盘上有交换分区;
  • 一个进程空闲,它的部分内存被交换到这个分区;
  • 一段时间后它醒来,内核尝试将交换页面加载回内存;
  • 内核检测到不可恢复的读取错误。

我相信内核应该在这种情况下使进程崩溃。

我还没有模拟过。我只是想知道一些答案(可能包含如何在 Linux 中模拟它的说明)并分享我随后的发现。

也许这种情况可以解释在一些存储硬件出现故障的遗留系统上很少发生崩溃。

更新

使用 dmsetuperror 映射目标可以轻松模拟特定 swap 卷上的错误:

我唯一没有深入研究的是如何控制加载、交换和重新加载特定进程的虚拟内存到特定的error映射部分swap 音量。基本上,我需要避免任何其他进程使用这个错误的 swap,除了模拟进程之外。

最佳答案

“毒药”补丁应该可以处理您的情况:https://lwn.net/Articles/348886/

Dirty pages in the swap cache are handled in a delayed fashion. The dirty flag is cleared for the page and the page swap cache entry is maintained. On a later page fault the associated application will be killed.

关于linux - 交换分区中的读取错误如何影响正在运行的进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18651314/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com