]> www.infradead.org Git - users/jedix/linux-maple.git/commit
MIPS: sync-r4k: Rework based on x86 tsc_sync
authorJiaxun Yang <jiaxun.yang@flygoat.com>
Wed, 12 Jun 2024 08:54:32 +0000 (09:54 +0100)
committerThomas Bogendoerfer <tsbogend@alpha.franken.de>
Wed, 3 Jul 2024 14:50:12 +0000 (16:50 +0200)
commit580724fce27f2b71b3e4d58bbe6d83b671929b33
tree05ef18ae651605975ebf08b18b7dd1c3aef29629
parent7464c0762e96904b6bf686a4dc8b3255adf1c890
MIPS: sync-r4k: Rework based on x86 tsc_sync

The original sync-r4k did a good job on reducing jitter by determine
the "next time value", but it has a limitation that when synchronization
being performed too many times due to high core count or CPU hotplug,
the timewrap on CPU0 will become unaccpetable.

Rework the mechanism based on latest x86 tsc_sync. (It seems like
the original implementation is based on tsc_sync at that time,
so it's just a refresh.) To improve overall performance.

Tesed on Loongson64, Boston, QEMU.

Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
arch/mips/include/asm/r4k-timer.h
arch/mips/kernel/smp.c
arch/mips/kernel/sync-r4k.c