Kernel configuration parameters for RCU
[Posted January 21, 2019 by jake]
This sidebar is part of Paul McKenney's 2019 update to the RCU API.
内核配置参数
RCU的Kconfig选项和内核引导参数可以被认为是RCU API的一部分。尤其是从一些为专用设备或工作负载构建内核的角度来看。
本节总结了与RCU相关的Kconfig选项和更常用的内核引导参数,但是请注意,许多Kconfig选项要求设置CONFIG RCU EXPERT Kconfig选项。
第一组Kconfig参数控制RCU实现本身的底层行为,并在内核/ RCU /Kconfig中定义。
CONFIG_PREEMPT = n和CONFIG_SMP = y意味着选择了CONFIG_TREE_RCU配置,因此选择非抢占式树型RCU的实现,比较适合SMP服务器级别的构建。
它可以容纳大量的cpu,但尺度足够但大多数内存受限系统。CONFIG_TREE_RCU提供了以下boot cmdline启动参数:
rcutree.blimit= 在一个批处理中,设置最大数目RCU回调,默认为10回调。这一限制并不适用于卸载cpu。
rcutree.qhimark= 设置阈值的排队RCU rcutree之外的回调。blimit =将被忽略。这个默认为10000回调。
rcutree.qlowmark= 设置阈值的排队RCU rcutree下面的回调。blimit =将再次生效。这个默认为100回调。
rcutree.jiffies_till_first_fqs= 设置jiffies的数量等之间的宽限期初始化和第一forc