On Thu, Feb 01, 2024 at 05:07:31PM +0000, Peter Maydell wrote: > On Thu, 1 Feb 2024 at 17:04, Gregory Price <gregory.pr...@memverge.com> wrote: > > > > On Thu, Feb 01, 2024 at 04:45:30PM +0000, Alex Bennée wrote: > > > > No thats different - we are actually writing to the MMIO region here. > > > But the fact we hit cpu_abort because we can't find the TB we are > > > executing is a little problematic. > > > > > > Does ra properly point to the code buffer here? > > > > > > > What if the code block is ALSO in CXL (MMIO)? :D > > In that case the TB is supposed to be a single insn, > so the insn will by definition be the last one in its > TB, and IO should be OK for it -- so can_do_io ought > to be true and we shouldn't get into the io_recompile. > > -- PMM
We saw a bug early on in CXL emulation with instructions hosted on CXL that split a page boundary (e.g. 0xEB|0xFE).. I'm wondering about a code block that splits a page boundary and whether there's a similar corner case. ~Gregory