Wind River Support Network

HomeDefectsLIN7-2768
Fixed

LIN7-2768 : When compiling a Linux Kernel on a 4-core x86_64 under heapscope, there are some bogus "unfreed bytes".

Created: Oct 20, 2014    Updated: Sep 8, 2018
Resolved Date: Jan 26, 2015
Previous ID: LIN7-1142
Found In Version: 7.0.0.0.LB20,7.0.0.1
Fix Version: 7.0.0.2
Severity: Standard
Applicable for: Wind River Linux 7
Component/s: Workbench Integration

Description

On a multi-core machine, when launching the Workbench Memory Analyzer while compiling a Linux Kernel under Heapscope control, there are some bogus "unfreed bytes" shown related to make.

These "unfreed bytes" must be bogus, because after the Kernel Compile is finished, all respective processes are terminated. It looks like the termination of some processes is not properly reflected in Workbench, when tcf-agent runs on a multicore machine.

Workaround

Pin the process under test to a specific core by prefacing the 'heapscope' command with 'taskset' as follows:

 taskset -a -c <cpuNum> heapscope -- <path-of-binary> <binary's args>

Where cpuNum is a number from 1 to N, the number of cores on the target.

Alternatively the processor can be run in single core mode, but this is obviously more disruptive.

Steps to Reproduce

1. Create a Platform with glibc_std+self-hosted+analysis --with-package heapscope, and boot it on a 4-core Emerson MATXM board using the local hard disk as file system.
2. Download and extract linux-3.14.22 from kernel.org
3. make menuconfig and exit
4. Launch Workbench Memory Analyzer
5. heapscope -- /usr/bin/make -j 8

Other Downloads


Live chat
Online