Linux 关闭内核中的特性会导致内核模块(使用特性)行为异常吗?

Linux 关闭内核中的特性会导致内核模块(使用特性)行为异常吗?,linux,linux-kernel,kernel,kernel-module,kvm,Linux,Linux Kernel,Kernel,Kernel Module,Kvm,我使用KVM作为内核模块。我想关闭巨大的页面支持。我在KVM source中找不到任何关闭选项 但是,我看到一个内核范围的选项来关闭它。如果我使用编译时配置选项config\u TRANSPARENT\u HUGEPAGE禁用一个巨大的页面特性,内核源代码将无法使用它,对吗?或者至少可以优雅地引用缺失的功能?以上任何一个都可以,我只是想知道它是否会有一些未知的问题。CONFIG\u HUGETLBFS可以禁用用户空间API,而CONFIG\u TRANSPARENT\u HUGEPAGE可以禁用

我使用KVM作为内核模块。我想关闭巨大的页面支持。我在KVM source中找不到任何关闭选项


但是,我看到一个内核范围的选项来关闭它。如果我使用编译时配置选项config\u TRANSPARENT\u HUGEPAGE禁用一个巨大的页面特性,内核源代码将无法使用它,对吗?或者至少可以优雅地引用缺失的功能?以上任何一个都可以,我只是想知道它是否会有一些未知的问题。

CONFIG\u HUGETLBFS
可以禁用用户空间API,而
CONFIG\u TRANSPARENT\u HUGEPAGE
可以禁用为通用内存自动创建大型页面。 然而,巨大的页面是x86内存管理代码不可分割的一部分,用于直接映射或大型MMIO区域。 您不能简单地关闭巨大的页面。


当您使用MM代码时,不可避免地会担心巨大的页面。

您想关闭巨大页面支持还是透明巨大页面支持?为什么?既大又透明。但我只看到关于透明巨大页面的配置选项。e、 g.配置透明页面,配置透明页面总是,配置透明页面为什么?我正在使用KVM mmu代码,其中我需要设置和重置pte权限。如果启用了大页面,我还需要担心大页面tlb权限;这是我想要避免的。上面的打字错误,我指的是巨大的页面pte*权限。哈哈!非常感谢。现在,这已经成为不可避免的,我会处理它。有没有办法禁用它只是KVM?所以,即使内核支持它,KVM也不会使用它。KVM是内核的一部分。您无法阻止KVM使用映射有大型或大型页面的内存。我将KVM用作内核模块,而不是作为bzImage的一部分编译到内核中。所以我想知道是否有任何开关或#定义来阻止KVM使用hugepage代码。您必须阻止核心内核为KVM提供巨大的页面内存。这是不可能的。