[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v8 13/21] main: keep rcu_atfork callback enabled for qtest
From: |
Paolo Bonzini |
Subject: |
Re: [PATCH v8 13/21] main: keep rcu_atfork callback enabled for qtest |
Date: |
Thu, 30 Jan 2020 19:14:15 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.1.1 |
On 30/01/20 18:42, Alexander Bulekov wrote:
> With QTest, is this still a concern, since there are no CPU instructions
> involved? Sometimes the fork-server starts after some I/O has already
> occured (eg mapping BARs and setting up VQs for virtio-net). I know we
> briefly talked about threads at some point, and it seems that iothreads
> may be a concern, if any are started before fork. Other than that, since
> there is no TCG/CPU thread, are there any other threads that could be
> a concern?
> -Alex
There is a CPU thread, it just does not do MMIO. However, it may still
execute code via run_on_cpu. It's quite unlikely to have the deadlock,
but if it were possible to force an early start of the fork server (at
the point of os_daemonize() would be ideal) it would be cleaner and it
would allow reverting this patch.
This is not a NACK, just some extra info.
Paolo
- [PATCH v8 05/21] libqtest: add a layer of abstraction to send/recv, (continued)
- [PATCH v8 05/21] libqtest: add a layer of abstraction to send/recv, Bulekov, Alexander, 2020/01/29
- [PATCH v8 06/21] libqtest: make bufwrite rely on the TransportOps, Bulekov, Alexander, 2020/01/29
- [PATCH v8 07/21] qtest: add in-process incoming command handler, Bulekov, Alexander, 2020/01/29
- [PATCH v8 08/21] libqos: rename i2c_send and i2c_recv, Bulekov, Alexander, 2020/01/29
- [PATCH v8 09/21] libqos: split qos-test and libqos makefile vars, Bulekov, Alexander, 2020/01/29
- [PATCH v8 12/21] exec: keep ram block across fork when using qtest, Bulekov, Alexander, 2020/01/29
- [PATCH v8 13/21] main: keep rcu_atfork callback enabled for qtest, Bulekov, Alexander, 2020/01/29
[PATCH v8 11/21] fuzz: add fuzzer skeleton, Bulekov, Alexander, 2020/01/29
[PATCH v8 10/21] libqos: move useful qos-test funcs to qos_external, Bulekov, Alexander, 2020/01/29
[PATCH v8 14/21] fuzz: support for fork-based fuzzing., Bulekov, Alexander, 2020/01/29
[PATCH v8 16/21] fuzz: add target/fuzz makefile rules, Bulekov, Alexander, 2020/01/29
[PATCH v8 17/21] fuzz: add configure flag --enable-fuzzing, Bulekov, Alexander, 2020/01/29
[PATCH v8 15/21] fuzz: add support for qos-assisted fuzz targets, Bulekov, Alexander, 2020/01/29
[PATCH v8 19/21] fuzz: add virtio-net fuzz target, Bulekov, Alexander, 2020/01/29
[PATCH v8 20/21] fuzz: add virtio-scsi fuzz target, Bulekov, Alexander, 2020/01/29