[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH,RFC 5/7] PCI multi-seg: AMD-IOMMU specificadjustments
>>> On 06.09.11 at 13:03, Wei Wang2 <wei.wang2@xxxxxxx> wrote: > On Monday 05 September 2011 15:16:14 Jan Beulich wrote: >> I don't really follow: The two cases where I can't spot where to get the >> segment number from are register_exclusion_range_for_all_devices() >> and register_exclusion_range_for_device(), both called in the context >> of struct acpi_ivmd_block_header(), which only gets a struct >> acpi_ivmd_block_header (not having a segment number afaict). > > OK, now I understand your question. I thought you are question about iommu > specification. For these two functions, I think seg = 0 is fine, since amd > iommu does not support multiple pci segment other than 0. So I'll leave the code unchanged then, also because ... > Also, You could > pass acpi_ivhd_block_header to parse_ivmd_block() in function > parse_ivrs_block(), since both ivhd and ivmd entries shares the same ivhd > header. ... this I cannot make sense of: parse_ivrs_block() casts its input (of type struct acpi_ivrs_block_header *) to either struct acpi_ivhd_block_header * (on which path I'm already using the available segment number) or struct acpi_ivmd_block_header * (which doesn't have a segment number, and which has its start_addr member located at the offset where pci_segment would be in acpi_ivhd_block_header, so casting to both types in a single function invocation is clearly wrong). Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |