Fix temperature reads

Change-Id: Iad5e5201911f620495985591e21fc5aaae028faf
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
This commit is contained in:
Galantsev, Dmitrii
2023-08-31 18:49:50 -05:00
parent f96c7663b5
commit 489991a322
3 changed files with 23 additions and 24 deletions
+11 -9
View File
@@ -40,18 +40,20 @@
* DEALINGS WITH THE SOFTWARE.
*
*/
#include <assert.h>
#include <stdint.h>
#include <unistd.h>
#include "amd_smi/amdsmi.h"
#include <bitset>
#include <iostream>
#include <pwd.h>
#include <sys/stat.h>
#include <string.h>
#include <unistd.h>
#include <bitset>
#include <cassert>
#include <cstdint>
#include <cstring>
#include <iostream>
#include <vector>
#include "amd_smi/amdsmi.h"
#define CHK_AMDSMI_RET(RET) \
{ \
@@ -409,7 +411,7 @@ int main() {
// Get temperature measurements
// amdsmi_temperature_t edge_temp, junction_temp, vram_temp,
// plx_temp;
int64_t temp_measurements[4];
int64_t temp_measurements[TEMPERATURE_TYPE__MAX + 1];
amdsmi_temperature_type_t temp_types[4] = {
TEMPERATURE_TYPE_EDGE, TEMPERATURE_TYPE_JUNCTION,
TEMPERATURE_TYPE_VRAM, TEMPERATURE_TYPE_PLX};
@@ -548,7 +550,7 @@ int main() {
"==+=========================================+\n");
for (int it = 0; it < num; it++) {
char command[30];
struct passwd *pwd = NULL;
struct passwd *pwd = nullptr;
struct stat st;
sprintf(command, "/proc/%d", info_list[it].pid);
+11 -14
View File
@@ -40,17 +40,21 @@
* DEALINGS WITH THE SOFTWARE.
*
*/
#include <assert.h>
#include <stdint.h>
#include <unistd.h>
#include "amd_smi/amdsmi.h"
#include <bitset>
#include <iostream>
#include <pwd.h>
#include <sys/stat.h>
#include <unistd.h>
#include <bitset>
#include <cassert>
#include <cstdint>
#include <cstring>
#include <iostream>
#include <vector>
#include "amd_smi/amdsmi.h"
#define CHK_AMDSMI_RET(RET) \
{ \
if (RET != AMDSMI_STATUS_SUCCESS) { \
@@ -221,7 +225,7 @@ int main() {
.fw_version);
// Get temperature measurements
int64_t temp_measurements[4];
int64_t temp_measurements[TEMPERATURE_TYPE__MAX + 1];
amdsmi_temperature_type_t temp_types[4] = {
TEMPERATURE_TYPE_EDGE, TEMPERATURE_TYPE_JUNCTION,
TEMPERATURE_TYPE_VRAM, TEMPERATURE_TYPE_PLX};
@@ -277,13 +281,6 @@ int main() {
printf("\tCorrectable errors: %lu\n", err_cnt_info.correctable_count);
printf("\tUncorrectable errors: %lu\n\n",
err_cnt_info.uncorrectable_count);
// Get process list
auto compare = [](const void *a, const void *b) -> int {
return (*(amdsmi_proc_info_t *)a).pid >
(*(amdsmi_proc_info_t *)b).pid
? 1
: -1;
};
// Get device name
amdsmi_board_info_t board_info = {};
+1 -1
View File
@@ -674,7 +674,7 @@ amdsmi_get_gpu_asic_info(amdsmi_processor_handle processor_handle, amdsmi_asic_i
else {
uint64_t dv_uid = 0;
status = rsmi_wrapper(rsmi_dev_unique_id_get, processor_handle, &dv_uid);
if (status == AMDSMI_STATUS_SUCCESS) snprintf(info->asic_serial, sizeof(info->asic_serial), "%d", dv_uid);
if (status == AMDSMI_STATUS_SUCCESS) snprintf(info->asic_serial, sizeof(info->asic_serial), "%lu", dv_uid);
status = rsmi_wrapper(rsmi_dev_brand_get, processor_handle,
info->market_name, AMDSMI_NORMAL_STRING_LENGTH);