Re: [PATCH 1/2] sched/topology: Allow archs to override cpu_smt_mask
From: peterz
Date: Thu Aug 06 2020 - 04:54:59 EST
On Thu, Aug 06, 2020 at 03:32:25PM +1000, Michael Ellerman wrote:
> That brings with it a bunch of problems, such as existing software that
> has been developed/configured for Power8 and expects to see SMT8.
>
> We also allow LPARs to be live migrated from Power8 to Power9 (and back), so
> maintaining the illusion of SMT8 is considered a requirement to make that work.
So how does that work if the kernel booted on P9 and demuxed the SMT8
into 2xSMT4? If you migrate that state onto a P8 with actual SMT8 you're
toast again.
> Yeah I agree the naming is confusing.
>
> Let's call them "SMT4 cores" and "SMT8 cores"?
Works for me, thanks!
> The problem is we are already lying to userspace, because firmware lies to us.
>
> ie. the firmware on these systems shows us an SMT8 core, and so current kernels
> show SMT8 to userspace. I don't think we can realistically change that fact now,
> as these systems are already out in the field.
>
> What this patch tries to do is undo some of the mess, and at least give the
> scheduler the right information.
What a mess... I think it depends on what you do with that P9 to P8
migration case. Does it make sense to have a "p8_compat" boot arg for
the case where you want LPAR migration back onto P8 systems -- in which
case it simply takes the firmware's word as gospel and doesn't untangle
things, because it can actually land on a P8.