mirror of https://gitee.com/openkylin/linux.git
tools/power/x86/intel-speed-select: Fix invalid core mask
The core mask display is wrong in some cases. This is showing more cpus than the mask has. This is because mask is 64 bit but it used with BIT() macro to get the presence of CPU which doesn't support unsigned long long. Added a new macro for BIT_ULL and use that to get the presence of a CPU. Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
This commit is contained in:
parent
e16ea66365
commit
873e391ff3
|
@ -653,7 +653,7 @@ void set_cpu_mask_from_punit_coremask(int cpu, unsigned long long core_mask,
|
|||
pkg_id = get_physical_package_id(cpu);
|
||||
|
||||
for (i = 0; i < 64; ++i) {
|
||||
if (core_mask & BIT(i)) {
|
||||
if (core_mask & BIT_ULL(i)) {
|
||||
int j;
|
||||
|
||||
for (j = 0; j < topo_max_cpus; ++j) {
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
#include <sys/ioctl.h>
|
||||
|
||||
#define BIT(x) (1 << (x))
|
||||
#define BIT_ULL(nr) (1ULL << (nr))
|
||||
#define GENMASK(h, l) (((~0UL) << (l)) & (~0UL >> (sizeof(long) * 8 - 1 - (h))))
|
||||
#define GENMASK_ULL(h, l) \
|
||||
(((~0ULL) << (l)) & (~0ULL >> (sizeof(long long) * 8 - 1 - (h))))
|
||||
|
|
Loading…
Reference in New Issue