summaryrefslogtreecommitdiff
path: root/components/cpu.c
AgeCommit message (Collapse)Author
2018-07-08Consistency with 80 char limit and breaksAaron Marcher
2018-07-07Simplify format specifiers for uintmax_tAaron Marcher
2018-07-07cpu_freq: Simplify with E-notationAaron Marcher
Thanks to the FRIGN
2018-07-07cpu_freq: Change to 64 bit integersAaron Marcher
Remove unnecessary cast to size_t
2018-07-07Change uint64_t to uintmax_tAaron Marcher
2018-07-07cpu: Use uint64_t on OpenBSDAaron Marcher
2018-05-30Clean up header includesAaron Marcher
- Remove <errno.h> because related functions are in util.c now - Remove corresponding <string.h> if not used otherwise
2018-05-21Merge fmt_human_2 and fmt_human_10 to one functionAaron Marcher
Now only one function, fmt_human, takes an additional argument "base".
2018-05-21Remove units from numbersAaron Marcher
This is a first step to decouple formatting from information because of two reasons: 1. The components should only gather and return the values by design 2. Fine grained user control should be a focus Scaling will be implemented in a different way in a later commit.
2018-05-20Remove unnecessary "valid" variable in cpu_percAaron Marcher
2018-05-19Implement scaling for cpu_freqAaron Marcher
2018-05-19Add the percent sign to *_perc functionsAaron Marcher
Units should be added to the corresponding numbers
2018-05-18Use %d instead of accidentally %iAaron Marcher
2018-05-18Add warn() and die()Laslo Hunhold
Given slstatus is a tool that runs in the background, most likely run from .xinitrc, it's important to prepend the name of the tool to error messages so it becomes clear where the error is coming from. To make this much more consistent, this commit adds warn() and die() utility functions consistent with other suckless projects and adapts all calls to fprintf(stderr, *) to the warn() and die() functions, greatly increasing the readability of the code.
2018-05-14Cast CPU percentage to int and fix indenationAaron Marcher
2018-05-07cpu: Simplify functionsAaron Marcher
2018-05-06Fix coding styleAaron Marcher
- Use block for single statement ifs - Keep lines to reasonable length (current debate as to reasonable) - When functions return -1 for error test against 0 not -1 - Do not indent cases another level - Do not test against NULL and 0 explicitly - Use tabs for indentation, use spaces for alignment
2018-05-06Remove cpu_iowaitAaron Marcher
The third value from load_avg (idle) gives us almost the same information as cpu_iowait. Plus OpenBSD does not offer an iowait value as Linux and thus the corresponding function would not be portable.
2018-05-06cpu_perc: Documentation and readbility improvementsAaron Marcher
2018-05-06cpu_perc: Port to OpenBSDAaron Marcher
In OpenBSD the CPU usage in percent is now computed using KERN_CPTIME sysctl.
2018-05-01Use indentation to increase readabilityLaslo Hunhold
Granted, this style is definitely not common, but for the short utility-functions of this program it's just the right choice. This provides great flexibility, such that in the long run, it will be possible to also share code between the OS-implementations. This also keeps the state-keeping at a minimum and makes it clearer which functions are implemented on which OS without having to jiggle around with too many files in the process.
2018-05-01Revert component-splitLaslo Hunhold
this reverts the commits from 92ab9ef52ebcb097add97d9f78e67ad1c1d6a6ec up to d42870d6ca7fb587b38f8cf6d6821ae33a53a696. After heavy consideration, the component split has more disadvantages than advantages, especially given there will be utility-functions sharing quite a lot of code that would then need to be duplicated, as it does not fit into the util.c due to its speciality. One big advantage of the component-wise build is readability, and without doubt, this was achieved here. This point will be addressed with a different approach that will be visible in the upcoming commits. One big disadvantage of the component build is the fact that it introduces state to the build process which is not necessary. Before its introduction, the only influencing factors where the system-defines __linux__ and __OpenBSD__. With the components, we are also relying on the output of uname(1). Additionally, if the os.mk is not present, make gives the output $ make Makefile:5: os.mk: No such file or directory make: *** No rule to make target 'os.mk'. Stop. This could easily be fixed by providing some sort of meta-rule for this file, however, it indicates the problem we have here, and this entire statefulness will heavily complicate packaging of this tool and makes the build process much more complex than it actually has to be.
2018-04-30cpu: OS splitQuentin Rameau
2018-04-30cpu_freq: Port to OpenBSDAaron Marcher
In OpenBSD CPU frequency gets fetched using sysctl now.
2018-03-21More robust preprocessor switchesAaron Marcher
Replace #ifdef with #if defined() and #elif with #elif defined() as it should only test if it is defined or not.
2018-03-18Build Linux-only functions only on LinuxAaron Marcher
2017-09-24Move components into dedicated subdirectoryLaslo Hunhold
This brings us a lot more tidiness.