]> git.saurik.com Git - apple/xnu.git/blobdiff - iokit/Kernel/IODMACommand.cpp
xnu-1504.3.12.tar.gz
[apple/xnu.git] / iokit / Kernel / IODMACommand.cpp
index 60343290091fb97f00a2f1f49bef339df4e4169f..66c178d5fb6387174a40196963d9dba42602dd60 100644 (file)
@@ -482,7 +482,8 @@ IODMACommand::walkAll(UInt8 op)
 
        if (state->fLocalMapper)
        {
-           state->fLocalMapperPageCount = atop_64(round_page(state->fPreparedLength));
+           state->fLocalMapperPageCount = atop_64(round_page(
+                   state->fPreparedLength + ((state->fPreparedOffset + fMDSummary.fPageAlign) & page_mask)));
            state->fLocalMapperPageAlloc = fMapper->iovmAllocDMACommand(this, state->fLocalMapperPageCount);
            state->fMapContig = true;
        }