GithubHelp home page GithubHelp logo

ablakely / macfand Goto Github PK

View Code? Open in Web Editor NEW
14.0 2.0 3.0 291 KB

Fan control for Macs running Linux

License: MIT License

Shell 8.26% C 71.57% Makefile 3.49% Roff 4.02% Perl 12.67%
apple mac linux linuxonmac fancontrol

macfand's Introduction

Metrics

macfand's People

Contributors

ablakely avatar b- avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

macfand's Issues

Wrong filename in package()

In PKGBUILD in package() the source file name for the installation of macfand.service is wrong.
package() {... install -Dm644 macfand.service "${pkgdir}/usr/lib/systemd/system/macfand.service" ... }
It must be called
package() { ... install -Dm644 macfand.service.gen "${pkgdir}/usr/lib/systemd/system/macfand.service" ... }

Otherwise package() fails with exit code 4

possible fan speed issue on macbookpro11,5

Based on the RPMs being recorded as a large negative value there might be a possible issue. Can I help test?

from systemctl status macfand.service:

Feb 03 16:37:11 Frost macfand[156216]: Fan 1 [CPU & RAM]: 1100 RPM / Target Avg: 50C
Feb 03 16:37:11 Frost macfand[156216]: TC0P = 53C TM0P = 48C
Feb 03 16:37:11 Frost macfand[156216]: Fan 2 [Expansion]: -2147483648 RPM / Target Avg: 49C

Segmentation fault on Macmini7,1

I'm experiencing segfaults on Macmini7,1, which looks like the same issue as #4, running on

$ lsb_release -a
LSB Version:	n/a
Distributor ID:	ManjaroLinux
Description:	Manjaro Linux
Release:	24.0.3
Codename:	Wynsdey

Here's the relevant output:

$ macfand -n
Loading profile for model: macmini7,1
dbug: opening profile /usr/local/macfand/machines//macmini7,1.conf
Found 60 sensors:
	 1: TA0P - ???
	 2: TA0V - ???
	 3: TA0p - Ambient 2
	 4: TA1P - ???
	 5: TA1p - Ambient 1
	 6: TA2P - ???
	 7: TA2p - Ambient 3
	 8: TC0C - ???
	 9: TC0E - ???
	10: TC0F - ???
	11: TC0G - ???
	12: TC0J - ???
	13: TC0P - ???
	14: TC0c - CPU Core 1 PECI
	15: TC0p - CPU Proximity
	16: TC1C - ???
	17: TC1c - CPU Core 2 PECI
	18: TCGC - ???
	19: TCGc - Intel GPU
	20: TCPG - ???
	21: TCSC - ???
	22: TCSc - CPU System Agent Core PECI
	23: TCTD - ???
	24: TCXC - CPU Core
	25: TCXc - ???
	26: TCXr - CPU PECI DTS
	27: TH0A - ???
	28: TH0B - ???
	29: TH0C - ???
	30: TH0F - ???
	31: TH0O - ???
	32: TH0P - ???
	33: TH0R - ???
	34: TH0a - ???
	35: TH0b - ???
	36: TH0c - ???
	37: TH1A - ???
	38: TH1B - ???
	39: TH1C - ???
	40: TH1F - ???
	41: TH1O - ???
	42: TH1P - ???
	43: TH1R - ???
	44: TH1a - ???
	45: TH1b - ???
	46: TH1c - ???
	47: TM0P - ???
	48: TM0V - ???
	49: TM0p - Memory Proximity
	50: TPCD - ???
	51: TPCd - PCH Die Digital
	52: TS0V - ???
	53: TW0P - ???
	54: TW0p - Wi-Fi Proximity
	55: Te0T - ???
	56: Te0t - Thunderbolt Diode
	57: Tm0P - ???
	58: Tm0p - Logic Board
	59: Tp0C - PSU Analog
	60: Ts0G - ???
zsh: segmentation fault (core dumped)  macfand -n

And strace:

