On 13.03.2026 05:04, Andrew S. Rightenburg wrote:
On Wed, 2026-03-11 at 13:30 +0300, Michael Tokarev wrote:
Please take a look at https://gitlab.com/mjt0k/qemu/-/commits/staging-10.2
-- hopefully my back-port makes sense.
The same's for staging-10.1 and staging-10.0 (10.0 needed additional
small tweak).
It makes sense to me, but 10.1 and 10.0 still have the recursive PNX bug. I've
included backported patches for those two down below
Aha. I wondered about that one for a moment too, but didn't look close
enough, being distracte dby the PTE permission bits change :)
Yeah the Fixes tag is obviously misleading. What's the actual commit
which introduced the issue, if it's easy to find? :)
It looks like the "mask the whole PTE" bug was introduced in d2cba6f7ce
("target/loongarch: Add other core instructions support") when LDPTE was added
initially
Likewise I screwed up the 'Fixes:' tag for the other part of the patch as well.
The recursive PNX exception bug was actually introduced in f757a2cd69
("target/loongarch: Add LoongArch interrupt and exception handle")
Aha. This makes perfect sense!
Sorry about that. In any future patches I'll make sure to be more careful about
identifying the origin.
Thanks for having been so patient with me
That's entirely okay, Andrew! Thank *you* very much for taking care of
finding and fixing the bugs, and for thinking about qemu-stable in the
first place - the most important things here. The rest isn't really
that relevant. Yes, it'd be nice to have all the proper tags, good
wording in comments etc yadda, - but that all is just cosmetics.
Another very good thing is that we managed to sort it out - you managed,
I'm just a follower here.
As for the backports you did - it isn't necessary for simple changes
like this one. This is just moving single line from one group of
"case" statements to another, in a particular function. I've had
plenty of such cases already which I had to apply across various
renames, splits, merges etc, - sure I found 410dfbf620 "Move TCG
specified functions to tcg_cpu.c" (I guess it should've been
"specific" not "specified", but ok), -- especially since you already
mentioned it in the Fixes: tag - and found where this function were
located previously. Also, when I apply patches to stable branches,
I should keep track of what's applied; and I prefer the commit
messages to be exactly the same as in master - unless the patch
differs significantly.. All that to say - I cherry-picked this
patch (db2325f79 "Avoid recursive PNX exception..") to 10.0 & 10.1
directly, - without using backports you provided, it was easier
this way to keep all the info in place. So your work providing
the backports wasn't used - which is unfortunate..
Anyway, thank you very much for cooperation, this is excellent!
Such attention from the maintainer is a good driver to continue
maintaining the stable branches!
I re-arranged the patches to include proper Fixes tags in stable
branches, and added the second one. You can see how it looks like
in the end at https://gitlab.com/mjt0k/qemu - in respective branches.
/mjt