MCPcopy Create free account
hub / github.com/coreboot/coreboot / linux_open

Function linux_open

util/msrtool/linux.c:19–48  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

17}
18
19int linux_open(uint8_t cpu, enum SysModes mode) {
20 int fmode;
21 char fn[32];
22 switch (mode) {
23 case SYS_RDWR:
24 fmode = O_RDWR;
25 break;
26 case SYS_WRONLY:
27 fmode = O_WRONLY;
28 break;
29 case SYS_RDONLY:
30 default:
31 fmode = O_RDONLY;
32 break;
33 }
34 if (cpu >= MAX_CORES) {
35 fprintf(stderr, "%s: only cores 0-%d are supported. requested=%d\n", __func__, MAX_CORES, cpu);
36 return 0;
37 }
38 if (snprintf(fn, sizeof(fn), "/dev/cpu/%d/msr", cpu) == -1) {
39 fprintf(stderr, "%s: snprintf: %s\n", __func__, strerror(errno));
40 return 0;
41 }
42 msr_fd[cpu] = open(fn, fmode);
43 if (-1 == msr_fd[cpu]) {
44 fprintf(stderr, "open(%s): %s\n", fn, strerror(errno));
45 return 0;
46 }
47 return 1;
48}
49
50int linux_close(uint8_t cpu) {
51 int ret;

Callers

nothing calls this directly

Calls 3

fprintfFunction · 0.85
strerrorFunction · 0.85
snprintfFunction · 0.50

Tested by

no test coverage detected