On Sun, 2022-01-09 at 17:52 -0700, Andy Lutomirski wrote: > On Sun, Jan 9, 2022, at 1:51 PM, Linus Torvalds wrote: > > > > > > exit_mmap(); > > > for each cpu still in mm_cpumask: > > > smp_load_acquire > > > > > > That's it, unless the mm is actually in use > > > > Ok, now do this for a machine with 1024 CPU's. > > > > And tell me it is "scalable". > > > > Do you mean a machine with 1024 CPUs and 2 bits set in mm_cpumask or > 1024 CPU with 800 bits set in mm_cpumask? In the former case, this > is fine. In the latter case, *on x86*, sure it does 800 loads, but > we're about to do 800 CR3 writes to tear the whole mess down, so the > 800 loads should be in the noise. (And this series won't actually do > this anyway on bare metal, since exit_mmap does the shootdown.) Also, while 800 loads is kinda expensive, it is a heck of a lot less expensive than 800 IPIs. -- All Rights Reversed.
Attachment:
signature.asc
Description: This is a digitally signed message part