在QEMU上开启Extensible Scheduler Class特性

  1. 前言

Extensibe Scheduler Class(下文使用首字母缩写ESC。)是Linux内核V6.11版本加入的新特性,开发者是Tejun Heo。本文简单记录一下如何通过make menuconfig的配置在QEMU上开启Extensible Scheduler Class。

本文基于6.12.0内核讨论。QEMU使用虚拟设备aarch64-virt-a53。

  1. 配置

当然,使用任何内核功能出现问题,首先应该找工程自带说明。Documentation/scheduler/sched-ext.rst文件是个必读文件。该文件提到,使用ESC特性,首先应该在arch/arm64/configs目录下的配置文件中开启下面的配置项:

然后开启menuconfig,默认界面为:

搜索一下sched_class_ext,发现有一个依赖配置项没有满足:

直接搜索debug_info_btf,发现确实有依赖项目没有满足。

很明显DEBUG_INFO_REDUCED应该配置为n。

进入Kernel hacking ---》 Compile-time checks and compiler options

另外,DEBUG_INFO_BTF还依赖pahole的版本,我的Ubuntu系统没有安装,这里要用apt命令安装一下。

以上操作之后,重新进入Kernel hacking ---》 Compile-time checks and compiler options菜单。

选中对应选项。

最后进入General setup---》Extensible Scheduling Class ,会发现对应的配置项出现了:

选中后保存.config。重新编译内核,即可使用ESC调度类了。

启动QEMU后会发现/sys/kernel/目录下出现了sched_ext目录,说明ESC开启了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值