How to prevent inheriting CPU affinity by child forked process?

affinity, c++, execvp, fork, linux

Solution

You can call `sched_setaffinity(2)` with all bits set in CPU mask after the `fork(2)` and before the `execve(2)`.

Problem

I have a server process that forks many child processes. The server process has affinity to a CPU core, but I don't want that affinity to be inherited by child process (rather OS should handle where to run these processes). Is there a way to delink parent child processes with respect to cpu affinity?

Original source