Loading...
--- xnu/xnu-3248.50.21/libkern/c++/OSMetaClass.cpp
+++ xnu/xnu-2782.10.72/libkern/c++/OSMetaClass.cpp
@@ -48,9 +48,6 @@
#include <IOKit/IOLib.h>
-#include <IOKit/IOKitDebug.h>
-
-
__BEGIN_DECLS
#include <sys/systm.h>
@@ -67,6 +64,13 @@
/*********************************************************************
* Macros
*********************************************************************/
+#if OSALLOCDEBUG
+extern int debug_container_malloc_size;
+#define ACCUMSIZE(s) do { debug_container_malloc_size += (s); } while (0)
+#else
+#define ACCUMSIZE(s)
+#endif /* OSALLOCDEBUG */
+
__END_DECLS
#if PRAGMA_MARK
@@ -107,12 +111,10 @@
} * sStalled;
IOLock * sStalledClassesLock = NULL;
+
struct ExpansionData {
- OSOrderedSet * instances;
- OSKext * kext;
-#if IOTRACKING
- IOTrackingQueue * tracking;
-#endif
+ OSOrderedSet * instances;
+ OSKext * kext;
};
@@ -391,9 +393,6 @@
reserved = IONew(ExpansionData, 1);
bzero(reserved, sizeof(ExpansionData));
-#if IOTRACKING
- reserved->tracking = IOTrackingQueueAlloc(inClassName, inClassSize, 0, true);
-#endif
/* Hack alert: We are just casting inClassName and storing it in
* an OSString * instance variable. This may be because you can't
@@ -417,7 +416,7 @@
int newSize = oldSize
+ kKModCapacityIncrement * sizeof(OSMetaClass *);
- sStalled->classes = (OSMetaClass **)kalloc_tag(newSize, VM_KERN_MEMORY_OSKEXT);
+ sStalled->classes = (OSMetaClass **)kalloc(newSize);
if (!sStalled->classes) {
sStalled->classes = oldStalled;
sStalled->result = kOSMetaClassNoTempData;
@@ -427,7 +426,7 @@
sStalled->capacity += kKModCapacityIncrement;
memmove(sStalled->classes, oldStalled, oldSize);
kfree(oldStalled, oldSize);
- OSMETA_ACCUMSIZE(((size_t)newSize) - ((size_t)oldSize));
+ ACCUMSIZE(newSize - oldSize);
}
sStalled->classes[sStalled->count++] = this;
@@ -490,10 +489,6 @@
}
}
}
-#if IOTRACKING
- IOTrackingQueueFree(reserved->tracking);
-#endif
- IODelete(reserved, ExpansionData, 1);
}
/*********************************************************************
@@ -538,15 +533,15 @@
IOLockLock(sStalledClassesLock);
assert (sStalled == NULL);
- sStalled = (StalledData *)kalloc_tag(sizeof(* sStalled), VM_KERN_MEMORY_OSKEXT);
+ sStalled = (StalledData *)kalloc(sizeof(* sStalled));
if (sStalled) {
sStalled->classes = (OSMetaClass **)
- kalloc_tag(kKModCapacityIncrement * sizeof(OSMetaClass *), VM_KERN_MEMORY_OSKEXT);
+ kalloc(kKModCapacityIncrement * sizeof(OSMetaClass *));
if (!sStalled->classes) {
kfree(sStalled, sizeof(*sStalled));
return 0;
}
- OSMETA_ACCUMSIZE((kKModCapacityIncrement * sizeof(OSMetaClass *)) +
+ ACCUMSIZE((kKModCapacityIncrement * sizeof(OSMetaClass *)) +
sizeof(*sStalled));
sStalled->result = kOSReturnSuccess;
@@ -715,7 +710,7 @@
OSSafeRelease(myKext);
if (sStalled) {
- OSMETA_ACCUMSIZE(-(sStalled->capacity * sizeof(OSMetaClass *) +
+ ACCUMSIZE(-(sStalled->capacity * sizeof(OSMetaClass *) +
sizeof(*sStalled)));
kfree(sStalled->classes, sStalled->capacity * sizeof(OSMetaClass *));
kfree(sStalled, sizeof(*sStalled));
@@ -1197,61 +1192,3 @@
return;
}
-
-
-/*********************************************************************
-*********************************************************************/
-
-#if IOTRACKING
-
-void *OSMetaClass::trackedNew(size_t size)
-{
- IOTracking * mem;
-
- mem = (typeof(mem)) kalloc_tag_bt(size + sizeof(IOTracking), VM_KERN_MEMORY_LIBKERN);
- assert(mem);
- if (!mem) return (mem);
-
- memset(mem, 0, size + sizeof(IOTracking));
- mem++;
-
- OSIVAR_ACCUMSIZE(size);
-
- return (mem);
-}
-
-void OSMetaClass::trackedDelete(void * instance, size_t size)
-{
- IOTracking * mem = (typeof(mem)) instance; mem--;
-
- kfree(mem, size + sizeof(IOTracking));
- OSIVAR_ACCUMSIZE(-size);
-}
-
-void OSMetaClass::trackedInstance(OSObject * instance) const
-{
- IOTracking * mem = (typeof(mem)) instance; mem--;
-
- return (IOTrackingAdd(reserved->tracking, mem, classSize, false));
-}
-
-void OSMetaClass::trackedFree(OSObject * instance) const
-{
- IOTracking * mem = (typeof(mem)) instance; mem--;
-
- return (IOTrackingRemove(reserved->tracking, mem, classSize));
-}
-
-void OSMetaClass::trackedAccumSize(OSObject * instance, size_t size) const
-{
- IOTracking * mem = (typeof(mem)) instance; mem--;
-
- return (IOTrackingAccumSize(reserved->tracking, mem, size));
-}
-
-IOTrackingQueue * OSMetaClass::getTracking() const
-{
- return (reserved->tracking);
-}
-
-#endif /* IOTRACKING */