From: "Alex Bennée" <alex.bennee@linaro.org>
To: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>
Cc: qemu-devel@nongnu.org, "Peter Xu" <peterx@redhat.com>,
"Daniel P. Berrangé" <berrange@redhat.com>,
"Thomas Huth" <th.huth+qemu@posteo.eu>,
"Song Gao" <gaosong@loongson.cn>, "John Snow" <jsnow@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Kyle Evans" <kevans@freebsd.org>,
"Pierrick Bouvier" <pierrick.bouvier@linaro.org>,
"Cleber Rosa" <crosa@redhat.com>, "Warner Losh" <imp@bsdimp.com>,
"Brad Smith" <brad@comstyle.com>,
"Thomas Huth" <thuth@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Max Filippov" <jcmvbkbc@gmail.com>,
"Brian Cain" <brian.cain@oss.qualcomm.com>,
"Fabiano Rosas" <farosas@suse.de>,
"Peter Maydell" <peter.maydell@linaro.org>,
"Richard Henderson" <richard.henderson@linaro.org>,
qemu-arm@nongnu.org
Subject: Re: [PATCH v2 03/16] tests/Makefile.include: add binary dependency to run-tcg-tests-% rules
Date: Thu, 28 May 2026 21:04:22 +0100 [thread overview]
Message-ID: <87v7c7pagp.fsf@draig.linaro.org> (raw)
In-Reply-To: <98156f95-e6bf-4061-8e3e-9e884ebc3e5e@oss.qualcomm.com> (Pierrick Bouvier's message of "Thu, 28 May 2026 11:43:26 -0700")
Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com> writes:
> On 5/28/2026 11:03 AM, Alex Bennée wrote:
>> Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com> writes:
>>
>>> On 5/28/2026 3:13 AM, Alex Bennée wrote:
>>>> Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com> writes:
>>>>
>>>>> On 5/26/2026 11:17 PM, Alex Bennée wrote:
>>>>>> Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com> writes:
>>>>>>
>>>> <snip>
>>>>>>
>>>>>> What do you mean? I run check-tcg all the time.
>>>>>>
>>>>>> Which containers fail to build for you? The main cross-compiler one
>>>>>> (debian-all-test-cross) is built all the time.
>> <snip>
>>>>> I'm a bit tired of seeing patches in your subsystems get stuck for
>>>>> weeks, without any proper review, to finally be (re)posted again in a
>>>>> new series, blocked for more weeks, and finally reach upstream one month
>>>>> later or worse. It's truly exhausting for everyone contributing in such
>>>>> places.
>>>>
>>>> What can I say - reviews are welcome. I always list what patches are
>>>> still waiting for review in the cover letter. I should also add for
>>>> testing/next I try to be extra careful that regressions don't slip in
>>>> because keeping the testing sub-system stable is important to support
>>>> things like bisection.
>>>>
>>>
>>> The main issue with your personal workflow, which is "reposting existing
>>> series concatenated in a new single series", is that it adds a lot of
>>> latency. Basically, if one patch fails, or is not reviewed, the whole
>>> thing is blocked. And that is a problem. I don't see what it's supposed
>>> to achieve, since it's halfway between a series, and a PR, without being
>>> one or the other.
>>>
>>> TLDR: the problem is how long things are between receiving reviewed-by,
>>> and being in a pull request in your subsystems.
>>>
>>> For instance, in current series, there are multiple sub series. Some of
>>> them are fully reviewed and ready to go, they can be sent as PR
>>> independently.
>>>
>>> I remember you mentioned several times that you like to have a "single
>>> branch". I have the same workflow, and it absolutely does not prevent to
>>> send multiple PR or series in parallel.
>>
>> I do split stuff out when it makes sense, but look at testing/next:
>>
>> e02df7f4810 * testing/next MAINTAINERS: Cover python.docker with Python library section
>> 4fcb3a8c07a * MAINTAINERS: Cover debian-tricore-cross.docker with TriCore section
>> b554638aea6 * MAINTAINERS: Cover debian-xtensa-cross.docker with Xtensa section
>> 8417a661600 * MAINTAINERS: Cover debian-loongarch-cross.docker with LoongArch section
>> 0f57fbac5bc * MAINTAINERS: Fix docker/dockerfiles/debian-hexagon-cross.docker path
>>
>> Maintainers updates aren't critical to get in now.
>>
>
> The more you wait, the more it might create conflicts. That's basic
> software engineering, and where the term Continuous integration comes
> from. It does not mean "run a GitLab pipeline", it means integrate
> often, *continuously*, with low latency.
>
> There has been concrete examples of why delaying created an issue in the
> past. In the current series, "docker: Remove LegacyKeyValueFormat*"
> basically blocks any other change in concerned files, as soon as it does
> not land. At least those two could have been sent as soon as possible.
>
> If you'd send a PR regularly (at least every week), it would be less a
> problem. Miss the train? get the next one.
>
> If you want a good analogy:
> Problem is that your train is leaving at random time, and it has several
> wagons, which increase the risk of a mechanical failure every time. As a
> result, passengers are stuck waiting.
>
>> f80f388a538 * gitlab: update issue template for binary test cases
>> 4e7de923722 * gitlab: add MacOS 26 job on gitlab runner
>> e0692ad4b23 * gitlab: add initial MacOS 15 on gitlab runner
>> 1299b5aec2f * ci: drop cirrus MacOS build
>>
>> None of these matter without bellow
>>
>> dd2db9273be * accel/tcg: move jit thread manipulation into do_tb_phys_invalidate
>>
>> b60553095bb * tests/Makefile.include: add binary dependency to run-tcg-tests-% rules
>> bcde94b9315 * tests/Makefile.include: fix typo in comment
>>
>> Why take the chance to break the build when the changes are in service
>> of the wider patch? The more runs through the CI to shake out anything
>> the better.
>>
>>> If tooling is the limitation, please take a look to those (ugly) scripts
>>> for inspiration. AI can probably rewrite this better than me in 10 min.
>>> With this, sending a series or a PR is a complete no-op for me, I just
>>> wait for CI to run, and send it when ready 2h later.
>>
>> Tooling isn't the issue - but I'm never going to be doing multiple PRs a
>> week because each one has a degree of latency due to CI coverage.
>>
>
> Sorry, but this sentence doesn't make any sense at all.
> What is the "degree of latency due to CI coverage"?
>
> CI takes less than 2 hours to run, you can run it 4 times within a
> working day. 5 days a week. That's 20 chances to send a PR.
> The only latency is human based, and a way to solve it is to automate.
> Lack of tooling *is* the problem in this situation.
>
> You can't take a lot of pride in automating things with AI, and claim
> it's impossible to automate sending a series of patch and run a CI
> pipeline from it. Use AI if you want, but please apply it everywhere
> it's needed.
>
>>> Saying "people have to accept my tempo" is not acceptable. Fix the
>>> tooling instead.
>>
>> I think it is fundamentally down to the maintainer what tempo they are
>> happy and able to work at. If you wish to take on responsibility for more
>> areas of the code base then be my guest.
>>
>
> There is a difference between being really busy and just adding latency
> artificially because "I said so". We worked together, so I can make the
> difference between the two.
>
> I would be happy to help maintain any part that needs help. Maintaining
> plugins was a suggestion that came from Richard, and yes, I was open to
> do it for a long time, especially after experimenting weeks of latency
> to see patches get merged, and this several times.
>
> I stepped in for docs because we identified there was a need for it.
> I also talked with you in private to help on linux-user and you
> explicitly asked me to wait, without any specific reason. Now Helge is
> maintaining it and doing an excellent job, I'm really glad he stepped in.
>
> I would be happy to help co-maintain tests/tcg and help this move to
> meson. Unfortunately, you snipped that part without even trying to
> answer to my proposal of helping by making a small proof of concept.
>
> Coming back to your proposal, do you wanna share maintainership on
> tests/tcg/multiarch and tests/tcg?
I'm happy to turn over the maintinership of tests/tcg to you with the
new meson based system.
>
>>>
>>> Regards,
>>> Pierrick
>>
--
Alex Bennée
Virtualisation Tech Lead @ Linaro
next prev parent reply other threads:[~2026-05-28 20:05 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-21 13:17 [PATCH v2 00/16] testing/next: various updates (MacOS, docker, gitlab) Alex Bennée
2026-05-21 13:17 ` [PATCH v2 01/16] Makefile: include tests/Makefile.include before ninja calculation Alex Bennée
2026-05-22 17:51 ` Pierrick Bouvier
2026-05-21 13:17 ` [PATCH v2 02/16] tests/Makefile.include: fix typo in comment Alex Bennée
2026-05-22 17:51 ` Pierrick Bouvier
2026-05-21 13:17 ` [PATCH v2 03/16] tests/Makefile.include: add binary dependency to run-tcg-tests-% rules Alex Bennée
2026-05-22 18:03 ` Pierrick Bouvier
2026-05-22 19:02 ` Alex Bennée
2026-05-22 19:44 ` Pierrick Bouvier
2026-05-23 8:56 ` Alex Bennée
2026-05-25 15:46 ` Pierrick Bouvier
2026-05-25 17:18 ` Pierrick Bouvier
2026-05-25 18:43 ` Alex Bennée
2026-05-25 19:22 ` Pierrick Bouvier
2026-05-26 10:47 ` Alex Bennée
2026-05-26 17:15 ` Pierrick Bouvier
2026-05-26 17:58 ` Alex Bennée
2026-05-26 18:07 ` Pierrick Bouvier
2026-05-27 6:17 ` Alex Bennée
2026-05-27 20:55 ` Pierrick Bouvier
2026-05-28 10:13 ` Alex Bennée
2026-05-28 16:41 ` Pierrick Bouvier
2026-05-28 18:03 ` Alex Bennée
2026-05-28 18:43 ` Pierrick Bouvier
2026-05-28 20:04 ` Alex Bennée [this message]
2026-05-28 20:19 ` Pierrick Bouvier
2026-06-03 19:03 ` Alex Bennée
2026-06-03 21:03 ` Pierrick Bouvier
2026-05-21 13:17 ` [PATCH v2 04/16] accel/tcg: move jit thread manipulation into do_tb_phys_invalidate Alex Bennée
2026-05-21 13:17 ` [PATCH v2 05/16] ci: drop cirrus MacOS build Alex Bennée
2026-05-22 17:51 ` Pierrick Bouvier
2026-05-21 13:17 ` [PATCH v2 06/16] gitlab: add initial MacOS 15 on gitlab runner Alex Bennée
2026-05-22 17:52 ` Pierrick Bouvier
2026-05-21 13:17 ` [PATCH v2 07/16] gitlab: add MacOS 26 job " Alex Bennée
2026-05-22 17:52 ` Pierrick Bouvier
2026-05-21 13:17 ` [PATCH v2 08/16] gitlab: update issue template for binary test cases Alex Bennée
2026-05-21 13:17 ` [PATCH v2 09/16] MAINTAINERS: add a section for AI agents Alex Bennée
2026-05-21 13:17 ` [PATCH v2 10/16] MAINTAINERS: Fix docker/dockerfiles/debian-hexagon-cross.docker path Alex Bennée
2026-05-21 13:17 ` [PATCH v2 11/16] MAINTAINERS: Cover debian-loongarch-cross.docker with LoongArch section Alex Bennée
2026-05-21 13:17 ` [PATCH v2 12/16] MAINTAINERS: Cover debian-xtensa-cross.docker with Xtensa section Alex Bennée
2026-05-21 13:17 ` [PATCH v2 13/16] MAINTAINERS: Cover debian-tricore-cross.docker with TriCore section Alex Bennée
2026-05-21 13:17 ` [PATCH v2 14/16] MAINTAINERS: Cover python.docker with Python library section Alex Bennée
2026-05-21 13:17 ` [PATCH v2 15/16] docker: Remove LegacyKeyValueFormat warnings in non-generated files Alex Bennée
2026-05-21 13:17 ` [PATCH v2 16/16] docker: Remove LegacyKeyValueFormat warnings in generated files Alex Bennée
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87v7c7pagp.fsf@draig.linaro.org \
--to=alex.bennee@linaro.org \
--cc=berrange@redhat.com \
--cc=brad@comstyle.com \
--cc=brian.cain@oss.qualcomm.com \
--cc=crosa@redhat.com \
--cc=farosas@suse.de \
--cc=gaosong@loongson.cn \
--cc=imp@bsdimp.com \
--cc=jcmvbkbc@gmail.com \
--cc=jsnow@redhat.com \
--cc=kevans@freebsd.org \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=peterx@redhat.com \
--cc=philmd@linaro.org \
--cc=pierrick.bouvier@linaro.org \
--cc=pierrick.bouvier@oss.qualcomm.com \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=th.huth+qemu@posteo.eu \
--cc=thuth@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.