$ strace !!
strace macfand -n
execve("/usr/local/bin/macfand", ["macfand", "-n"], 0x7fff6210aeb8 /* 66 vars */) = 0
brk(NULL)                               = 0x5e8300fd7000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=134767, ...}) = 0
mmap(NULL, 134767, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7b6339ef0000
close(3)                                = 0
openat(AT_FDCWD, "/usr/lib/libconfig.so.11", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=55088, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7b6339eee000
mmap(NULL, 57360, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7b6339edf000
mmap(0x7b6339ee3000, 24576, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7b6339ee3000
mmap(0x7b6339ee9000, 12288, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa000) = 0x7b6339ee9000
mmap(0x7b6339eec000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0x7b6339eec000
close(3)                                = 0
openat(AT_FDCWD, "/usr/lib/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=960856, ...}) = 0
mmap(NULL, 958792, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7b6339df4000
mmap(0x7b6339e02000, 524288, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe000) = 0x7b6339e02000
mmap(0x7b6339e82000, 372736, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8e000) = 0x7b6339e82000
mmap(0x7b6339edd000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe9000) = 0x7b6339edd000
close(3)                                = 0
openat(AT_FDCWD, "/usr/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`^\2\0\0\0\0\0"..., 832) = 832
pread64(3, "\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 784, 64) = 784
fstat(3, {st_mode=S_IFREG|0755, st_size=1989944, ...}) = 0
pread64(3, "\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 784, 64) = 784
mmap(NULL, 2014064, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7b6339c08000
mmap(0x7b6339c2c000, 1490944, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x24000) = 0x7b6339c2c000
mmap(0x7b6339d98000, 319488, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x190000) = 0x7b6339d98000
mmap(0x7b6339de6000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1dd000) = 0x7b6339de6000
mmap(0x7b6339dec000, 31600, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7b6339dec000
close(3)                                = 0
mmap(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7b6339c05000
arch_prctl(ARCH_SET_FS, 0x7b6339c05740) = 0
set_tid_address(0x7b6339c05a10)         = 3437
set_robust_list(0x7b6339c05a20, 24)     = 0
rseq(0x7b6339c06060, 0x20, 0, 0x53053053) = 0
mprotect(0x7b6339de6000, 16384, PROT_READ) = 0
mprotect(0x7b6339edd000, 4096, PROT_READ) = 0
mprotect(0x7b6339eec000, 4096, PROT_READ) = 0
mprotect(0x5e82cd257000, 4096, PROT_READ) = 0
mprotect(0x7b6339f49000, 8192, PROT_READ) = 0
prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
munmap(0x7b6339ef0000, 134767)          = 0
getrandom("\x82\x84\x8e\xea\x7b\x2a\xfb\xa6", 8, GRND_NONBLOCK) = 8
brk(NULL)                               = 0x5e8300fd7000
brk(0x5e8300ff8000)                     = 0x5e8300ff8000
rt_sigaction(SIGCHLD, {sa_handler=SIG_IGN, sa_mask=[CHLD], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7b6339c44ae0}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTSTP, {sa_handler=SIG_IGN, sa_mask=[TSTP], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7b6339c44ae0}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTTOU, {sa_handler=SIG_IGN, sa_mask=[TTOU], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7b6339c44ae0}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTTIN, {sa_handler=SIG_IGN, sa_mask=[TTIN], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7b6339c44ae0}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGINT, {sa_handler=0x5e82cd2549b1, sa_mask=[INT], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7b6339c44ae0}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGHUP, {sa_handler=0x5e82cd2549b1, sa_mask=[HUP], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7b6339c44ae0}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTERM, {sa_handler=0x5e82cd2549b1, sa_mask=[TERM], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7b6339c44ae0}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
openat(AT_FDCWD, "/etc/macfand.conf", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=1349, ...}) = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=1349, ...}) = 0
read(3, "# macfand - Fan Control daemon f"..., 8192) = 1349
read(3, "", 4096)                       = 0
read(3, "", 8192)                       = 0
close(3)                                = 0
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x1), ...}) = 0
write(1, "Loading profile for model: macmi"..., 38Loading profile for model: macmini7,1
) = 38
write(1, "dbug: opening profile /usr/local"..., 67dbug: opening profile /usr/local/macfand/machines//macmini7,1.conf
) = 67
openat(AT_FDCWD, "/usr/local/macfand/machines//macmini7,1.conf", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=2563, ...}) = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=2563, ...}) = 0
read(3, "# macmini7,1.conf\n#\n# Machine Na"..., 8192) = 2563
read(3, "", 4096)                       = 0
read(3, "", 8192)                       = 0
close(3)                                = 0
mmap(NULL, 151552, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7b6339be0000
mmap(NULL, 208896, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7b6339bad000
openat(AT_FDCWD, "/sys/class/hwmon", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3
fstat(3, {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
brk(0x5e830101a000)                     = 0x5e830101a000
getdents64(3, 0x5e8300ff1dd0 /* 5 entries */, 32768) = 144
openat(AT_FDCWD, "/sys/class/hwmon/hwmon2/device/name", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/sys/class/hwmon/hwmon0/device/name", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/sys/class/hwmon/hwmon1/device/name", O_RDONLY) = 4
read(4, "applesmc", 8)                  = 8
close(4)                                = 0
readlink("/sys", 0x7ffec19ff200, 1023)  = -1 EINVAL (Invalid argument)
readlink("/sys/class", 0x7ffec19ff200, 1023) = -1 EINVAL (Invalid argument)
readlink("/sys/class/hwmon", 0x7ffec19ff200, 1023) = -1 EINVAL (Invalid argument)
readlink("/sys/class/hwmon/hwmon1", "../../devices/platform/applesmc."..., 1023) = 48
readlink("/sys/devices", 0x7ffec19ff200, 1023) = -1 EINVAL (Invalid argument)
readlink("/sys/devices/platform", 0x7ffec19ff200, 1023) = -1 EINVAL (Invalid argument)
readlink("/sys/devices/platform/applesmc.768", 0x7ffec19ff200, 1023) = -1 EINVAL (Invalid argument)
readlink("/sys/devices/platform/applesmc.768/hwmon", 0x7ffec19ff200, 1023) = -1 EINVAL (Invalid argument)
readlink("/sys/devices/platform/applesmc.768/hwmon/hwmon1", 0x7ffec19ff200, 1023) = -1 EINVAL (Invalid argument)
readlink("/sys/devices/platform/applesmc.768/hwmon/hwmon1/device", "../../../applesmc.768", 1023) = 21
readlink("/sys/devices/platform/applesmc.768", 0x7ffec19ff200, 1023) = -1 EINVAL (Invalid argument)
getdents64(3, 0x5e8300ff1dd0 /* 0 entries */, 32768) = 0
brk(0x5e8301012000)                     = 0x5e8301012000
close(3)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3
fstat(3, {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0
getdents64(3, 0x5e8300ff1dd0 /* 143 entries */, 32768) = 4600
getdents64(3, 0x5e8300ff1dd0 /* 0 entries */, 32768) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp1_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp2_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp3_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp4_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp5_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp6_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp7_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp8_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp9_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp10_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp11_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp12_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp13_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp14_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp15_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp16_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp17_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp18_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp19_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp20_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp21_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp22_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp23_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp24_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp25_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp26_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp27_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp28_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp29_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp30_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp31_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp32_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp33_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp34_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp35_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp36_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp37_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp38_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp39_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp40_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp41_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp42_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp43_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp44_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp45_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp46_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp47_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp48_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp49_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp50_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp51_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp52_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp53_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp54_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp55_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp56_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp57_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp58_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp59_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp60_input", {st_mode=S_IFREG|0444, st_size=4096, ...}, 0) = 0
newfstatat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp61_input", 0x7ffec19fef40, 0) = -1 ENOENT (No such file or directory)
write(1, "Found 60 sensors:\n", 18Found 60 sensors:
)     = 18
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp1_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TA0P\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp2_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TA0V\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp3_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TA0p\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp4_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TA1P\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp5_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TA1p\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp6_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TA2P\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp7_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TA2p\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp8_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TC0C\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp9_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TC0E\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp10_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TC0F\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp11_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TC0G\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp12_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TC0J\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp13_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TC0P\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp14_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TC0c\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp15_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TC0p\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp16_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TC1C\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp17_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TC1c\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp18_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TCGC\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp19_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TCGc\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp20_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TCPG\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp21_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TCSC\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp22_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TCSc\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp23_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TCTD\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp24_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TCXC\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp25_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TCXc\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp26_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TCXr\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp27_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH0A\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp28_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH0B\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp29_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH0C\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp30_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH0F\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp31_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH0O\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp32_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH0P\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp33_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH0R\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp34_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH0a\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp35_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH0b\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp36_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH0c\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp37_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH1A\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp38_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH1B\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp39_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH1C\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp40_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH1F\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp41_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH1O\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp42_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH1P\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp43_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH1R\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp44_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH1a\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp45_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH1b\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp46_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TH1c\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp47_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TM0P\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp48_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TM0V\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp49_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TM0p\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp50_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TPCD\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp51_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TPCd\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp52_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TS0V\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp53_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TW0P\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp54_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "TW0p\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp55_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "Te0T\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp56_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "Te0t\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp57_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "Tm0P\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp58_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "Tm0p\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp59_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "Tp0C\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/devices/platform/applesmc.768/temp60_label", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(4, "Ts0G\n", 4096)                 = 5
read(4, "", 4096)                       = 0
close(4)                                = 0
write(1, "\t 1: TA0P - ???\n", 16	 1: TA0P - ???
)      = 16
write(1, "\t 2: TA0V - ???\n", 16	 2: TA0V - ???
)      = 16
write(1, "\t 3: TA0p - Ambient 2\n", 22	 3: TA0p - Ambient 2
) = 22
write(1, "\t 4: TA1P - ???\n", 16	 4: TA1P - ???
)      = 16
write(1, "\t 5: TA1p - Ambient 1\n", 22	 5: TA1p - Ambient 1
) = 22
write(1, "\t 6: TA2P - ???\n", 16	 6: TA2P - ???
)      = 16
write(1, "\t 7: TA2p - Ambient 3\n", 22	 7: TA2p - Ambient 3
) = 22
write(1, "\t 8: TC0C - ???\n", 16	 8: TC0C - ???
)      = 16
write(1, "\t 9: TC0E - ???\n", 16	 9: TC0E - ???
)      = 16
write(1, "\t10: TC0F - ???\n", 16	10: TC0F - ???
)      = 16
write(1, "\t11: TC0G - ???\n", 16	11: TC0G - ???
)      = 16
write(1, "\t12: TC0J - ???\n", 16	12: TC0J - ???
)      = 16
write(1, "\t13: TC0P - ???\n", 16	13: TC0P - ???
)      = 16
write(1, "\t14: TC0c - CPU Core 1 PECI\n", 28	14: TC0c - CPU Core 1 PECI
) = 28
write(1, "\t15: TC0p - CPU Proximity\n", 26	15: TC0p - CPU Proximity
) = 26
write(1, "\t16: TC1C - ???\n", 16	16: TC1C - ???
)      = 16
write(1, "\t17: TC1c - CPU Core 2 PECI\n", 28	17: TC1c - CPU Core 2 PECI
) = 28
write(1, "\t18: TCGC - ???\n", 16	18: TCGC - ???
)      = 16
write(1, "\t19: TCGc - Intel GPU\n", 22	19: TCGc - Intel GPU
) = 22
write(1, "\t20: TCPG - ???\n", 16	20: TCPG - ???
)      = 16
write(1, "\t21: TCSC - ???\n", 16	21: TCSC - ???
)      = 16
write(1, "\t22: TCSc - CPU System Agent Cor"..., 39	22: TCSc - CPU System Agent Core PECI
) = 39
write(1, "\t23: TCTD - ???\n", 16	23: TCTD - ???
)      = 16
write(1, "\t24: TCXC - CPU Core\n", 21	24: TCXC - CPU Core
) = 21
write(1, "\t25: TCXc - ???\n", 16	25: TCXc - ???
)      = 16
write(1, "\t26: TCXr - CPU PECI DTS\n", 25	26: TCXr - CPU PECI DTS
) = 25
write(1, "\t27: TH0A - ???\n", 16	27: TH0A - ???
)      = 16
write(1, "\t28: TH0B - ???\n", 16	28: TH0B - ???
)      = 16
write(1, "\t29: TH0C - ???\n", 16	29: TH0C - ???
)      = 16
write(1, "\t30: TH0F - ???\n", 16	30: TH0F - ???
)      = 16
write(1, "\t31: TH0O - ???\n", 16	31: TH0O - ???
)      = 16
write(1, "\t32: TH0P - ???\n", 16	32: TH0P - ???
)      = 16
write(1, "\t33: TH0R - ???\n", 16	33: TH0R - ???
)      = 16
write(1, "\t34: TH0a - ???\n", 16	34: TH0a - ???
)      = 16
write(1, "\t35: TH0b - ???\n", 16	35: TH0b - ???
)      = 16
write(1, "\t36: TH0c - ???\n", 16	36: TH0c - ???
)      = 16
write(1, "\t37: TH1A - ???\n", 16	37: TH1A - ???
)      = 16
write(1, "\t38: TH1B - ???\n", 16	38: TH1B - ???
)      = 16
write(1, "\t39: TH1C - ???\n", 16	39: TH1C - ???
)      = 16
write(1, "\t40: TH1F - ???\n", 16	40: TH1F - ???
)      = 16
write(1, "\t41: TH1O - ???\n", 16	41: TH1O - ???
)      = 16
write(1, "\t42: TH1P - ???\n", 16	42: TH1P - ???
)      = 16
write(1, "\t43: TH1R - ???\n", 16	43: TH1R - ???
)      = 16
write(1, "\t44: TH1a - ???\n", 16	44: TH1a - ???
)      = 16
write(1, "\t45: TH1b - ???\n", 16	45: TH1b - ???
)      = 16
write(1, "\t46: TH1c - ???\n", 16	46: TH1c - ???
)      = 16
write(1, "\t47: TM0P - ???\n", 16	47: TM0P - ???
)      = 16
write(1, "\t48: TM0V - ???\n", 16	48: TM0V - ???
)      = 16
write(1, "\t49: TM0p - Memory Proximity\n", 29	49: TM0p - Memory Proximity
) = 29
write(1, "\t50: TPCD - ???\n", 16	50: TPCD - ???
)      = 16
write(1, "\t51: TPCd - PCH Die Digital\n", 28	51: TPCd - PCH Die Digital
) = 28
write(1, "\t52: TS0V - ???\n", 16	52: TS0V - ???
)      = 16
write(1, "\t53: TW0P - ???\n", 16	53: TW0P - ???
)      = 16
write(1, "\t54: TW0p - Wi-Fi Proximity\n", 28	54: TW0p - Wi-Fi Proximity
) = 28
write(1, "\t55: Te0T - ???\n", 16	55: Te0T - ???
)      = 16
write(1, "\t56: Te0t - Thunderbolt Diode\n", 30	56: Te0t - Thunderbolt Diode
) = 30
write(1, "\t57: Tm0P - ???\n", 16	57: Tm0P - ???
)      = 16
write(1, "\t58: Tm0p - Logic Board\n", 24	58: Tm0p - Logic Board
) = 24
write(1, "\t59: Tp0C - PSU Analog\n", 23	59: Tp0C - PSU Analog
) = 23
write(1, "\t60: Ts0G - ???\n", 16	60: Ts0G - ???
)      = 16
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x1} ---
+++ killed by SIGSEGV (core dumped) +++
zsh: segmentation fault (core dumped)  strace macfand -n

`strlcpy` now in glibc

When I try to compile macfand on Arch Linux, I get the following error:

gcc -g3 -std=gnu99 -c -Iinclude -lconfig -lm ./src/config.c   -o ./build/config.o
In file included from ./src/config.c:24:
include/util.h:10:6: error: conflicting types for ‘strlcpy’; have ‘void(char *, const char *, int)’
   10 | void strlcpy(char *to, const char *from, int len);
      |      ^~~~~~~
In file included from ./src/config.c:13:
/usr/include/string.h:506:15: note: previous declaration of ‘strlcpy’ with type ‘size_t(char * restrict,  const char * restrict,  size_t)’ {aka ‘long unsigned int(char * restrict,  const char * restrict,  long unsigned int)’}
  506 | extern size_t strlcpy (char *__restrict __dest,
      |               ^~~~~~~
make: *** [Makefile:24: macfand] Error 1

When I remove the declaration and definition of strlcpy from include/util.h and src/util.c, then it builds.

It appears that strlcpy has been added to glibc only recently, see https://sourceware.org/pipermail/libc-alpha/2023-July/150524.html.

Segmentation fault on MacPro5,1

Running on Proxmox VE (basically Debian bullseye), compiled from source with completely default configuration (apart from #3). I’m running on a MacPro5,1.

Transcript:

# macfand -n
Loading profile for model: macpro5,1
dbug: opening profile /usr/local/macfand/machines//macpro5,1.conf
Segmentation fault

the profile exists and is being read:

# strace !!
strace macfand -n
execve("/usr/local/bin/macfand", ["macfand", "-n"], 0x7ffc65a8c758 /* 21 vars */) = 0
brk(NULL)                               = 0x556b0a696000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=70188, ...}) = 0
mmap(NULL, 70188, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fab6e781000
close(3)                                = 0
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libconfig.so.9", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 /\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=47768, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fab6e77f000
mmap(NULL, 2142976, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fab6e400000
mprotect(0x7fab6e40b000, 2093056, PROT_NONE) = 0
mmap(0x7fab6e60a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa000) = 0x7fab6e60a000
close(3)                                = 0
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\322\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=1321344, ...}) = 0
mmap(NULL, 1323280, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fab6e63b000
mmap(0x7fab6e648000, 630784, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xd000) = 0x7fab6e648000
mmap(0x7fab6e6e2000, 634880, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa7000) = 0x7fab6e6e2000
mmap(0x7fab6e77d000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x141000) = 0x7fab6e77d000
close(3)                                = 0
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@>\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1905632, ...}) = 0
mmap(NULL, 1918592, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fab6e22b000
mmap(0x7fab6e24d000, 1417216, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x22000) = 0x7fab6e24d000
mmap(0x7fab6e3a7000, 323584, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17c000) = 0x7fab6e3a7000
mmap(0x7fab6e3f6000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1ca000) = 0x7fab6e3f6000
mmap(0x7fab6e3fc000, 13952, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fab6e3fc000
close(3)                                = 0
mmap(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fab6e638000
arch_prctl(ARCH_SET_FS, 0x7fab6e638740) = 0
mprotect(0x7fab6e3f6000, 16384, PROT_READ) = 0
mprotect(0x7fab6e77d000, 4096, PROT_READ) = 0
mprotect(0x7fab6e60a000, 4096, PROT_READ) = 0
mprotect(0x556b08d8e000, 4096, PROT_READ) = 0
mprotect(0x7fab6e7bd000, 4096, PROT_READ) = 0
munmap(0x7fab6e781000, 70188)           = 0
brk(NULL)                               = 0x556b0a696000
brk(0x556b0a6b7000)                     = 0x556b0a6b7000
rt_sigaction(SIGCHLD, {sa_handler=SIG_IGN, sa_mask=[CHLD], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7fab6e263d60}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTSTP, {sa_handler=SIG_IGN, sa_mask=[TSTP], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7fab6e263d60}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTTOU, {sa_handler=SIG_IGN, sa_mask=[TTOU], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7fab6e263d60}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTTIN, {sa_handler=SIG_IGN, sa_mask=[TTIN], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7fab6e263d60}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGINT, {sa_handler=0x556b08d8c491, sa_mask=[INT], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7fab6e263d60}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGHUP, {sa_handler=0x556b08d8c491, sa_mask=[HUP], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7fab6e263d60}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTERM, {sa_handler=0x556b08d8c491, sa_mask=[TERM], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7fab6e263d60}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
openat(AT_FDCWD, "/etc/macfand.conf", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=1348, ...}) = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=1348, ...}) = 0
read(3, "# macfand - Fan Control daemon f"..., 8192) = 1348
read(3, "", 4096)                       = 0
read(3, "", 8192)                       = 0
close(3)                                = 0
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0), ...}) = 0
write(1, "Loading profile for model: macpr"..., 37Loading profile for model: macpro5,1
) = 37
write(1, "dbug: opening profile /usr/local"..., 66dbug: opening profile /usr/local/macfand/machines//macpro5,1.conf
) = 66
openat(AT_FDCWD, "/usr/local/macfand/machines//macpro5,1.conf", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=8003, ...}) = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=8003, ...}) = 0
read(3, "# macpro5,1.conf\n#\n# Machine Nam"..., 8192) = 8003
read(3, "", 4096)                       = 0
brk(0x556b0a6d8000)                     = 0x556b0a6d8000
read(3, "", 8192)                       = 0
close(3)                                = 0
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x1} ---
+++ killed by SIGSEGV +++
Segmentation fault

Make install error

When running the make command for release 1.1b on my Mac mini 2011 running Ubuntu 22.04 LTS, I get the following output:

$ sudo make install
mkdir -p /usr/local/bin
cp macfand /usr/local/bin/
cp: cannot stat 'macfand': No such file or directory
make: *** [Makefile:39: install] Error 1

it looks like there's potentially a typo somewhere in the Makefile or is there something I should be doing differently?

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.