• Emilio G. Cota's avatar
    qom: convert the CPU list to RCU · 068a5ea0
    Emilio G. Cota authored
    Iterating over the list without using atomics is undefined behaviour,
    since the list can be modified concurrently by other threads (e.g.
    every time a new thread is created in user-mode).
    Fix it by implementing the CPU list as an RCU QTAILQ. This requires
    a little bit of extra work to traverse list in reverse order (see
    previous patch), but other than that the conversion is trivial.
    Signed-off-by: 's avatarEmilio G. Cota <cota@braap.org>
    Message-Id: <20180819091335.22863-12-cota@braap.org>
    Signed-off-by: 's avatarPaolo Bonzini <pbonzini@redhat.com>