[PATCH v2 11/11] powerpc/mm/book3s64/pgtable: Uses counting method to skip serializing
Leonardo Bras
leonardo at linux.ibm.com
Tue Sep 24 06:23:03 AEST 2019
On Mon, 2019-09-23 at 12:58 -0700, John Hubbard wrote:
>
> CPU 0 CPU 1
> ------ --------------
> READ(pte) (re-ordered at run time)
> atomic_inc(val) (no run-time memory barrier!)
>
> pmd_clear(pte)
> if (val)
> run_on_all_cpus(): IPI
> local_irq_disable() (also not a mem barrier)
>
> if(pte)
> walk page tables
Let me see if I can understand,
On most patches, it would be:
CPU 0 CPU 1
------ --------------
ptep = __find_linux_pte
(re-ordered at run time)
atomic_inc(val)
pmd_clear(pte)
smp_mb()
if (val)
run_on_all_cpus(): IPI
local_irq_disable()
if(ptep)
pte = *ptep;
Is that what you meant?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part
URL: <http://lists.ozlabs.org/pipermail/linuxppc-dev/attachments/20190923/8b49d4ae/attachment.sig>
More information about the Linuxppc-dev
mailing list