sim: Add support for notifying Drainable objects of a fork
When forking a gem5 process, some objects need to clean up resources (mainly file descriptions) shared between the child and the parent of the fork. This changeset adds the notifyFork() method to Drainable, which is called in the child process. Signed-off-by: Andreas Sandberg <andreas@sandberg.pp.se> [sascha.bischoff@arm.com: Rebased patches onto a newer gem5 version] Signed-off-by: Sascha Bischoff <sascha.bischoff@arm.com> Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com>
This commit is contained in:
@@ -308,4 +308,8 @@ def switchCpus(system, cpuList, verbose=True):
|
||||
for old_cpu, new_cpu in cpuList:
|
||||
new_cpu.takeOverFrom(old_cpu)
|
||||
|
||||
def notifyFork(root):
|
||||
for obj in root.descendants():
|
||||
obj.notifyFork()
|
||||
|
||||
from internal.core import disableAllListeners
|
||||
|
||||
Reference in New Issue
Block a user