All of lore.kernel.org
 help / color / mirror / Atom feed
From: James Clark <james.clark@arm.com>
To: Jiri Olsa <jolsa@redhat.com>
Cc: linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org,
	Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@redhat.com>,
	Arnaldo Carvalho de Melo <acme@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Namhyung Kim <namhyung@kernel.org>,
	Thomas Richter <tmricht@linux.ibm.com>,
	John Garry <john.garry@huawei.com>
Subject: Re: [PATCH 13/13 v4] perf tools: add thread field
Date: Tue, 17 Nov 2020 16:53:03 +0200	[thread overview]
Message-ID: <c8673aed-4cf6-780b-de96-e6d8987fc3a1@arm.com> (raw)
In-Reply-To: <20201115211714.GA1081385@krava>



On 15/11/2020 23:17, Jiri Olsa wrote:
> On Fri, Nov 13, 2020 at 07:26:54PM +0200, James Clark wrote:
>> A separate field isn't strictly required. The core
>> field could be re-used for thread IDs as a single
>> field was used previously.
>>
>> But separating them will avoid confusion and catch
>> potential errors where core IDs are read as thread
>> IDs and vice versa.
>>
>> Also remove the placeholder id field which is now
>> no longer used.
>>
>> Signed-off-by: James Clark <james.clark@arm.com>
>> Cc: Peter Zijlstra <peterz@infradead.org>
>> Cc: Ingo Molnar <mingo@redhat.com>
>> Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
>> Cc: Mark Rutland <mark.rutland@arm.com>
>> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
>> Cc: Jiri Olsa <jolsa@redhat.com>
>> Cc: Namhyung Kim <namhyung@kernel.org>
>> Cc: Thomas Richter <tmricht@linux.ibm.com>
>> Cc: John Garry <john.garry@huawei.com>
>> ---
>>  tools/perf/tests/topology.c    |  8 ++++----
>>  tools/perf/util/cpumap.c       | 14 +++++++-------
>>  tools/perf/util/cpumap.h       |  2 +-
>>  tools/perf/util/stat-display.c |  8 ++++----
>>  4 files changed, 16 insertions(+), 16 deletions(-)
>>
>> diff --git a/tools/perf/tests/topology.c b/tools/perf/tests/topology.c
>> index 694f786a77f3..2276db0b1b6f 100644
>> --- a/tools/perf/tests/topology.c
>> +++ b/tools/perf/tests/topology.c
>> @@ -119,7 +119,7 @@ static int check_cpu_topology(char *path, struct perf_cpu_map *map)
>>  		TEST_ASSERT_VAL("Core map - Die ID doesn't match",
>>  			session->header.env.cpu[map->map[i]].die_id == id.die);
>>  		TEST_ASSERT_VAL("Core map - Node ID is set", id.node == -1);
>> -		TEST_ASSERT_VAL("Core map - ID is set", id.id == -1);
>> +		TEST_ASSERT_VAL("Core map - Thread is set", id.thread == -1);
>>  	}
>>  
>>  	// Test that die ID contains socket and die
>> @@ -131,7 +131,7 @@ static int check_cpu_topology(char *path, struct perf_cpu_map *map)
>>  		TEST_ASSERT_VAL("Die map - Die ID doesn't match",
>>  			session->header.env.cpu[map->map[i]].die_id == id.die);
>>  		TEST_ASSERT_VAL("Die map - Node ID is set", id.node == -1);
>> -		TEST_ASSERT_VAL("Die map - ID is set", id.id == -1);
>> +		TEST_ASSERT_VAL("Die map - Thread is set", id.thread == -1);
>>  	}
>>  
>>  	// Test that socket ID contains only socket
>> @@ -141,7 +141,7 @@ static int check_cpu_topology(char *path, struct perf_cpu_map *map)
>>  			session->header.env.cpu[map->map[i]].socket_id == id.socket);
>>  		TEST_ASSERT_VAL("Socket map - Node ID is set", id.node == -1);
>>  		TEST_ASSERT_VAL("Socket map - Die ID is set", id.die == -1);
>> -		TEST_ASSERT_VAL("Socket map - ID is set", id.id == -1);
>> +		TEST_ASSERT_VAL("Socket map - Thread is set", id.thread == -1);
>>  	}
>>  
>>  	// Test that node ID contains only node
>> @@ -149,7 +149,7 @@ static int check_cpu_topology(char *path, struct perf_cpu_map *map)
>>  		id = cpu_map__get_node(map, i, NULL);
>>  		TEST_ASSERT_VAL("Node map - Node ID doesn't match",
>>  			cpu__get_node(map->map[i]) == id.node);
>> -		TEST_ASSERT_VAL("Node map - ID shouldn't be set", id.id == -1);
>> +		TEST_ASSERT_VAL("Node map - Thread shouldn't be set", id.thread == -1);
>>  		TEST_ASSERT_VAL("Node map - Die ID is set", id.die == -1);
>>  	}
> 
> should we test all unset parts are -1, like here id.core,
> id.socket and there are missing tests also in above code

Yes I think that's a good idea. I added all the missing ones in V5.

Thanks for the review.

James

> 
> jirka
> 

  reply	other threads:[~2020-11-17 14:53 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-13 17:26 [PATCH 00/13 v4] perf tools: fix perf stat with large socket IDs James Clark
2020-11-13 17:26 ` [PATCH 01/13 v4] perf tools: Improve topology test James Clark
2020-11-13 17:26 ` [PATCH 02/13 v4] perf tools: Use allocator for perf_cpu_map James Clark
2020-11-15 21:17   ` Jiri Olsa
2020-11-17 14:50     ` James Clark
2020-11-13 17:26 ` [PATCH 03/13 v4] perf tools: Add new struct for cpu aggregation James Clark
2020-11-13 17:26 ` [PATCH 04/13 v4] perf tools: Replace aggregation ID with a struct James Clark
2020-11-15 21:17   ` Jiri Olsa
2020-11-17 14:51     ` James Clark
2020-11-13 17:26 ` [PATCH 05/13 v4] perf tools: add new map type for aggregation James Clark
2020-11-13 17:26 ` [PATCH 06/13 v4] perf tools: drop in cpu_aggr_map struct James Clark
2020-11-13 17:26 ` [PATCH 07/13 v4] perf tools: restrict visibility of functions James Clark
2020-11-15 21:17   ` Jiri Olsa
2020-11-17 14:52     ` James Clark
2020-11-13 17:26 ` [PATCH 08/13 v4] perf tools: Start using cpu_aggr_id in map James Clark
2020-11-13 17:26 ` [PATCH 09/13 v4] perf tools: Add separate node member James Clark
2020-11-13 17:26 ` [PATCH 10/13 v4] perf tools: Add separate socket member James Clark
2020-11-13 17:26 ` [PATCH 11/13 v4] perf tools: Add separate die member James Clark
2020-11-13 17:26 ` [PATCH 12/13 v4] perf tools: Add separate core member James Clark
2020-11-13 17:26 ` [PATCH 13/13 v4] perf tools: add thread field James Clark
2020-11-15 21:17   ` Jiri Olsa
2020-11-17 14:53     ` James Clark [this message]
2020-11-15 21:18 ` [PATCH 00/13 v4] perf tools: fix perf stat with large socket IDs Jiri Olsa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c8673aed-4cf6-780b-de96-e6d8987fc3a1@arm.com \
    --to=james.clark@arm.com \
    --cc=acme@kernel.org \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=john.garry@huawei.com \
    --cc=jolsa@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=peterz@infradead.org \
    --cc=tmricht@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.