Resources | developer.brewmp.com Resources | developer.brewmp.com

Developer

resources

Configuring Settings

You can configure the settings found in the Diagnostics window from the Settings tab.

  • Inflate Heap Node: Enlarge each heap node to add owner information (i.e., 64-bit timestamp, context ID, and task ID).
  • Light Owner Info: Enlarge each heap node to add only the 64-bit timestamp, not the context ID and task ID.
  • Enable Stack Walk (For Simulator only):
    • Enable Stack Walk to produce a callstack for the node being debugged when available. The stack walk log files are created in the heap1wrapper module folder and use these filenaming conventions:
      • _OutstandingAllocAtTheMoment_---_.log
      • _InvalidFreesAtTheMoment_Hour>---_.log
    • Disable Enable Stack Walk if the stack walk feature is unavailable. This allows the system to hand over control to the Jtag (i.e., breaks into Jtag).

  • Detecting Heap Corruption
    • Enable Double Free Detection:
      • Total Delayed Free Count: Set to 1 to enable or set to 0 to disable.
      • Enable Free Fill: Set to fill the usable memory with the Free Fill pattern (0xFCFCFC) when a heap node is freed.
    • Crash/Break upon Corruption: Set to allow the device to crash (via data abort) or break (if a debugger such as Trace32 or Visual Studio is connected) when memory corruption is detected. Select Debugger On to turn on debugging.
    • Buffer Overrun or Underrun: Set to insert a fencing pattern before and after the usable memory to catch buffer overrun and underrun.
      • Memory Fence Size (bytes): Set the number of bytes in multiples of 8.
      • Memory Fence Pattern 0x: Set to fill the memory fence with a user-defined pattern.
  • Enable Bucketizer:
    • Keep Default Bucket Size: Use the default bucket sizes:
      • Bucket 1 is 4040 bytes
      • Bucket 2 is 4041 bytes
    • Total Buckets: Set the total number of buckets to use between 1 and 5.
    • Bucket Sizes: Set each bucket size in bytes greater than the previous bucket size.
  • Enable Heap Node Tracking: Tracks the high watermark and heap usage of the kernel heap.
    • Malloc Operation, Realloc Operation, or Free Operation: Set to any combination to track memory allocation based on the type of heap operation.
    • Total Nodes: Set the total nodes to use between 1 and 10.
    • Node Sizes: Set to track memory allocation based on each heap node size in bytes.
    • ClassID mapping: Set to enable ClassID mapping.
    • Total ClassIDs: Set the total number of ClassIDs between 1 and 10.
    • ClassIDs: Specify the individual ClassIDs to track.
  • Set Config: Set configuration items for a target.
  • Get Config: Get existing configuration items from a target.