From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Bobulsky Subject: Re: HVM firmware passthrough - helper library Date: Sat, 14 Sep 2013 09:45:44 -0400 Message-ID: <-7746959874718497048@unknownmsgid> References: <831D55AF5A11D64C9B4B43F59EEBF720A31FBE1BC0@FTLPMAILBOX02.citrite.net> <1363806237.80975.YahooMailNeo@web161405.mail.bf1.yahoo.com> <514A172D.8050605@citrix.com> <1363894935.85161.YahooMailNeo@web161402.mail.bf1.yahoo.com> <514F6BAC.4010709@citrix.com> <1364359855.76582.YahooMailNeo@web161404.mail.bf1.yahoo.com> <515A0480.5000407@citrix.com> <1364872770.40081.YahooMailNeo@web161406.mail.bf1.yahoo.com> <515B4A70.7020603@citrix.com> <1379014159.54177.YahooMailNeo@web161403.mail.bf1.yahoo.com> <5233124B.1080201@citrix.com> Mime-Version: 1.0 (1.0) Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <5233124B.1080201@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Ross Philipson Cc: Art Napor , "xen-devel@lists.xensource.com" List-Id: xen-devel@lists.xenproject.org On Sep 13, 2013, at 9:28 AM, Ross Philipson wrote: > On 09/12/2013 03:29 PM, Art Napor wrote: >> Ross, >> >> Did this make it into 4.3? I was going to try it on the 4.2.3 with the >> latest patches. > > No, I don't believe the patches made it into 4.3. > > Ross Hello Art, Ross, The patch[es] mentioned here are to facilitate exposing BIOS SLICs to an HVM, right? I was curious about doing this some time back but never got far enough along to try it. Being able to expose a SLIC through a config file option would be a very slick way to shim Xen in between Windows and system firmware on a VT-d capable laptop, among other things. Just adding in my two cents to show some desire for the feature! Cheers, Andrew Bobulsky >> >> >> ------------------------------------------------------------------------ >> *From:* Ross Philipson >> *To:* Art Napor >> *Cc:* "xen-devel@lists.xensource.com" >> *Sent:* Tuesday, April 2, 2013 5:15 PM >> *Subject:* Re: HVM firmware passthrough - helper library >> >> On 04/01/2013 11:19 PM, Art Napor wrote: >> > Looks like they're where they're supposed to be, but no SLIC. >> >> Right well there is nothing that mandates it be there. It is an OEM >> platform license. >> >> > >> > ls /sys/firmware/acpi/tables/ >> > APIC ASF! DSDT dynamic FACP FACS HPET MCFG SSDT1 SSDT2 XMAR >> > >> > hexdump -C < /sys/firmware/acpi/tables/XMAR >> > 00000000 58 4d 41 52 e8 00 00 00 01 f9 49 4e 54 45 4c 20 >> |XMAR......INTEL | >> > 00000010 53 4e 42 20 00 00 00 00 01 00 00 00 49 4e 54 4c |SNB >> ........INTL| >> > 00000020 01 00 00 00 23 01 00 00 00 00 00 00 00 00 00 00 >> |....#...........| >> > 00000030 00 00 18 00 00 00 00 00 00 00 d9 fe 00 00 00 00 >> |................| >> > 00000040 01 08 00 00 00 00 02 00 00 00 58 00 01 00 00 00 >> |..........X.....| >> > 00000050 00 10 d9 fe 00 00 00 00 03 08 00 00 02 f0 1f 00 >> |................| >> > 00000060 04 08 00 00 00 f0 0f 00 04 08 00 00 00 f0 0f 01 >> |................| >> > 00000070 04 08 00 00 00 f0 0f 02 04 08 00 00 00 f0 0f 03 >> |................| >> > 00000080 04 08 00 00 00 f0 0f 04 04 08 00 00 00 f0 0f 05 >> |................| >> > 00000090 04 08 00 00 00 f0 0f 06 04 08 00 00 00 f0 0f 07 >> |................| >> > 000000a0 01 00 28 00 00 00 00 00 00 30 d4 da 00 00 00 00 >> |..(......0......| >> > 000000b0 ff 1f d5 da 00 00 00 00 01 08 00 00 00 00 1d 00 >> |................| >> > 000000c0 01 08 00 00 00 00 1a 00 01 00 20 00 00 00 00 00 |.......... >> .....| >> > 000000d0 00 00 80 db 00 00 00 00 ff ff 9f df 00 00 00 00 >> |................| >> > 000000e0 01 08 00 00 00 00 02 00 |........| >> > 000000e8 >> > >> > ------------------------------------------------------------------------ >> > *From:* Ross Philipson > > >> > *To:* Art Napor > >> > *Cc:* "xen-devel@lists.xensource.com >> " > > >> > *Sent:* Monday, April 1, 2013 6:04 PM >> > *Subject:* Re: HVM firmware passthrough - helper library >> > >> > On 03/27/2013 12:50 AM, Art Napor wrote: >> > > Works great with the updated libxl commits - thanks. >> > > >> > > > ./biospt 6 >> > > > Make SMBIOS file from FW. >> > > > Fail(1), errno: 2 >> > > >> > > Looks like this does require the sysfs-dmi kmod to expose the dmi >> > > structure for the utility to write out the smbios_fw.bin. >> > > >> > > # ./biospt 6 >> > > Make SMBIOS file from FW. >> > > Make SMBIOS Xen vendor struct. >> > > Wrote SMBIOS structures file: smbios_fw.bin count: 8 >> > > Make ACPI SLIC file from FW. >> > > Fail(3), errno: 2 >> > > >> > > Do the ACPI tables require the same exposure via sysfs? Not sure if >> this >> > > changes from 2.6 to 3.x kernels. The biospt utility can dump the ACPI >> > > tables using the MMAP option, but not via sysfs on a 3.4.32 system. >> > >> > They are in the same place on my wheezy with 3.2.x kernel. I would be >> > pretty surprised if they moved. Can you go in to >> > /sys/firmware/acpi/tables and see what's there? Maybe try a hexdump -C < >> > SLIC ... >> > >> > > >> > > >> > > Thanks, >> > > Art >> > > >> > > >> > > >> ------------------------------------------------------------------------ >> > > *From:* Ross Philipson > >> > >> >> > > *To:* Art Napor >> >>; >> > "xen-devel@lists.xensource.com >> > >" >> > > > >> > >> >> > > *Sent:* Sunday, March 24, 2013 5:10 PM >> > > *Subject:* Re: HVM firmware passthrough - helper library >> > > >> > > On 03/21/2013 03:42 PM, Art Napor wrote: >> > > > Ross, >> > > > >> > > > I rebuilt Xen 4.2.1 with the V5 patch series and the updated helper >> > > > library. The biospt utility built cleanly and runs on Dom0 with the >> > > > aformentioned libraries in place. However, I'm not seeing the SMBIOS >> > > > strings passed through to the DomU (A Centos 5 VM). Options 1 and 3 >> > > > using the biostpt utility appear to dump the SMBIOS and ACPI >> > tables, but >> > > > I'm not sure how to pass the tables in to the VM? >> > > >> > > Look at the related commits to libxl. After the firmware chunks are >> > > given to libxc to load into the new domain, the addresses are returned >> > > to libxl which writes them to xenstore. >> > > >> > > > >> > > > [root@localhost biospt]# ./biospt >> > > > Usage: >> > > > $ biospt >> > > > 1 - Write some SMBIOS tables using MMAP >> > > > 2 - Write some SMBIOS tables using SYSFS >> > > > 3 - Write some ACPI tables using MMAP >> > > > 4 - Write some ACPI using SYSFS >> > > > 5 - Read and trace DMI files >> > > > 6 - Write out some test files >> > > > >> > > > ./biospt 6 >> > > > Make SMBIOS file from FW. >> > > > Fail(1), errno: 2 >> > > >> > > This is a rather rough test app for using the library. You should look >> > > closely at the code in it and figure out what it is doing. It does not >> > > have very robust error handling etc. >> > > >> > > Thanks >> > > Ross >> > > >> > > > >> > > > >> > > > - >> > > > Art >> > > > >> > > > >> > ------------------------------------------------------------------------ >> > > > *From:* Ross Philipson > >> > > >> > > > > >>> >> > > > *To:* xen-devel@lists.xensource.com >> >> > > > >> > > > >> > > >> >> > > > *Cc:* Art Napor >> > >> > >> >>> >> > > > *Sent:* Wednesday, March 20, 2013 4:08 PM >> > > > *Subject:* Re: HVM firmware passthrough - helper library >> > > > >> > > > >> > > > > Ross, >> > > > > >> > > > > Finally got back to this project to test out the helper lib using >> > > the v3 >> > > > > hvm-firmware passthrough patches with Xen 4.2.1. When building from >> > > > > tools/firmware the build failed with the following output: >> > > > > >> > > > > make >> > > > > gcc -Wl,-soname -Wl,libxenhvm.so.1.0 -shared -o libxenhvm.so.1.0.0 >> > > > > xenhvm.opic smbios_module.opic acpi_module.opic xh_internal.opic >> > > > > >> > > > >> > > >> > >> /home/ajn131/rpmbuild/SOURCES/xen-4.2.1/tools/firmware/libhvm/../../../tools/xenstore/libxenstore.so >> > > > > >> > > > > xenhvm.opic: could not read symbols: File in wrong format >> > > > > collect2: ld returned 1 exit status >> > > > > make: *** [libxenhvm.so.1.0.0] Error 1 >> > > > > >> > > > > I was hoping to integrate the build into the RPM. Any thoughts? >> > > Should I >> > > > > try it with the latest 4.3? >> > > > > >> > > > > >> > > > > Thanks Again, >> > > > > >> > > > > - >> > > > > Art >> > > > >> > > > Art, >> > > > >> > > > Can you try the attached tarball. A colleague found and fixed a >> couple >> > > > of issues in my sample including the face that it was including >> in the >> > > > wrong Rules.mk. >> > > > >> > > > Thanks >> > > > Ross >> > > > >> > > > > >> > > >> ------------------------------------------------------------------------ >> > > > > *From:* Ross Philipson > >> > > >> > > > > >> >> > > > >> > > >> >> > >>>> >> > > > > *To:* "xen-devel@lists.xensource.com >> >> > > > >> > > > >> > > >> >> > > > > >> > > > >> > > > >> > > >>>" >> >> > > > >> > > > >> > > >> >> > > > > >> > > > >> > > > >> > > >>>> >> > > > > *Cc:* "Art Napor (artnapor@yahoo.com >> > > >> > >> >> >> > > >> > >> > >> >>>)" >> > > > >> > >> > >> >> >> > > >> > >> > >> >>>> >> > > > > *Sent:* Tuesday, January 8, 2013 5:04 PM >> > > > > *Subject:* HVM firmware passthrough - helper library >> > > > > >> > > > > Attached is a tarball with a helper library for reading host >> ACPI and >> > > > > SMBIOS firmware and creating firmware files that can be used >> with the >> > > > > HVM firmware passthrough patches I submitted. I used it in my >> > > testing of >> > > > > the patches and planned to use it later when we moved to a new Xen >> > > > > version. This library was requested by a few people - I hope you >> > > find it >> > > > > useful. >> > > > > >> > > > > Ross Philipson >> > > > > Senior Software Engineer >> > > > > Citrix Systems, Inc >> > > > > 14 Crosby Drive >> > > > > Bedford, MA 01730 >> > > > > 781-301-7949 >> > > > > ross.philipson@citrix.com >> > >> > >> >> >> > > > > > >> > >> >>> >> > > > >> > > >> >> > >> >> > > > > > >> > >> >>>> >> > > > > >> > > > >> > > > >> > > > >> > > > >> > > > >> > > >> > > >> > > >> > >> > >> > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xen.org > http://lists.xen.org/xen-devel