你好
我尝试通过 isolcpus=1内核参数将 CPU 1与调度程序隔离。 我已经尝试了几种方法:通过 Yocto append 变量、通过 wks 文件中的--apend 参数、通过 devicetree 或 uEnv U-Boot 脚本、但这些方法都不起作用。 在 /proc/cmdline 中、我看不到 isolcpus = 1标志设置、htop 还显示 CPU1已调度任务。 我将内核5.10与 preemp_RT 补丁一同使用。 为什么这不起作用?
下面是配置片段。
CONFIG_CMDLINE="console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 isolcpus=1" CONFIG_CMDLINE_EXTEND=y CONFIG_CMDLINE_FORCE=y CONFIG_CPU_ISOLATION=y
uEnv.txt 文件:
bootargs=${bootargs}; isolcpus=1
name_overlays=tpm-slb9670-overlay.dtbo spidev-overlay.dtbo gpios-hardware-test-overlay.dtbo
uenvcmd=run init_${boot}; run get_kern_${boot}; run get_fdt_${boot};run get_overlay_mmc; run run_kern
.wks:
bootloader --append="rootfstype=ext4 isolcpus=1" part /boot --source bootimg-efi --sourceparams="loader=grub-efi" --fstype=vfat --label boot --active --align 1024 --use-uuid --fixed-size 192M part / --source rootfs --fstype=ext4 --label root --align 1024 --use-uuid
无论我设置什么、cmdline 始终如下所示:
console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 mtdparts=fc40000.spi.0:1m(ospi.tiboot3),2m(ospi.tispl),4m(ospi.u-boot),256k(ospi.env),256k(ospi.env.backup),57088k@8m(ospi.rootfs),256k(ospi.phypattern);omap2-nand.0:2m(NAND.tiboot3),2m(NAND.tispl),2m(NAND.tiboot3.backup),4m(NAND.u-boot),256k(NAND.u-boot-env),256k(NAND.u-boot-env.backup),-(NAND.file-system) root=PARTUUID=05bf03dd-02 rw rootfstype=ext4 rootwait
这些参数是否在 meta-ti 中的某个位置配置并覆盖我的设置?
BR、
Jakub