mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-01 22:54:01 +00:00
e5f57aaccb
[ Upstream commit a603002eea
]
Instead of having a global flag to require restricted memory access
for all virtio devices, introduce a callback which can select that
requirement on a per-device basis.
For convenience add a common function returning always true, which can
be used for use cases like SEV.
Per default use a callback always returning false.
As the callback needs to be set in early init code already, add a
virtio anchor which is builtin in case virtio is enabled.
Signed-off-by: Juergen Gross <jgross@suse.com>
Tested-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com> # Arm64 guest using Xen
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Link: https://lore.kernel.org/r/20220622063838.8854-2-jgross@suse.com
Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
19 lines
507 B
C
19 lines
507 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef _LINUX_VIRTIO_ANCHOR_H
|
|
#define _LINUX_VIRTIO_ANCHOR_H
|
|
|
|
#ifdef CONFIG_VIRTIO_ANCHOR
|
|
struct virtio_device;
|
|
|
|
bool virtio_require_restricted_mem_acc(struct virtio_device *dev);
|
|
extern bool (*virtio_check_mem_acc_cb)(struct virtio_device *dev);
|
|
|
|
static inline void virtio_set_mem_acc_cb(bool (*func)(struct virtio_device *))
|
|
{
|
|
virtio_check_mem_acc_cb = func;
|
|
}
|
|
#else
|
|
#define virtio_set_mem_acc_cb(func) do { } while (0)
|
|
#endif
|
|
|
|
#endif /* _LINUX_VIRTIO_ANCHOR_H */
|