[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [v8][PATCH 06/16] hvmloader/pci: disable all pci devices conflicting with rdm
>>> On 16.07.15 at 15:48, <tiejun.chen@xxxxxxxxx> wrote: >> Except that this isn't valid C (no statement following the label). I can >> accept goto-s for some error handling cases where the alternatives >> might be considered even more ugly than using goto. But the way >> this or your original proposal look, I'd rather not have goto-s used >> like this. >> > > What about this? Looks reasonable (but don't forget that I continue to be unconvinced that the patch as a whole makes sense). Jan > + bool is_conflict = false; > > for ( devfn = 0; devfn < 256; devfn++ ) > { > @@ -60,7 +61,7 @@ static void disable_conflicting_devices(void) > continue; > > /* Check all bars */ > - for ( bar = 0; bar < 7; bar++ ) > + for ( bar = 0; bar < 7 && !is_conflict; bar++ ) > { > bar_reg = PCI_BASE_ADDRESS_0 + 4*bar; > if ( bar == 6 ) > @@ -89,7 +90,7 @@ static void disable_conflicting_devices(void) > bar_sz = pci_readl(devfn, bar_reg); > bar_sz &= PCI_BASE_ADDRESS_MEM_MASK; > > - for ( i = 0; i < memory_map.nr_map ; i++ ) > + for ( i = 0; i < memory_map.nr_map && !is_conflict; i++ ) > { > if ( memory_map.map[i].type == E820_RESERVED ) > { > @@ -105,13 +106,13 @@ static void disable_conflicting_devices(void) > devfn>>3, devfn&7, bar_reg, bar_data); > cmd = pci_readw(devfn, PCI_COMMAND); > pci_writew(devfn, PCI_COMMAND, ~cmd); > - /* Jump next device. */ > - goto check_next_device; > + /* So need to jump next device. */ > + is_conflict = true; > } > } > } > } > - check_next_device: > + is_conflict = false; > } > } > > Thanks > Tiejun _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |