[Xen-devel] [PATCH for-next RFC 8/8] x86: be more verbose when running nested

Wei Liu posted 8 patches 6 years, 1 month ago
There is a newer version of this series
[Xen-devel] [PATCH for-next RFC 8/8] x86: be more verbose when running nested
Posted by Wei Liu 6 years, 1 month ago
Signed-off-by: Wei Liu <liuwe@microsoft.com>
---
 xen/arch/x86/setup.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
index dec60d0301..bbcc5a503d 100644
--- a/xen/arch/x86/setup.c
+++ b/xen/arch/x86/setup.c
@@ -789,6 +789,17 @@ void __init noreturn __start_xen(unsigned long mbi_p)
 
     printk("Xen image load base address: %#lx\n", xen_phys_start);
 
+#ifdef CONFIG_GUEST
+#ifdef CONFIG_XEN_GUEST
+    if ( xen_guest )
+        printk("Running on Xen hypervisor\n");
+#endif
+#ifdef CONFIG_HYPERV_GUEST
+    if ( hyperv_guest )
+        printk("Running on Hyper-V\n");
+#endif
+#endif
+
 #ifdef CONFIG_VIDEO
     printk("Video information:\n");
 
-- 
2.20.1


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
Re: [Xen-devel] [PATCH for-next RFC 8/8] x86: be more verbose when running nested
Posted by Roger Pau Monné 6 years, 1 month ago
On Mon, Sep 23, 2019 at 11:09:31AM +0100, Wei Liu wrote:
> Signed-off-by: Wei Liu <liuwe@microsoft.com>
> ---
>  xen/arch/x86/setup.c | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
> index dec60d0301..bbcc5a503d 100644
> --- a/xen/arch/x86/setup.c
> +++ b/xen/arch/x86/setup.c
> @@ -789,6 +789,17 @@ void __init noreturn __start_xen(unsigned long mbi_p)
>  
>      printk("Xen image load base address: %#lx\n", xen_phys_start);
>  
> +#ifdef CONFIG_GUEST
> +#ifdef CONFIG_XEN_GUEST
> +    if ( xen_guest )
> +        printk("Running on Xen hypervisor\n");
> +#endif
> +#ifdef CONFIG_HYPERV_GUEST
> +    if ( hyperv_guest )
> +        printk("Running on Hyper-V\n");
> +#endif
> +#endif

Urg, that's kind of ugly. Why not introduce a hypervisor_name helper
or some such?

You could even have a structure like:

struct hypervisor_ops {
    const char *name;
    bool (*probe)(void);
    void (*setup)(void);
    ...
}

Thanks, Roger.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel