Re: [PATCH 2/2] virtio: replace arch_has_restricted_virtio_memory_access()

From: Heiko Carstens
Date: Tue Apr 26 2022 - 15:52:00 EST


On Tue, Apr 26, 2022 at 07:35:43PM +0200, Borislav Petkov wrote:
> On Tue, Apr 26, 2022 at 03:40:21PM +0200, Juergen Gross wrote:
> > /* protected virtualization */
> > static void pv_init(void)
> > {
> > if (!is_prot_virt_guest())
> > return;
> >
> > + platform_set_feature(PLATFORM_VIRTIO_RESTRICTED_MEM_ACCESS);
>
> Kinda long-ish for my taste. I'll probably call it:
>
> platform_set()
>
> as it is implicit that it sets a feature bit.

...and platform_clear(), instead of platform_reset_feature() please.

> In any case, yeah, looks ok at a quick glance. It would obviously need
> for more people to look at it and say whether it makes sense to them and
> whether that's fine to have in generic code but so far, the experience
> with cc_platform_* says that it seems to work ok in generic code.

We _could_ convert s390's machine flags to this mechanism. Those flags
are historically per-cpu, but if I'm not mistaken none of them is
performance critical anymore, and those who are could/should probably
transformed to jump labels or alternatives anyway.