Messages in this thread | | | Date | Mon, 2 Mar 2020 16:08:19 +0100 | From | Jiri Olsa <> | Subject | Re: [PATCH v3 6/8] perf/tools: Enhance JSON/metric infrastructure to handle "?" |
| |
On Sat, Feb 29, 2020 at 03:11:57PM +0530, Kajol Jain wrote:
SNIP
> #define PVR_VER(pvr) (((pvr) >> 16) & 0xFFFF) /* Version field */ > #define PVR_REV(pvr) (((pvr) >> 0) & 0xFFFF) /* Revison field */ > > +#define SOCKETS_INFO_FILE_PATH "/devices/hv_24x7/interface/" > + > int > get_cpuid(char *buffer, size_t sz) > { > @@ -44,3 +51,43 @@ get_cpuid_str(struct perf_pmu *pmu __maybe_unused) > > return bufp; > } > + > +int arch_get_runtimeparam(void) > +{ > + int count = 0; > + DIR *dir; > + char path[PATH_MAX]; > + const char *sysfs = sysfs__mountpoint(); > + char filename[] = "sockets"; > + FILE *file; > + char buf[16], *num; > + int data; > + > + if (!sysfs) > + goto out; > + > + snprintf(path, PATH_MAX, > + "%s" SOCKETS_INFO_FILE_PATH, sysfs); > + dir = opendir(path); > + > + if (!dir) > + goto out; > + > + strcat(path, filename); > + file = fopen(path, "r"); > + > + if (!file) > + goto out; > + > + data = fread(buf, 1, sizeof(buf), file); > + > + if (data == 0) > + goto out; > + > + count = strtol(buf, &num, 10); > +out: > + if (!count) > + count = 1; > + > + return count;
we have sysfs__read_ull for this
jirka
| |