Page MenuHomeFreeBSD

amd64: fix BUS_SPACE_MAXSIZE to 64bit max value.
ClosedPublic

Authored by kib on May 4 2019, 9:55 AM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Apr 30, 9:35 AM
Unknown Object (File)
Mar 13 2024, 5:58 PM
Unknown Object (File)
Feb 21 2024, 7:48 AM
Unknown Object (File)
Jan 18 2024, 6:31 PM
Unknown Object (File)
Jan 14 2024, 5:39 AM
Unknown Object (File)
Dec 25 2023, 1:27 PM
Unknown Object (File)
Dec 20 2023, 12:22 AM
Unknown Object (File)
Dec 13 2023, 4:13 PM
Subscribers

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

I think that 4G value for BUS_SPACE_MAXSIZE still chomped the PCIe max DMA transfers into 4G chunks.

In D20154#434058, @kib wrote:

I think that 4G value for BUS_SPACE_MAXSIZE still chomped the PCIe max DMA transfers into 4G chunks.

I don't see the PCI driver interposing a tag between the driver and the nexus bounce or DMAR drivers. Plus, empirically after I removed the 4GB boundary requirement the ioat(4) driver was able to issue > 4GB requests without segmentation forced on it. Since ioat(4) passes it's own device specific maxsize, it's immune to this change.

This change looks good to me. Thanks for taking care of this!

This revision is now accepted and ready to land.May 4 2019, 11:05 AM
jhb added inline comments.
sys/x86/include/bus.h
116 ↗(On Diff #57031)

I would maybe keep it next to the MAXSIZE_<xx>BIT constants where it was before. That is how the MAXADDR constants are arranged.

This revision was automatically updated to reflect the committed changes.