From: Juergen Gross Date: Fri, 30 Jul 2021 07:18:02 +0000 (+0200) Subject: xen: check required Xen features X-Git-Tag: v5.15~113^2~43 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ac4c403c9036793dfbf63e75acd1772cdac778de;p=platform%2Fkernel%2Flinux-starfive.git xen: check required Xen features Linux kernel is not supported to run on Xen versions older than 4.0. Add tests for required Xen features always being present in Xen 4.0 and newer. Signed-off-by: Juergen Gross Reviewed-by: Boris Ostrovsky Link: https://lore.kernel.org/r/20210730071804.4302-2-jgross@suse.com Signed-off-by: Juergen Gross --- diff --git a/drivers/xen/features.c b/drivers/xen/features.c index 25c053b..7b59144 100644 --- a/drivers/xen/features.c +++ b/drivers/xen/features.c @@ -9,13 +9,26 @@ #include #include #include +#include #include +#include #include #include #include +/* + * Linux kernel expects at least Xen 4.0. + * + * Assume some features to be available for that reason (depending on guest + * mode, of course). + */ +#define chk_required_feature(f) { \ + if (!xen_feature(f)) \ + panic("Xen: feature %s not available!\n", #f); \ + } + u8 xen_features[XENFEAT_NR_SUBMAPS * 32] __read_mostly; EXPORT_SYMBOL_GPL(xen_features); @@ -31,4 +44,9 @@ void xen_setup_features(void) for (j = 0; j < 32; j++) xen_features[i * 32 + j] = !!(fi.submap & 1<