int node = NODE_ID(nid); 
struct pci_bus *bus; long node = NODE_ID(nid); /* Algorithm a bit dumb, but it shouldn't matter here */ bus = pci_find_bus(0, j); if (!bus) continue; 
fill_mp_bus_to_cpumask(void){	struct pci_dev *nb_dev = NULL;	int i, j;	u32 ldtbus, nid;	static int lbnr[3] = {		LDT_BUS_NUMBER_REGISTER_0,		LDT_BUS_NUMBER_REGISTER_1,		LDT_BUS_NUMBER_REGISTER_2	};	while ((nb_dev = pci_get_device(PCI_VENDOR_ID_AMD,			PCI_DEVICE_ID_K8HTCONFIG, nb_dev))) {		pci_read_config_dword(nb_dev, NODE_ID_REGISTER, &nid);		for (i = 0; i < NR_LDT_BUS_NUMBER_REGISTERS; i++) {			pci_read_config_dword(nb_dev, lbnr[i], &ldtbus);			/*			 * if there are no busses hanging off of the current			 * ldt link then both the secondary and subordinate			 * bus number fields are set to 0.			 * 			 * RED-PEN			 * This is slightly broken because it assumes 			 * HT node IDs == Linux node ids, which is not always			 * true. However it is probably mostly true.			 */			if (!(SECONDARY_LDT_BUS_NUMBER(ldtbus) == 0				&& SUBORDINATE_LDT_BUS_NUMBER(ldtbus) == 0)) {				for (j = SECONDARY_LDT_BUS_NUMBER(ldtbus);				     j <= SUBORDINATE_LDT_BUS_NUMBER(ldtbus);				     j++) { 					int node = NODE_ID(nid);					if (!node_online(node))						node = 0;					pci_bus_to_node[j] = node;				}					}		}	}	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/69e1a33f62eff9b228a8cc2c3e4429dbee8966c9/k8-bus.c/buggy/arch/x86_64/pci/k8-bus.c