View | Details | Raw Unified | Return to bug 229278
Collapse All | Expand All

(-)file_not_specified_in_diff (-14 / +12 lines)
Line  Link Here
0
-- hw/xfree86/os-support/bus/linuxPci.c
0
++ hw/xfree86/os-support/bus/linuxPci.c
Lines 550-564 Link Here
550
	return result;
550
	return result;
551
551
552
    if (!pPCI || pPCI->fakeDevice)
552
    if (!pPCI || pPCI->fakeDevice)
553
	return 1;		/* Domain 0 is reserved */
553
	return 0;
554
554
555
    if ((fd = linuxPciOpenFile(pPCI ? pPCI->tag : 0,FALSE)) < 0)
555
    if ((fd = linuxPciOpenFile(pPCI ? pPCI->tag : 0,FALSE)) < 0)
556
	return 0;
556
	return -1;
557
557
558
    if ((result = ioctl(fd, PCIIOC_CONTROLLER, 0)) < 0)
558
    if ((result = ioctl(fd, PCIIOC_CONTROLLER, 0)) < 0)
559
	return 0;
559
	return -1;
560
560
561
    return result + 1;		/* Domain 0 is reserved */
561
    return result;
562
}
562
}
563
563
564
static pointer
564
static pointer
Lines 628-634 Link Here
628
    return NULL;
628
    return NULL;
629
}
629
}
630
630
631
#define MAX_DOMAINS 257
631
#define MAX_DOMAINS 256
632
static pointer DomainMmappedIO[MAX_DOMAINS];
632
static pointer DomainMmappedIO[MAX_DOMAINS];
633
633
634
static int
634
static int
Lines 649-659 Link Here
649
	domain = xf86GetPciDomain(Tag);
649
	domain = xf86GetPciDomain(Tag);
650
	bus = PCI_BUS_NO_DOMAIN(PCI_BUS_FROM_TAG(Tag));
650
	bus = PCI_BUS_NO_DOMAIN(PCI_BUS_FROM_TAG(Tag));
651
651
652
	/* Domain 0 is reserved -- see xf86GetPciDomain() */
652
	if ((domain < 0) || (domain >= MAX_DOMAINS))
653
	if ((domain <= 0) || (domain >= MAX_DOMAINS))
654
	    FatalError("linuxOpenLegacy():  domain out of range\n");
653
	    FatalError("linuxOpenLegacy():  domain out of range\n");
655
654
656
	sprintf(path, PREFIX, domain - 1, bus, name);
655
	sprintf(path, PREFIX, domain, bus, name);
657
	fd = open(path, O_RDWR);
656
	fd = open(path, O_RDWR);
658
	if (fd >= 0) {
657
	if (fd >= 0) {
659
	    xfree(path);
658
	    xfree(path);
Lines 685-691 Link Here
685
xf86MapDomainMemory(int ScreenNum, int Flags, PCITAG Tag,
684
xf86MapDomainMemory(int ScreenNum, int Flags, PCITAG Tag,
686
		    ADDRESS Base, unsigned long Size)
685
		    ADDRESS Base, unsigned long Size)
687
{
686
{
688
    int domain = xf86GetPciDomain(Tag);
689
    int fd;
687
    int fd;
690
    pointer addr;
688
    pointer addr;
691
689
Lines 733-739 Link Here
733
    int domain = xf86GetPciDomain(Tag);
731
    int domain = xf86GetPciDomain(Tag);
734
    int fd;
732
    int fd;
735
733
736
    if ((domain <= 0) || (domain >= MAX_DOMAINS))
734
    if ((domain < 0) || (domain >= MAX_DOMAINS))
737
	FatalError("xf86MapDomainIO():  domain out of range\n");
735
	FatalError("xf86MapDomainIO():  domain out of range\n");
738
736
739
    if (DomainMmappedIO[domain])
737
    if (DomainMmappedIO[domain])
Lines 847-853 Link Here
847
		  RANGE_TYPE(ResExcIoBlock, domain));
845
		  RANGE_TYPE(ResExcIoBlock, domain));
848
	    pRes = xf86AddResToList(pRes, &range, -1);
846
	    pRes = xf86AddResToList(pRes, &range, -1);
849
847
850
	    if (domain <= 0)
848
	    if (domain < 0)
851
		break;
849
		break;
852
	}
850
	}
853
    }
851
    }
Lines 881-887 Link Here
881
		  RANGE_TYPE(ResExcIoBlock, domain));
879
		  RANGE_TYPE(ResExcIoBlock, domain));
882
	    pRes = xf86AddResToList(pRes, &range, -1);
880
	    pRes = xf86AddResToList(pRes, &range, -1);
883
881
884
	    if (domain <= 0)
882
	    if (domain < 0)
885
		break;
883
		break;
886
	}
884
	}
887
    }
885
    }
Lines 933-939 Link Here
933
		  RANGE_TYPE(ResExcIoBlock, domain));
931
		  RANGE_TYPE(ResExcIoBlock, domain));
934
	    pRes = xf86AddResToList(pRes, &range, -1);
932
	    pRes = xf86AddResToList(pRes, &range, -1);
935
933
936
	    if (domain <= 0)
934
	    if (domain < 0)
937
		break;
935
		break;
938
	}
936
	}
939
    }
937
    }

Return to bug 229278