Hi Eli Qiao, Question about removing resctrlfs directories with empty "tasks" file. /* This domain is not created by libvirt, so we don't care * about the tasks, add a fake one to prevent * virResCtrlRefresh * remove it from sysfs */ virResCtrlAddTask(p, 1); virResCtrlAppendDomain(p); /* Refresh all domains', remove the domains which has no task ids. * This will be used after VM pause, restart, destroy etc. */ static int virResCtrlRefresh(void) Why are you doing this (removing directories which have no tasks in them) ? The code should only read information from other CAT reservations, not write to them. This is not for cleanup purposes, since on VM shutdown the resctrlfs directories are properly removed: /* Remove the Domain from sysfs, this should only success no pids in * tasks * of a partition. */ static int virResCtrlRemoveDomain(const char *name) { char *path = NULL; int rc = 0; if ((rc = virAsprintf(&path, "%s/%s", RESCTRL_DIR, name)) < 0) return rc; rc = rmdir(path); VIR_FREE(path); return rc; } Should not write to other directories 'tasks' file. -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list