On 05/11/2018 14:58, Christoph Hellwig wrote:
On Fri, Nov 02, 2018 at 04:36:13PM -0700, Nicolin Chen wrote:
What if the pages came from highmem? I know that doesn't happen on arm64
today, but the point of this code *is* to be generic, and other users will
arrive eventually.
Hmm, so it probably should use sg_miter_start/stop() too? Looking
at the flush routine doing in PAGE_SIZE for each iteration, would
be possible to map and memset contiguous pages together? Actually
the flush routine might be also optimized if we can map contiguous
pages.
FYI, I have patches I plan to submit soon that gets rid of the
struct scatterlist use in this code to simplify it:
...and I have some significant objections to that simplification which I
plan to respond with ;)
(namely that it defaults the whole higher-order page allocation business
which will have varying degrees of performance impact on certain cases)
Robin.
_______________________________________________
iommu mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/iommu