Jessica Clarke, le mar. 30 janv. 2024 02:32:07 +0000, a ecrit:
> On 29 Jan 2024, at 10:20, Samuel Thibault <samuel.thiba...@gnu.org> wrote:
> > 
> > Damien Zammit, le lun. 29 janv. 2024 10:07:30 +0000, a ecrit:
> >> - ljmp $BOOT_CS, $M(0f)
> >> + xorl %eax, %eax
> >> + mov %cs, %ax
> >> + shll $4, %eax
> >> + addl $M(0f), %eax
> >> + movl %eax, M(ljmp_offset32)
> > 
> > This won't work with pipelined processors, which assume a complete
> > separation between code and data, and will thus have already loaded
> > the jmp instruction before your modify it.
> 
> That’s true of most architectures, but not x86. It architecturally
> guarantees that self-modifying code works,

?? It was a very common way to detect pentium processors, back in the
time.

> > Rather either perform the relocation from the C code,
> 
> Were your statement true, that wouldn’t fix the problem,

Isn't an IPI a synchronizing thing?

Samuel

Reply via email to