Paolo Bonzini <pbonzini@redhat.com> writes:
On 1/9/26 12:46, Daniel P. Berrangé wrote:
IMHO the root problem is that it is pretty dubious for us to be spawning the RCU thread from a constructor. Constructors should be limited to minimal initialization of state.
Yes! Discussed in review of v3: https://lore.kernel.org/qemu-devel/87frck1dds.fsf@pond.sub.org/ Message-ID: <87frck1dds.fsf@pond.sub.org>
Spawning threads is outside the boundary of what I'd consider reasonable for a constructor todo. I didn't want try to tackle refactoring the RCU thread creation though, hence this gross workaround.
I see. Maybe we could (just as gross but smaller) do the RCU constructor late. Not something that you need to do now, of course.
Could we use an old-fashioned initialization function instead of a constructor for RCU?