[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <tip-3c52b658b8e4fbbf7975932bbdc4798421dbcb15@git.kernel.org>
Date: Thu, 24 Mar 2016 00:37:49 -0700
From: tip-bot for Jakub Jelen <tipbot@...or.com>
To: linux-tip-commits@...r.kernel.org
Cc: peterz@...radead.org, jjelen@...hat.com, tglx@...utronix.de,
hpa@...or.com, jakuje@...il.com, linux-kernel@...r.kernel.org,
alexander.shishkin@...ux.intel.com, acme@...hat.com,
mingo@...nel.org
Subject: [tip:perf/urgent] perf bench numa: Fix assertion for nodes bitfield
Commit-ID: 3c52b658b8e4fbbf7975932bbdc4798421dbcb15
Gitweb: http://git.kernel.org/tip/3c52b658b8e4fbbf7975932bbdc4798421dbcb15
Author: Jakub Jelen <jakuje@...il.com>
AuthorDate: Sat, 19 Mar 2016 12:58:07 +0100
Committer: Arnaldo Carvalho de Melo <acme@...hat.com>
CommitDate: Mon, 21 Mar 2016 17:46:57 -0300
perf bench numa: Fix assertion for nodes bitfield
Comparing bits and bytes in numa benchmark assertion
I hit the issue on two socket Power8 machine presenting its numa nodes
as 0,1,16,17 (according to numactl). Therefore I got error (and hang of
parent process):
perf: bench/numa.c:296: bind_to_memnode: Assertion `!(g->p.nr_nodes > (int)sizeof(nodemask))' failed.
This is obviously false positive. We can fit all the 18 nodes into
bitfield of 8 bytes (long on 64b architecture).
Signed-off-by: Jakub Jelen <jakuje@...il.com>
Cc: Alexander Shishkin <alexander.shishkin@...ux.intel.com>
Cc: Jakub Jelen <jjelen@...hat.com>
Cc: Peter Zijlstra <peterz@...radead.org>
Cc: trivial@...nel.org
Link: http://lkml.kernel.org/r/1458388687-24421-1-git-send-email-jakuje@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@...hat.com>
---
tools/perf/bench/numa.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/perf/bench/numa.c b/tools/perf/bench/numa.c
index 5049d63..7500d95 100644
--- a/tools/perf/bench/numa.c
+++ b/tools/perf/bench/numa.c
@@ -293,7 +293,7 @@ static void bind_to_memnode(int node)
if (node == -1)
return;
- BUG_ON(g->p.nr_nodes > (int)sizeof(nodemask));
+ BUG_ON(g->p.nr_nodes > (int)sizeof(nodemask)*8);
nodemask = 1L << node;
ret = set_mempolicy(MPOL_BIND, &nodemask, sizeof(nodemask)*8);
Powered by blists - more mailing lists