On 08/02/2021 09:50, Jan Beulich wrote: > On 08.02.2021 10:44, Andrew Cooper wrote: >> On 06/02/2021 10:49, Juergen Gross wrote: >>> The ring buffer for user events is used in the local system only, so >>> smp barriers are fine for ensuring consistency. >>> >>> Reported-by: Andrew Cooper <andrew.coop...@citrix.com> >>> Signed-off-by: Juergen Gross <jgr...@suse.com> >> These need to be virt_* to not break in UP builds (on non-x86). > Initially I though so, too, but isn't the sole vCPU of such a > VM getting re-scheduled to a different pCPU in the hypervisor > an implied barrier anyway?
Yes, but that isn't relevant to why UP builds break. smp_*() degrade to compiler barriers in UP builds, and while that's mostly fine for x86 read/write, its not fine for ARM barriers. virt_*() exist specifically to be smp_*() which don't degrade to broken in UP builds. ~Andrew