]> Cypherpunks repositories - gostls13.git/commit
runtime: fix GNU/Linux getproccount if sched_getaffinity does not return a multiple...
authorZhengyu He <hzy@google.com>
Thu, 2 Nov 2017 20:39:14 +0000 (13:39 -0700)
committerIan Lance Taylor <iant@golang.org>
Fri, 3 Nov 2017 01:55:16 +0000 (01:55 +0000)
commiteaf603601bf79216772ba36a9b981f21b50ade96
treeb178d4df62e2a7a92842da1ec9546be020106566
parent923299a6b85d22160dfdacca18f24ac6517ec1de
runtime: fix GNU/Linux getproccount if sched_getaffinity does not return a multiple of 8

The current code can potentially return a smaller processor count on a
linux kernel when its cpumask_size (controlled by both kernel config and
boot parameter) is not a multiple of the pointer size, because
r/sys.PtrSize will be rounded down. Since sched_getaffinity returns the
size in bytes, we can just allocate the buf as a byte array to avoid the
extra calculation with the pointer size and roundups.

Change-Id: I0c21046012b88d8a56b5dd3dde1d158d94f8eea9
Reviewed-on: https://go-review.googlesource.com/75591
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
src/runtime/os_linux.go