not1337 / pps-stuff

Linux Pulse Per Second Stuff
18 stars 4 forks source link

Issues running on AMD x64 SoC #1

Open Strykar opened 5 years ago

Strykar commented 5 years ago

I made OpenWRT packages for heatppm and unidled and I'm not a programmer and unsure what processor features these depend on. I've cross-compiled both binaries, however:

root@apu:~# cat /sys/class/hwmon/hwmon1/temp1_input
55250
root@apu:~# cat /sys/class/hwmon/hwmon*/name
fam15h_power
k10temp
root@apu:~# heatppm -t /sys/class/hwmon/hwmon1/temp1_input
sched_setscheduler: Function not implemented

root@apu:~# /usr/sbin/unidled -a -n -d /dev/ttyS2 -f /var/run/unidled.pid
Unable to set realtime priority

root@apu:~# uname -a
Linux apu 4.14.82 #0 SMP Tue Dec 4 11:28:56 2018 x86_64 GNU/Linux

root@apu:~# lscpu
Architecture:        x86_64
CPU op-mode(s):      32-bit, 64-bit
Byte Order:          Little Endian
Address sizes:       40 bits physical, 48 bits virtual
CPU(s):              4
On-line CPU(s) list: 0-3
Thread(s) per core:  1
Core(s) per socket:  4
Socket(s):           1
Vendor ID:           AuthenticAMD
CPU family:          22
Model:               48
Model name:          AMD GX-412TC SOC
Stepping:            1
CPU MHz:             754.889
CPU max MHz:         1000.0000
CPU min MHz:         600.0000
BogoMIPS:            1996.40
Virtualization:      AMD-V
L1d cache:           32K
L1i cache:           32K
L2 cache:            2048K
Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
                         cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx
                         mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good
                         acc_power nopl nonstop_tsc cpuid extd_apicid aperfmperf
                         pni pclmulqdq monitor ssse3 cx16 sse4_1 sse4_2 movbe
                         popcnt aes xsave avx f16c lahf_lm cmp_legacy svm extapic
                         cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs
                         skinit wdt topoext perfctr_nb bpext ptsc perfctr_llc cpb
                         hw_pstate ssbd vmmcall bmi1 xsaveopt arat npt lbrv
                         svm_lock nrip_save tsc_scale flushbyasid decodeassists
                         pausefilter pfthreshold overflow_recov

If it matters, the system's running irqbalance without any options. What's missing here, as Musl (which openwrt uses) has sched_setscheduler?

not1337 commented 5 years ago

I just had a quick look and it seems that musl dosn't implement sched_setscheduler properly. Please see https://github.com/MusicPlayerDaemon/MPD/issues/218 for a discussion and a workaround. Unfortunately due to ongoing health issues I can't work on the code for the forseeable future.

Regards Andreas