Commit e60a13bc authored by Len Brown's avatar Len Brown
Browse files

tools/power turbostat: Handle non-root legacy-uncore sysfs permissions



/sys/devices/system/cpu/intel_uncore_frequency/package_X_die_Y/
may be readable by all, but
/sys/devices/system/cpu/intel_uncore_frequency/package_X_die_Y/current_freq_khz
may be readable only by root.

Non-root turbostat users see complaints in this scenario.

Fail probe of the interface if we can't read current_freq_khz.

Reported-by: default avatarArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
Original-patch-by: default avatarZhang Rui <rui.zhang@intel.com>
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent 378e9011
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -7002,7 +7002,8 @@ static void probe_intel_uncore_frequency_legacy(void)
			sprintf(path_base, "/sys/devices/system/cpu/intel_uncore_frequency/package_%02d_die_%02d", i,
				j);

			if (access(path_base, R_OK))
			sprintf(path, "%s/current_freq_khz", path_base);
			if (access(path, R_OK))
				continue;

			BIC_PRESENT(BIC_UNCORE_MHZ);