On 04/22/2013 02:37 PM, Laine Stump wrote: > On 04/22/2013 02:43 PM, Ján Tomko wrote: >> <controller type='pci' index='0' model='pci-root'/> >> is auto-added to pc* machine types. >> Without this controller PCI bus 0 is not available and >> no PCI addresses are assigned by default. >> >> Since older libvirt supported PCI bus 0 even without >> this controller, it is removed from the XML when migrating. >> ---
>> + /* Add implicit PCI root controller if the machine has one */
>> + switch (def->os.arch) {
>> + case VIR_ARCH_I686:
>> + case VIR_ARCH_X86_64:
>> + if (!def->os.machine)
>> + break;
>> + if (STRPREFIX(def->os.machine, "pc-q35") ||
>> + STREQ(def->os.machine, "q35") ||
>> + STREQ(def->os.machine, "isapc"))
>> + break;
>> + if (!STRPREFIX(def->os.machine, "pc-0.") &&
>> + !STRPREFIX(def->os.machine, "pc-1.") &&
>> + !STREQ(def->os.machine, "pc") &&
>> + !STRPREFIX(def->os.machine, "rhel"))
>> + break;
>
>
> If you're going to fall through to a different case like this, you
> should put a comment in the code something like this:
>
> /* FALL THROUGH TO NEXT CASE */
>
> just so people don't have to think too hard :-)
That, and Coverity will ding you on unmarked fallthrough of a non-empty
case label. Coverity recognizes several spellings, but our code base
seems to prefer the spelling "/* fallthrough */" as a form that works
across several static analyzers.
> ACK, with the addition of the "FALLTHROUGH" comment, or restructuring it
> is as I suggested.
Of course, restructuring it means you don't even have to worry about
magic comments :)
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/libvir-list
