HomeFreeBSD

[PowerPC64LE] Fix sleeping on POWER8.

Description

[PowerPC64LE] Fix sleeping on POWER8.

Due to enter_idle_powerx fabricating a MSR from scratch, it is necessary
for it to care about the endianness, so we don't accidentally switch
endian the first time we idle a thread.

Took about five seconds to spot after seeing an unmangled backtrace.

The hard bit was needing to temporarily set up a mutex to sort out the
logjam that happens when every thread simultaneously wakes up in the wrong
endian due to the panic IPI and panics, leaving what I can best describe as
"alphabet soup" on the console.

Luckily, I already had a patch sitting around to do that.

This brings POWER8 up to equivilence with POWER9 on PPC64LE.

Sponsored by: Tag1 Consulting, Inc.

Details

Provenance
bdragonAuthored on
Parents
rS366056: [PowerPC64LE] Pass our byte order to the sqlite3 build.
Branches
Unknown
Tags
Unknown