[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Re: [RFC, PATCH 5/24] i386 Vmi code patching



Zachary Amsden wrote:
+void __init vmi_init(void)
+{
+       int romsize;
+
+       /*
+        * Setup optional callback functions if we found the VMI ROM
+        */
+       if (hypervisor_found) {
+               romsize = vmi_rom->romLength * 512;
+               if (VROMFunc(vmi_rom, VMI_CALL_Init)) {
+                       printk(KERN_WARNING "VMI ROM failed to initialize\n");
+                       hypervisor_found = 0;
+               } else {
+                       memcpy(&__VMI_START, (char *)vmi_rom, romsize);
+                       scan_builtin_annotations();
+               }
+       }
+ if (!vmi_rom) + printk(KERN_WARNING "VMI ROM not found"
+                      " - falling back to native mode\n");
+       else if (!hypervisor_found)
+               printk(KERN_WARNING "VMI ROM version mismatch "
+                      "(kernel requires version >= %d.%d) "
+                      " - falling back to native mode\n",
+                      VMI_API_REV_MAJOR, MIN_VMI_API_REV_MINOR);
+}
Minor nitpick.

The error logic here is somewhat confusing. If a VMI_CALL_Init results in a failure, you end up with:

 VMI ROM failed to initialize
VMI ROM version mismatch (kernel requires version >= 13.0) - falling back to native mode

The later error is misleading as the version may actually match. The nesting here probably could be simplified to.

Regards,

Anthony Liguori


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.