On Sun, 27 Sep 2026, Michael S. Tsirkin wrote:
On Sun, Sep 27, 2026 at 12:03:39PM +0200, BALATON Zoltan wrote:
On Sun, 27 Sep 2026, Michael S. Tsirkin wrote:
On Fri, Sep 25, 2026 at 02:20:49PM +0200, BALATON Zoltan wrote:
Not directly related to this patch but as an input to this discussion I'd
like to bring to your attention how some people use AI now. With LLMs being
able to do more, some users who have no idea about coding or QEMU internals
but want to use QEMU for things that we could not deliver, now just maintain
a fork and let the AI add features and fix bugs they find without ever
contacting us or reporting these back.
More power to them I say. There's no way to find gold in this sand. Let
them be.
Sure they are free to do whatever they want and I don't want to stop this
but I'd like to see that effort eventually improving QEMU and not lost for
us or need to be redone from scratch.
No one has the time and energy to wade through mountains of slop.
That's why we should ask contributors using AI to do that before trying to
submit it and not expect maintainers to do it for them. Telling people
that they can use AI but they have to clean up the patches and describe it
themselves in the commit message to prove they did that and not just send
slop our way is better than just saying no AI generated code at all
because that just drives away more potential contributors. If this way of
writing code stays there will not be many people willing to do everthing
by hand but expecting them to steer the AI and know what they are doing is
a reasonable limitation to put on AI use.
So some kind of AI policy is needed
and a strict no-AI policy does not help to get these efforts defragmented.
There's no effort here.
What do you mean there's no effort? Even if these people don't write code
they spend a lot of time talking to the AI and test the generated patches
and iterate and refine it until they get what they want. Even if the
result is not meaningful to be included upstream there's still wasted
effort and some genuine problems solved. The solution may not be the best
way but at least it's a start to improve QEMU or show what users want but
with a no-AI policy we won't even know about that.
While goal oriented use of AI tools without caring for code quality leads to
non-upstreamable patches maybe we could encourage these people to learn and
even use an AI to redo their patches in a way that can at some point be
upstreamed after some human review but since we don't have enough
maintainers who could do that for them this should be done by the
contributors. With the current no-AI policy they are locked out from
contributing so they won't even try. By now they have implemented features
we wanted for years but still could not get them due to not enough people
being able to write code and while the AI generated patches can be mostly
sand there are some gold in them that actually fixes issues or add features
that could be useful if there was a way to upstream them. With current
policy I can't even use the AI patches to look at them and clean them up for
upstreaming (not that I want to do that due to the lot of nonsense to sift
through but for some simpler patches this could be an option or if the
patches would be made higher quality by better guarding what the AI does).
Currently all I can say to these people is that QEMU does not accept AI
generated patches but maube it would be better to say that while they cannot
just submit their AI slop they should try to tell their AIs to do these
again cleaning up all the nonsense and distill the gold from it and then
there should be some way to let that improve QEMU without drowning the
maintainers and putting all this effort on them.
Regards,
BALATON Zoltan
AI's can not do this, at this juncture.
AIs can't do that by themselves just by asking to do that but could if
steered in the right direction and supervised by people. That means the
people need some understanding on how things should be done so we should
encourage them to learn and then redo their slop in a better way. Asking
them to learn everything first and then redo everything by hand will not
lead anywhere. Giving up on it is an option but that will lead to forks
corrupted by AI patches that people are using instead of the upstream QEMU
because it does what they want and they don't know why it is bad. So I'd
try not to give up on it. We don't want to wade through slop and clean
those patches but we could try to educate people to use the AI in a better
way that can help the project too. That's still talking to real
contributors and using their effort and not wasting it. The proposal that
patches should be known and described by who submits them and review
should be replied by people and not AI is meant to go that way. Of course
there will be some people who will disregard that and still try to submit
slop and generate replies by AI but then you can refer to the policy and
ignore them until they follow the rules and put in some effort to learn.
Regards,
BALATON Zoltan