]> git.saurik.com Git - apple/xnu.git/blobdiff - iokit/Kernel/IOCPU.cpp
xnu-792.13.8.tar.gz
[apple/xnu.git] / iokit / Kernel / IOCPU.cpp
index 64b3a283fe4c40a45167ffa12eaa20f5216bc9cd..db5936a5b3b64324443812c04edc296636c761ab 100644 (file)
@@ -229,9 +229,12 @@ bool IOCPU::setProperty(const OSSymbol *aKey, OSObject *anObject)
 
 bool IOCPU::serializeProperties(OSSerialize *serialize) const
 {
-  super::setProperty(gIOCPUStateKey, gIOCPUStateNames[_cpuState]);
-  
-  return super::serializeProperties(serialize);
+       bool result;
+       OSDictionary *dict = dictionaryWithProperties();
+       dict->setObject(gIOCPUStateKey, gIOCPUStateNames[_cpuState]);
+       result = dict->serialize(serialize);
+       dict->release();  
+       return result;
 }
 
 IOReturn IOCPU::setProperties(OSObject *properties)
@@ -394,8 +397,10 @@ void IOCPUInterruptController::setCPUInterruptProperties(IOService *service)
 
 void IOCPUInterruptController::enableCPUInterrupt(IOCPU *cpu)
 {
-  ml_install_interrupt_handler(cpu, cpu->getCPUNumber(), this,
-                               (IOInterruptHandler)&IOCPUInterruptController::handleInterrupt, 0);
+       IOInterruptHandler handler = OSMemberFunctionCast(
+               IOInterruptHandler, this, &IOCPUInterruptController::handleInterrupt);
+
+       ml_install_interrupt_handler(cpu, cpu->getCPUNumber(), this, handler, 0);
   
   enabledCPUs++;