Re: Various problems for the Xen for XenGT code and guide.
From: Lv, Zhiyuan
Date: Wed Sep 02 2020 - 08:48:50 EST
Hi,
It is mainly due to the business priority change. XenGT project was originally created for data center usages with XEON E3 servers which have integrated processor graphics. After SkyLake E3, there are no new servers capable of running GVT-g, and Intel future graphics for data center will have different approaches for GPU sharing. Another reason is the XenGT upstream difficulty. Different from KVMGT which has been fully merged to upstream, Xen part of GVT-g still has technical opens that are hard to close quickly.
Sorry that we did not sync up with community in time the XenGT ramping down plan. Internally we have been testing XenGT until November 2019. We will update our setup guide for XenGT part to reflect the information. Going forward we will try our best to do XenGT consultant, but will not be able to do code rebase/test or debugging. Meanwhile, we are still maintaining KVMGT mainly for client integrated GPU usages. We will continue to fix issues that can be reproduced with KVMGT.
https://github.com/intel/gvt-linux/tree/topic/gvt-xengt
https://github.com/intel/Igvtg-xen/tree/xengt-stable-4.10
Hi Marietto, we appreciate your efforts trying GVT-g (XenGT). Hope Terrence's reply helps. By switching back to old gcc those compile errors should be gone. Meanwhile please be kindly noticed that we can only provide limited support on XenGT with old versions. Thanks!
Regards,
-Zhiyuan
-----Original Message-----
From: Jason Long <hack3rcon@xxxxxxxxx>
Date: Wednesday, September 2, 2020 at 1:07 AM
To: Mario Marietto <marietto2008@xxxxxxxxx>, "igvt-g@xxxxxxxxxxxx" <igvt-g@xxxxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxx>, "intel-gfx@xxxxxxxxxxxxxxxxxxxxx" <intel-gfx@xxxxxxxxxxxxxxxxxxxxx>, "linux-kernel@xxxxxxxxxxxxxxx" <linux-kernel@xxxxxxxxxxxxxxx>, Susie Li <susie.li@xxxxxxxxx>, "Tian, Kevin" <kevin.tian@xxxxxxxxx>, Zhiyuan Lv <zhiyuan.lv@xxxxxxxxx>, "Li, Weinan Z" <weinan.z.li@xxxxxxxxx>, "Downs, Mike" <mike.downs@xxxxxxxxx>, "Xu, Terrence" <terrence.xu@xxxxxxxxx>
Subject: Re: Various problems for the Xen for XenGT code and guide.
Hello,
Why XenGT doesn't have any new version?
On Tuesday, September 1, 2020, 09:21:27 PM GMT+4:30, Xu, Terrence <terrence.xu@xxxxxxxxx> wrote:
Hi Mario,
Sorry to make you feel uncomfortable.
I think it is not setup guide problem, the main reason is the Xen code is very old (We are upgrading GVT-g code on Linux kernel side and we haven’t upgraded the Xen and Qemu source for XenGT for at least 2 years) but your GCC is new (You are using Ubuntu 20.4, the gcc version is 9+).
I have a way to workaround it, as below:
1. apt-get install gcc-72. ln -fs gcc-7 /usr/bin/gcc
Any more problem just let us know!
Thanks
Terrence
From: Mario Marietto <marietto2008@xxxxxxxxx>
Sent: Thursday, August 27, 2020 9:52 PM
To: Xu, Terrence <terrence.xu@xxxxxxxxx>; igvt-g@xxxxxxxxxxxx; xen-devel@xxxxxxxxxxxxxxxxxxxx; xen-devel@xxxxxxxxxxxxx; intel-gfx@xxxxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Li, Susie <susie.li@xxxxxxxxx>; Tian, Kevin <kevin.tian@xxxxxxxxx>; Lv, Zhiyuan <zhiyuan.lv@xxxxxxxxx>; Li, Weinan Z <weinan.z.li@xxxxxxxxx>; Downs, Mike <mike.downs@xxxxxxxxx>
Subject: Various problems for the Xen for XenGT code and guide.
Hello.
I would like to pass the integrated gpu from the host os (ubuntu 20.04) to the windows 10 guest os with xen. This is because xen works great for me,better than qemu-kvm for my specific needs and because I have only two graphic cards. The nvidia rtx 2080 ti that I have already passed to the guest,and the intel UHD 630,that can be duplicated from the host to the guest so that it can be used in both places without interruptions. So I'm trying to build this repository :
https://github.com/intel/gvt-linux/wiki/GVTg_Setup_Guide#332-build-qemu--xen-for-xengt
I have to say that this guide is totally not very well written. And the code is full of unpatched bugs. It's a month that I'm working on that,trying to fix the bugs that are came out from the 2015 until today. This is not my job. This is my hobby. But,I need to activate the pass through for my integrated GPU so I don't to give up. I'm also very angry with those coders who do not do their job well and with those coders who do not respond to help messages. It is not enough to write good code to be a good programmer. It is also important to keep the documentation updated, to help those who cannot get the code to work. Anyway,I've documented every step that I did to make it work here :
https://github.com/intel/gvt-linux/issues/168
right now I'm trying to fix the bug n. 434544,that you can see below.
CC util/qemu-error.o/etc/xen/igvtg-xen/tools/qemu-xen-dir/util/qemu-error.c: In function ‘vreport’:/etc/xen/igvtg-xen/tools/qemu-xen-dir/util/qemu-error.c:201:5: error: ‘GTimeVal’ is deprecated: Use 'GDateTime' instead [-Werror=deprecated-declarations]201 | GTimeVal tv;| ^~~~~~~~In file included from /usr/include/glib-2.0/glib/galloca.h:32,from /usr/include/glib-2.0/glib.h:30,from /etc/xen/igvtg-xen/tools/qemu-xen-dir/include/glib-compat.h:19,from /etc/xen/igvtg-xen/tools/qemu-xen-dir/include/qemu/osdep.h:107,from /etc/xen/igvtg-xen/tools/qemu-xen-dir/util/qemu-error.c:13:/usr/include/glib-2.0/glib/gtypes.h:547:8: note: declared here547 | struct GTimeVal| ^~~~~~~~~/etc/xen/igvtg-xen/tools/qemu-xen-dir/util/qemu-error.c:205:9: error: ‘g_get_current_time’ is deprecated: Use 'g_get_real_time' instead [-Werror=deprecated-declarations]205 | g_get_current_time(&tv);| ^~~~~~~~~~~~~~~~~~In file included from /usr/include/glib-2.0/glib/giochannel.h:33,from /usr/include/glib-2.0/glib.h:54,from /etc/xen/igvtg-xen/tools/qemu-xen-dir/include/glib-compat.h:19,from /etc/xen/igvtg-xen/tools/qemu-xen-dir/include/qemu/osdep.h:107,from /etc/xen/igvtg-xen/tools/qemu-xen-dir/util/qemu-error.c:13:/usr/include/glib-2.0/glib/gmain.h:679:8: note: declared here679 | void g_get_current_time (GTimeVal result);| ^~~~~~~~~~~~~~~~~~/etc/xen/igvtg-xen/tools/qemu-xen-dir/util/qemu-error.c:206:9: error: ‘g_time_val_to_iso8601’ is deprecated: Use 'g_date_time_format' instead [-Werror=deprecated-declarations]206 | timestr = g_time_val_to_iso8601(&tv);| ^~~~~~~In file included from /usr/include/glib-2.0/glib.h:88,from /etc/xen/igvtg-xen/tools/qemu-xen-dir/include/glib-compat.h:19,from /etc/xen/igvtg-xen/tools/qemu-xen-dir/include/qemu/osdep.h:107,from /etc/xen/igvtg-xen/tools/qemu-xen-dir/util/qemu-error.c:13:/usr/include/glib-2.0/glib/gtimer.h:73:10: note: declared here73 | gchar g_time_val_to_iso8601 (GTimeVal *time) G_GNUC_MALLOC;| ^~~~~~~~~~~~~~~~~~~~~cc1: all warnings being treated as errors
any help is appreciated. Someone must help me, thanking me for all the efforts I am making to make work a code full of errors. I would also know if I can activate the passthrough of the intel integrated gpu using the precompiled xen-hypervisor package that's on ubuntu. Right now I tried to compile it from scratch because I've thought that it was a necessary step,as described on the guide. But Im not sure on this point.
--
Mario.