Gregory Haskins wrote: > Hi kvm-devs, > Been away from the kvm scene for a while...hope everyone is well. > > FYI: There are a few build breakages between kvm-userspace.git HEAD > (f29d402ab885d30bfa7350378cff911c9c17a226) when you compile against > Linus' linux-2.6.git HEAD > (v2.6.29-rc8-041b62374c7fedc11a8a1eeda2868612d3d1436c) > > I am not sure if this is a supported configuration (e.g. perhaps you > only support building kvm-userspace HEAD against Avi's kernel tree?). > But in case this was unintentional, read on... > > First error: > > libkvm.c:702: error: 'struct kvm_irq_level' has no member named > 'status' make[1]: *** [libkvm.o] Error 1 > > Which is attributable to: > > commit ea1b668e7684dc43e9d198ba0b25fe47a0b2acd2 > Author: Gleb Natapov <gleb@xxxxxxxxxx> > Date: Wed Feb 4 17:30:01 2009 +0200 > > kvm: qemu: handle IRQ status injection in userspace > > Reverting this patch does allow the build to get past this error. > Then I hit the next one: > > device-assignment.o: In function `deassign_device': > /home/ghaskins/sandbox/git/fabric/kvm-userspace/qemu/hw/device-assignment.c:562: > undefined reference to `kvm_deassign_pci_device' > > Reverting: > > commit 1435f18213edee9fabf936f5d6be70054f1f2bd1 > Author: Weidong Han <weidong.han@xxxxxxxxx> > Date: Wed Feb 18 14:33:41 2009 +0800 > > kvm: qemu: fix hot remove assigned device > > Followed by: > > commit 71ae34caaa961330f53f40090cd180a74fcda5fc > Author: Weidong Han <weidong.han@xxxxxxxxx> > Date: Wed Feb 18 14:28:30 2009 +0800 > > kvm: qemu: deassign device from guest > > Does fix the build. I realize reversion is probably not the desirable > long term solution, but at least it points to the proper places that > need some backwards-compat love ;) > kvm_deassign_pci_device is defined when KVM_CAP_DEVICE_DEASSIGNMENT is defined. Following patch should fix the breakage. diff --git a/qemu/hw/device-assignment.c b/qemu/hw/device-assignment.c index 7c73210..6765683 100644 --- a/qemu/hw/device-assignment.c +++ b/qemu/hw/device-assignment.c @@ -551,6 +551,7 @@ static int assign_irq(AssignedDevInfo *adev) static void deassign_device(AssignedDevInfo *adev) { +#ifdef KVM_CAP_DEVICE_DEASSIGNMENT struct kvm_assigned_pci_dev assigned_dev_data; AssignedDevice *dev = adev->assigned_dev; int r; @@ -563,6 +564,7 @@ static void deassign_device(AssignedDevInfo *adev) if (r < 0) fprintf(stderr, "Failed to deassign device \"%s\" : %s\n", adev->name, strerror(-r)); +#endif } void remove_assigned_device(AssignedDevInfo *adev) > Regards, > -Greg -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html