From d79217059b979127c67a0135014b471067cf3fb9 Mon Sep 17 00:00:00 2001 From: wanyaoqi <18528551+wanyaoqi@users.noreply.github.com> Date: Tue, 6 Aug 2024 09:07:05 +0800 Subject: [PATCH] fix(host-deployer): add cpu mem hotplug udev rules (#20961) --- pkg/hostman/guestfs/fsdriver/linux.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/pkg/hostman/guestfs/fsdriver/linux.go b/pkg/hostman/guestfs/fsdriver/linux.go index 3da19cc0e7..9b09d07d8f 100644 --- a/pkg/hostman/guestfs/fsdriver/linux.go +++ b/pkg/hostman/guestfs/fsdriver/linux.go @@ -487,6 +487,19 @@ func (l *sLinuxRootFs) DeployStandbyNetworkingScripts(rootFs IDiskPartition, nic return nil } +func (l *sLinuxRootFs) DeployUdevSubsystemScripts(rootFs IDiskPartition) error { + udevPath := "/etc/udev/rules.d/" + if rootFs.Exists(udevPath, false) { + cpuMemHotplugRules := `SUBSYSTEM=="cpu", ACTION=="add", TEST=="online", ATTR{online}=="0", ATTR{online}="1" +SUBSYSTEM=="memory", ACTION=="add", TEST=="state", ATTR{state}=="offline", ATTR{state}="online"` + "\n" + if err := rootFs.FilePutContents(path.Join(udevPath, "80-hotplug-cpu-mem.rules"), cpuMemHotplugRules, false, false); err != nil { + return err + } + } + + return nil +} + func (l *sLinuxRootFs) GetOs() string { return "Linux" }