]> git.saurik.com Git - apple/xnu.git/blobdiff - iokit/Kernel/IOBufferMemoryDescriptor.cpp
xnu-2050.7.9.tar.gz
[apple/xnu.git] / iokit / Kernel / IOBufferMemoryDescriptor.cpp
index 563059600b59c1a31850aaf736144e55bde62402..a56b469ee999d7373044d28e131688e0fad6272b 100644 (file)
@@ -99,6 +99,8 @@ bool IOBufferMemoryDescriptor::initWithPhysicalMask(
        return (false);
     _ranges.v64->address = 0;
     _ranges.v64->length  = 0;
+       //  make sure super::free doesn't dealloc _ranges before super::init
+       _flags = kIOMemoryAsReference;
 
     // Grab IOMD bits from the Buffer MD options
     iomdOptions  |= (options & kIOBufferDescriptorMemoryFlags);
@@ -148,6 +150,10 @@ bool IOBufferMemoryDescriptor::initWithPhysicalMask(
            SET_MAP_MEM(MAP_MEM_COPYBACK, memEntryCacheMode);
            break;
 
+       case kIOMapCopybackInnerCache:
+           SET_MAP_MEM(MAP_MEM_INNERWBACK, memEntryCacheMode);
+           break;
+
        case kIOMapDefaultCache:
        default:
            SET_MAP_MEM(MAP_MEM_NOOP, memEntryCacheMode);