Bug 1444934 - iso: ship qemu-ga built from latest qemu release
Summary: iso: ship qemu-ga built from latest qemu release
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Virtualization Tools
Classification: Community
Component: virtio-win
Version: unspecified
Hardware: All
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Yvugenfi@redhat.com
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-04-24 14:57 UTC by Emmanuel Kasper
Modified: 2019-03-28 23:58 UTC (History)
17 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2019-03-28 23:58:28 UTC
Embargoed:


Attachments (Terms of Use)

Description Emmanuel Kasper 2017-04-24 14:57:16 UTC
Windows qemu guest agent as included in the Virtio ISO CD (https://fedoraproject.org/wiki/Windows_Virtio_Drivers) is based on a very old  qemu build (0.12)
 
 Qemu-guest-agent has codes for getting the network interfaces status of of a Windows Qemu guest in 
the function static IP_ADAPTER_ADDRESSES *guest_get_adapters_addresses()

but trying to get this information always fail
socat STDIO UNIX:/var/run/qemu-server/403.qga
{"execute": "guest-network-get-interfaces"}


looking at the ouput of the command
{"execute": "guest-info"}
{
   "supported_commands" : [
      {
         "enabled" : true,
         "name" : "guest-set-user-password"
      },
		....
      {
         "enabled" : true,
         "name" : "guest-sync-delimited"
      }
   ],
   "version" : "0.12.1"
}

it looks the build of the guest agent is based on a quite old qemu version
which maybe did not have this feature.

With a self built Windows Qemu Agent (built from qemu 2.9.0rc5 source) the command works as expected
[
   {
      "hardware-address" : "12:45:30:0b:66:60",
      "ip-addresses" : [
         {
            "ip-address" : "fe80::20cc:3104:9a77:babe%5",
            "ip-address-type" : "ipv6",
            "prefix" : -1
         },
         {
            "ip-address" : "192.168.31.45",
            "ip-address-type" : "ipv4",
            "prefix" : 20
         }
      ],
      "name" : "Ethernet"
   },
   {
      "ip-addresses" : [
         {
            "ip-address" : "::1",
            "ip-address-type" : "ipv6",
            "prefix" : -1
         },
         {
            "ip-address" : "127.0.0.1",
            "ip-address-type" : "ipv4",
            "prefix" : -1
         }
      ],
      "name" : "Loopback Pseudo-Interface 1"
   }
]
Could you consider updating the Windows Qemu Guest Agent build included in the CD ?

Comment 1 Cole Robinson 2017-04-25 15:21:03 UTC
Thanks for the report, I'll try to find a newer build, that looks like rhel6 code

Comment 9 Cole Robinson 2017-04-30 21:38:52 UTC
So apparently we only ship rhel6 vintage qemu-guest-agent as part of RHEL, and since the public virtio-win iso/rpm just distribute those RHEL builds, that's all we've got for now.

But it's been pointed out that we should be able to build qemu-ga for windows with mingw in fedora, so let's repurpose this bug to track something like that

Comment 10 t.lamprecht 2017-07-19 05:34:51 UTC
(In reply to Cole Robinson from comment #9)
> But it's been pointed out that we should be able to build qemu-ga for
> windows with mingw in fedora, so let's repurpose this bug to track something
> like that

Yes building this with mingw under fedora works OK.
But it needs this patch applied:

http://lists.nongnu.org/archive/html/qemu-devel/2017-06/msg00158.html

as the fedora mingw-glib has no libpcre builtin and so it needs to get shipped it with the MSI.
I got a reviewed by but no activity since then, bumping the thread didn't help me either.

Would be really great if this could be picked up again and thus a newer qemu-ga included in the virtio ISO, as it's more trustworthy than an unsigned build from a random guy on the internet :)

Comment 11 t.lamprecht 2017-07-19 05:50:19 UTC
OK, I just saw now that my patch got pulled in yesterday without me noticing (sorry).

So now nothing should be in the way to build this with mingw on fedora.

Comment 13 Sameeh Jubran 2017-08-15 09:25:14 UTC
Hi,

I'm currently in the process of migrating the current downstream qemu-ga to an internal repository for RHEL that is based on qemu-ga upstream from the qemu source tree. Where is the current qemu-ga repository for fedora lies? Do you want to create a new one?

Comment 14 Cole Robinson 2017-08-16 22:37:18 UTC
(In reply to Sameeh Jubran from comment #13)
> Hi,
> 
> I'm currently in the process of migrating the current downstream qemu-ga to
> an internal repository for RHEL that is based on qemu-ga upstream from the
> qemu source tree. Where is the current qemu-ga repository for fedora lies?

linux qemu-ga builds in fedora are built and distributed as part of the qemu package. The packaging repo is at:

  https://src.fedoraproject.org/rpms/qemu/tree/master

(or fedpkg co qemu)

We likely won't have a mingw/windows specific package repo for qemu, and instead just automate generating a windows qemu-ga build from whatever latest qemu bits are in Fedora, it's been on my todo list for a while but who knows when I'll get to it. But in the meantime if you start building newer qemu-ga internally I can publish those in the public virtio-win iso/rpm

Comment 15 Cole Robinson 2019-03-28 23:58:28 UTC
We've been shipping sameeh's qemu-ga builds for a while now which are much closer to upstream, so I'm closing this


Note You need to log in before you can comment on or make changes to this bug.