mirror of
https://github.com/smxi/inxi.git
synced 2024-11-16 08:11:39 +00:00
Another big one, with a long time to-do item done! /sys based sensors data is
now used as a fallback, with fully revised error messages to handle this new sensor data variant. Due to potential bugs this might create, this was left off of the 3.3.21 release, which needed to go out on a schedule, but there is plenty of time for 3.3.22 to be debugged. -------------------------------------------------------------------------------- KNOWN ISSUES: 1. inxi can't currently handle raw in[0-9] voltage sensor data from /sys/class/hwmon, that may get corrected, but I've honestly never seen a system that shows raw in[0-9] values as field names, so it's probably not very pressing, but it can happen. Similar that is to how default fanx and tempx field names are processed. 2. Currently only checking -Gx, -Nx device temp for bus IDs ending in .0, which is the primary PCI device. I think that's the only one that will have a temp, .1, which is a second device on the same hardware, doesn't have that data in tests. Saves some requests since it's a big glob of /sys. 3. Spiral Linux has no obvious way to determine that it is Spiral and not Debian 11 as base distro. No /etc/ files for distro ID contain anything for spiral, so leaving that one alone. 4. Can't get 100% reliable cpu level > v2 due to it not being a pure cpu flag based test, which is kind of sadly typical for the originators of this idea, but since the choice was dump the feature, or just use the note: check for > v2, opted for note: check. One wants to ask questions here, but honestly I already know the answer so why bother asking the question... The docs for this are awful, inadequate, incomplete. My strong suspicion is that this is NOT intended to be a distro-wide feature beyond v2 support minimum, but rather is for specific compile options for a package or daemon or server or whatever that can benefit from this type of fine-tuning. One thinks of Gentoo for example back when such fine-tunings could actually deliver noticeable differences in performance. A per system type feature that is, not a distro-wide feature. At least that's my initial feeling, but this is probably about all the time I will spend on it since inxi can't get it more accurate anyway. -------------------------------------------------------------------------------- BUGS: 1. Bug in monitor position logic, the horizontal/vertical sorts were being done alphanumerically, leading to absurd results where 800 > 2560 or whatever. Basically all x / y positions less than 1000 would have forced the smaller number to be considered as the greatest value. Another corner case find by mrmazda. Thanks mrmazda! -------------------------------------------------------------------------------- FIXES: 1. Added i350bb sensor to network sensor type. 2. Small glitch with some scenarios with missing fan1 in sensors, showed fan1 0 rpm, but then showed fan 3: empty. That was a slight error in how undefined vs '' empty was treated. 3. Added fix for defective fan speeds, skip fan item if > 15000, which is a bug in the fan speed report, making it useless. Seen 65535 reported RPM. Could probably make it 10000 upper limit but suspect that is a simple bug that creates an absurd value, 2^16 so won't be anything high unless bug active. This fix runs for ipmi, linux, and sysctl fan data. 4. Trying for fix for dynamic gpu voltage, assumed always mV, but might be V. 5. Inadequate or obscure or non-existent redhat/suse documentation led to some fixes for cpu v levels. Note that level v3/v4 can't be fully determined by cpu flag tests, but who cares? Certainly not me. Added 'note: check' for v3/v4. 6. Nvidia device arch id was too loose, false id for non existing lovelace arch. Note that due to array reverse, the newest ids will always run first, which leads to possible false positives with first string match tests when no product IDs are available yet. -------------------------------------------------------------------------------- ENHANCEMENTS: 1. Elbrus CPU arch, process, year, arch data made more complete using new data resource. Thanks Elbrus guys! 2. Finally, raw, basic /sys/class/hwmon temp data. Linux kernel docs note supports temp, fan, volts, amps, energy. But have only seen temps so far. Can force /sys use with --force sensors-sys / --sensors-sys, though there's no point to doing that except to test. Also changed --recommends to note lm-sensors not required for sensor data now. 3. Adding device temp for -Gx, -Nx. Will only work for Linux and when found, and only for free drivers (I think). 4. Added xdriinfo based dri drivers (with fallback to Xorg.0.log as data source, not as accurate), that will show if and only if that driver is not the same name as a detected X or gpu driver. 5. Another big upgrade to cp_cpu_arch, added and corrected many AMD/Intel matches. 6. A few more gpu product ids, Intel, added. 7. More disk vendors, ids, the list, as we are now well aware, is endless, reflecting perhaps the futility of pursuing the infinite using finite means. -------------------------------------------------------------------------------- CHANGES: 1. Slight changes in how inxi supplies no sensor data messages, and in the fallback cases and handling. More accurate and precise, and more robust overall. 2. Due to complexity of understanding level: and the fact not all cpu flags are exposed that are required, moved -Cxx level: to -Ca. 3. Changing slightly inaccurate Sound Server for ALSA/OSS to Sound API, which is the closest I can come to explaining clearly what it is. Note that you can only load one API type audio subsystem/driver, so you will be running one or the other, never both, from what I understand. Since OpenBSD sndio includes sndiod, calling that a sound server is basically fine, since it's both the server and the interface, if I understand it right, and there won't be a second sound server listed, actually won't be for any BSD that I know of, it's going to be sndio or OSS or nothing, unless something has changed. -------------------------------------------------------------------------------- DOCUMENTATION: 1. Man page, updates for /sys/class/hwmon based sensor data. 2. Small update for cpu level v3/v4, added note: check explanation, though it's too hard to really explain this stuff since the docs are... not wonderful, when they even exist and don't contradict each other. -------------------------------------------------------------------------------- CODE: 1. Refined significantly sensors missing data and error messages to be much more accurate and granular. Also enables more sensors tools, though hopefully they won't appear since those are a real pain to implement, but it's more open to being sensor tool agnostic now due to these refinements than before. 2. Added xdpiinfo to debugger. 3. Switched x_drivers to return ref of array of refs, use join for output only, that lets us use the drivers to test dri stuff also (if we want or need to), and keeps it consistent with how most of inxi does that type of data handling/testing. If undef, it means no array ref exists, which makes testing easy. Not truly understanding hash/array refs when inxi rewrite to Perl started is probably one of the bigger causes of glitches and ongoing optimizations. Basically, in all but very small array cases, it's almost always better to start with a ref from the start as soon as the hash/array moves between functions, with one exception, when it's a globally stored data item. Then it depends. But this requires a consistent testing for null data as well, which is harder if you did it in different ways from the start. But slowly and surely chipping away at these.
This commit is contained in:
parent
a87da04d67
commit
b6ac6026f2
85
inxi.1
85
inxi.1
|
@ -15,7 +15,7 @@
|
||||||
.\" with this program; if not, write to the Free Software Foundation, Inc.,
|
.\" with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
.\" 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
.\" 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
.\"
|
.\"
|
||||||
.TH INXI 1 "2022\-08\-06" "inxi" "inxi manual"
|
.TH INXI 1 "2022\-10\-08" "inxi" "inxi manual"
|
||||||
|
|
||||||
.SH NAME
|
.SH NAME
|
||||||
inxi \- Command line system information script for console and IRC
|
inxi \- Command line system information script for console and IRC
|
||||||
|
@ -318,8 +318,9 @@ Deprecated. See \fB\-G \-a\fR.
|
||||||
.B \-G \fR, \fB\-\-graphics\fR
|
.B \-G \fR, \fB\-\-graphics\fR
|
||||||
Show Graphic device(s) information, including details of device and display
|
Show Graphic device(s) information, including details of device and display
|
||||||
drivers (\fBX:\fR \fBloaded:\fR, and, if applicable: \fBunloaded:\fR,
|
drivers (\fBX:\fR \fBloaded:\fR, and, if applicable: \fBunloaded:\fR,
|
||||||
\fBfailed:\fR, and active \fBgpu:\fR drivers), display protocol (if available),
|
\fBfailed:\fR, \fBdri:\fR (if X and different from loaded X drivers) drivers,
|
||||||
display server (and/or Wayland compositor), vendor and version number, e.g.:
|
and active \fBgpu:\fR drivers), display protocol (if available), display server
|
||||||
|
(and/or Wayland compositor), vendor and version number, e.g.:
|
||||||
|
|
||||||
\fBDisplay: x11 server: Xorg v: 1.15.1\fR
|
\fBDisplay: x11 server: Xorg v: 1.15.1\fR
|
||||||
|
|
||||||
|
@ -689,12 +690,18 @@ then shows what package(s) you need to install to add support for each feature.
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-s \fR, \fB\-\-sensors\fR
|
.B \-s \fR, \fB\-\-sensors\fR
|
||||||
Show output from sensors if sensors installed/configured: Motherboard/CPU/GPU
|
Show output from sensors if sensors installed/configured: Motherboard/CPU/GPU
|
||||||
temperatures; detected fan speeds. GPU temperature when available. Nvidia shows
|
temperatures; detected fan speeds. GPU temperature when available. Nvidia shows
|
||||||
screen number for multiple screens. IPMI sensors are also used (root required)
|
screen number for multiple screens. IPMI sensors are also used (root required)
|
||||||
if present. See Advanced options \fB\-\-sensors\-use\fR or
|
if present.
|
||||||
\fB\-\-sensors\-exclude\fR if you want to use only a subset of all sensors, or
|
|
||||||
exclude one.
|
See Advanced options \fB\-\-sensors\-use\fR or \fB\-\-sensors\-exclude\fR if you
|
||||||
|
want to use only a subset of all sensors, or exclude one (currently only for
|
||||||
|
\fBlm\-sensors\fR and \fB/sys\fR sourced data).
|
||||||
|
|
||||||
|
For current Linux, will fallback gracefully to using \fB/sys/class/hwmon\fR as
|
||||||
|
sensor data source if \fBlm\-sensors\fR is not installed. You can compare the
|
||||||
|
two by using \fB\-\-force sensors\-sys\fR option with \fB\-s\fR.
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
.B \-\-slots\fR
|
.B \-\-slots\fR
|
||||||
|
@ -998,7 +1005,6 @@ Konversation etc.
|
||||||
|
|
||||||
Setting a specific color type removes the global color selection.
|
Setting a specific color type removes the global color selection.
|
||||||
|
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-\-indent [11\-xx]\fR
|
.B \-\-indent [11\-xx]\fR
|
||||||
Change primary wide indent width. Generally useless. Only applied if output
|
Change primary wide indent width. Generally useless. Only applied if output
|
||||||
|
@ -1208,7 +1214,7 @@ dds rev version to optical drive.
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-x \-D\fR
|
.B \-x \-D\fR
|
||||||
\- Adds HDD temperature with disk data.
|
\- Adds drive temperature with disk data.
|
||||||
|
|
||||||
Method 1: Systems running Linux kernels ~5.6 and newer should have
|
Method 1: Systems running Linux kernels ~5.6 and newer should have
|
||||||
\fBdrivetemp\fR module data available. If so, drive temps will come from
|
\fBdrivetemp\fR module data available. If so, drive temps will come from
|
||||||
|
@ -1269,6 +1275,8 @@ specific vendor [product] information.
|
||||||
\- \fBX.org:\fR Adds (for single GPU, nvidia driver) screen number that GPU is
|
\- \fBX.org:\fR Adds (for single GPU, nvidia driver) screen number that GPU is
|
||||||
running on.
|
running on.
|
||||||
|
|
||||||
|
\- Adds device temperature for each discrete device (Linux only).
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-x \-i\fR
|
.B \-x \-i\fR
|
||||||
\- Adds IP v6 additional scope data, like Global, Site, Temporary for
|
\- Adds IP v6 additional scope data, like Global, Site, Temporary for
|
||||||
|
@ -1343,6 +1351,8 @@ specific vendor [product] information.
|
||||||
|
|
||||||
\- Adds PCI/USB ID of each device.
|
\- Adds PCI/USB ID of each device.
|
||||||
|
|
||||||
|
\- Adds device temperature for each discrete device (Linux only).
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-x \-o\fR, \fB\-x \-p\fR, \fB\-x \-P\fR
|
.B \-x \-o\fR, \fB\-x \-p\fR, \fB\-x \-P\fR
|
||||||
\- Adds \fBmapper:\fR (the \fB/dev/mapper/\fR partition ID)
|
\- Adds \fBmapper:\fR (the \fB/dev/mapper/\fR partition ID)
|
||||||
|
@ -1363,8 +1373,8 @@ bitmap (if present). Resync line, shows blocks synced/total blocks.
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-x \-s\fR
|
.B \-x \-s\fR
|
||||||
\- Adds basic voltages: 12v, 5v, 3.3v, vbat (\fBipmi\fR, \fBlm-sensors\fR if
|
\- Adds basic voltages: 12v, 5v, 3.3v, vbat (\fBipmi\fR, \fBlm\-sensors /
|
||||||
present).
|
/sys/class/hwmon\fR if present).
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-x \-S\fR
|
.B \-x \-S\fR
|
||||||
|
@ -1402,12 +1412,6 @@ found for each distribution system base detection.
|
||||||
.B \-xx \-B\fR
|
.B \-xx \-B\fR
|
||||||
\- Adds serial number.
|
\- Adds serial number.
|
||||||
|
|
||||||
.TP
|
|
||||||
.B \-xx \-C\fR
|
|
||||||
\- Adds microarchitecture level (v1,v2,v3,v4) (Intel and AMD 64 bit CPUs only).
|
|
||||||
This information is used for setting compile time optimization switches in for
|
|
||||||
example GCC. These levels were introduced in 2020.
|
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-xx \-D\fR
|
.B \-xx \-D\fR
|
||||||
\- Adds disk serial number.
|
\- Adds disk serial number.
|
||||||
|
@ -1825,6 +1829,13 @@ shown).
|
||||||
only will show if Core generation, otherwise the arch value is enough. For AMD,
|
only will show if Core generation, otherwise the arch value is enough. For AMD,
|
||||||
only shows Zen generation.
|
only shows Zen generation.
|
||||||
|
|
||||||
|
\- Adds microarchitecture \fBlevel:\fR (v1,v2,v3,v4) (64 bit Intel/AMD CPUs
|
||||||
|
only). This information is used for setting compile time optimization switches
|
||||||
|
in for example GCC. These levels were introduced in 2020.
|
||||||
|
|
||||||
|
Because this a CPU flag based test, and these levels when > 2 are not always
|
||||||
|
100% based on exposed CPU flags (eg OSXSAVE), for > v2, adds \fBnote: check\fR.
|
||||||
|
|
||||||
\- Adds CPU family, model\-id, and stepping (replaces \fBrev\fR of \fB\-Cx\fR).
|
\- Adds CPU family, model\-id, and stepping (replaces \fBrev\fR of \fB\-Cx\fR).
|
||||||
Format is \fBhexadecimal (decimal)\fR if greater than 9, otherwise
|
Format is \fBhexadecimal (decimal)\fR if greater than 9, otherwise
|
||||||
\fBhexadecimal\fR.
|
\fBhexadecimal\fR.
|
||||||
|
@ -1919,6 +1930,8 @@ differences shown, like \fBcores:\fR, \fBmin/max:\fR, etc.
|
||||||
type: MT MCP MCM SMP
|
type: MT MCP MCM SMP
|
||||||
arch: Zen
|
arch: Zen
|
||||||
gen: 1
|
gen: 1
|
||||||
|
level: v3
|
||||||
|
note: check
|
||||||
process: GF 14nm
|
process: GF 14nm
|
||||||
built: 2017\-19
|
built: 2017\-19
|
||||||
family:0x17 (23)
|
family:0x17 (23)
|
||||||
|
@ -2073,8 +2086,8 @@ Graphics:
|
||||||
active: DVI\-I\-1,VGA\-1 empty: HDMI\-A\-1 bus\-ID: 0a:00.0
|
active: DVI\-I\-1,VGA\-1 empty: HDMI\-A\-1 bus\-ID: 0a:00.0
|
||||||
chip\-ID: 1002:68f9 class\-ID: 0300
|
chip\-ID: 1002:68f9 class\-ID: 0300
|
||||||
Display: x11 server: X.Org v: 1.21.1.3 with: Xwayland v: 22.1.0
|
Display: x11 server: X.Org v: 1.21.1.3 with: Xwayland v: 22.1.0
|
||||||
compositor: xfwm v: 4.16.1 driver: X: loaded: modesetting gpu: radeon
|
compositor: xfwm v: 4.16.1 driver: X: loaded: modesetting dri: r600
|
||||||
display\-ID: :0.0 screens: 1
|
gpu: radeon display\-ID: :0.0 screens: 1
|
||||||
Screen\-1: 0 s-res: 2560x1024 s-dpi: 96 s\-size: 677x270mm (26.65x10.63")
|
Screen\-1: 0 s-res: 2560x1024 s-dpi: 96 s\-size: 677x270mm (26.65x10.63")
|
||||||
s\-diag: 729mm (28.7")
|
s\-diag: 729mm (28.7")
|
||||||
Monitor\-1: DVI\-I\-1 pos: primary,left model: Samsung SyncMaster
|
Monitor\-1: DVI\-I\-1 pos: primary,left model: Samsung SyncMaster
|
||||||
|
@ -2294,7 +2307,7 @@ Shortcut. See \fB\-\-force dmidecode\fR.
|
||||||
Force inxi to use Curl, Fetch, Perl, or Wget for downloads.
|
Force inxi to use Curl, Fetch, Perl, or Wget for downloads.
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-\-force [colors|dmidecode|hddtemp|lsusb|rpm|usb-sys|wayland|vmstat|wmctrl]\fR
|
.B \-\-force [option(s)]\fR
|
||||||
Various force options to allow users to override defaults. Values can be given
|
Various force options to allow users to override defaults. Values can be given
|
||||||
as a comma separated list:
|
as a comma separated list:
|
||||||
|
|
||||||
|
@ -2330,7 +2343,14 @@ For systems that support running rpm along with the primary package installer
|
||||||
if any, installed, so the command runs in those cases (if inxi can determine it
|
if any, installed, so the command runs in those cases (if inxi can determine it
|
||||||
is running in that type of system).
|
is running in that type of system).
|
||||||
|
|
||||||
\- \fBusb-sys\fR \- Forces the USB data generator to use \fB/sys\fR as data
|
\- \fBsensors\-sys\fR \- Force use of \fB/sys/class/hwmon\fR data for sensors
|
||||||
|
(excluding ipmi sensors, which are their own line if present), skip
|
||||||
|
\fBlm\-sensors\fR. Generally useful for testing since sys data is used if no
|
||||||
|
lm\-sensors data was found anyway, but if \fBlm\-sensors\fR was installed, and
|
||||||
|
returned no data, it's most likely if not nearly certain that \fB/sys\fR will
|
||||||
|
also not return data.
|
||||||
|
|
||||||
|
\- \fBusb\-sys\fR \- Forces the USB data generator to use \fB/sys\fR as data
|
||||||
source instead of \fBlsusb\fR (Linux only).
|
source instead of \fBlsusb\fR (Linux only).
|
||||||
|
|
||||||
\- \fBvmstat\fR \- Forces use of vmstat for memory data.
|
\- \fBvmstat\fR \- Forces use of vmstat for memory data.
|
||||||
|
@ -2423,19 +2443,24 @@ on a one time basis.
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-\-sensors\-exclude\fR
|
.B \-\-sensors\-exclude\fR
|
||||||
Similar to \fB\-\-sensors\-use\fR except removes listed sensors from sensor
|
Linux only. Similar to \fB\-\-sensors\-use\fR except removes listed sensors from
|
||||||
data. Make permanent with \fBSENSORS_EXCLUDE\fR configuration item. Note that
|
sensor data. Make permanent with \fBSENSORS_EXCLUDE\fR configuration item. Note
|
||||||
gpu, network, disk, and other specific device monitor chips are excluded by
|
that gpu, network, disk, and other specific device monitor chips are excluded by
|
||||||
default.
|
default.
|
||||||
|
|
||||||
Example: \fBinxi \-sxx \-\-sensors\-exclude k10temp-pci-00c3\fR
|
Example: \fBinxi \-sxx \-\-sensors\-exclude k10temp-pci-00c3\fR
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-sensors\-sys\fR
|
||||||
|
Shortcut. See \fB\-\-force sensors\-sys\fR
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
.B \-\-sensors\-use\fR
|
.B \-\-sensors\-use\fR
|
||||||
Use only the (comma separated) sensor arrays for \fB\-s\fR output. Make
|
Linux only. Use only the (comma separated) sensor arrays for \fB\-s\fR output.
|
||||||
permanent with \fBSENSORS_USE\fR configuration item. Sensor array ID value
|
Make permanent with \fBSENSORS_USE\fR configuration item. Sensor array ID value
|
||||||
must be the exact value shown in lm\-sensors sensors output (Linux/lm-sensors
|
must be the exact value shown in lm\-sensors sensors output (lm-sensors only) or
|
||||||
only). If you only want to exclude one (or more) sensors from the output,
|
use \fB\-s \-\-dbg 18\fR ('main' =>.. section) to see the sensor ID strings used
|
||||||
|
internally. If you only want to exclude one (or more) sensors from the output,
|
||||||
use \fB\-\-sensors\-exclude\fR.
|
use \fB\-\-sensors\-exclude\fR.
|
||||||
|
|
||||||
Can be useful if the default sensor data used by inxi is not from the right
|
Can be useful if the default sensor data used by inxi is not from the right
|
||||||
|
|
168
inxi.changelog
168
inxi.changelog
|
@ -1,3 +1,171 @@
|
||||||
|
================================================================================
|
||||||
|
Version: 3.3.22
|
||||||
|
Patch: 00
|
||||||
|
Date: 2022-10-08
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
RELEASE NOTES:
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
Another big one, with a long time to-do item done! /sys based sensors data is
|
||||||
|
now used as a fallback, with fully revised error messages to handle this new
|
||||||
|
sensor data variant. Due to potential bugs this might create, this was left off
|
||||||
|
of the 3.3.21 release, which needed to go out on a schedule, but there is plenty
|
||||||
|
of time for 3.3.22 to be debugged.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
KNOWN ISSUES:
|
||||||
|
|
||||||
|
1. inxi can't currently handle raw in[0-9] voltage sensor data from
|
||||||
|
/sys/class/hwmon, that may get corrected, but I've honestly never seen a system
|
||||||
|
that shows raw in[0-9] values as field names, so it's probably not very
|
||||||
|
pressing, but it can happen. Similar that is to how default fanx and tempx field
|
||||||
|
names are processed.
|
||||||
|
|
||||||
|
2. Currently only checking -Gx, -Nx device temp for bus IDs ending in .0, which
|
||||||
|
is the primary PCI device. I think that's the only one that will have a temp,
|
||||||
|
.1, which is a second device on the same hardware, doesn't have that data in
|
||||||
|
tests. Saves some requests since it's a big glob of /sys.
|
||||||
|
|
||||||
|
3. Spiral Linux has no obvious way to determine that it is Spiral and not Debian
|
||||||
|
11 as base distro. No /etc/ files for distro ID contain anything for spiral, so
|
||||||
|
leaving that one alone.
|
||||||
|
|
||||||
|
4. Can't get 100% reliable cpu level > v2 due to it not being a pure cpu flag
|
||||||
|
based test, which is kind of sadly typical for the originators of this idea, but
|
||||||
|
since the choice was dump the feature, or just use the note: check for > v2,
|
||||||
|
opted for note: check. One wants to ask questions here, but honestly I already
|
||||||
|
know the answer so why bother asking the question... The docs for this are
|
||||||
|
awful, inadequate, incomplete.
|
||||||
|
|
||||||
|
My strong suspicion is that this is NOT intended to be a distro-wide feature
|
||||||
|
beyond v2 support minimum, but rather is for specific compile options for a
|
||||||
|
package or daemon or server or whatever that can benefit from this type of
|
||||||
|
fine-tuning. One thinks of Gentoo for example back when such fine-tunings could
|
||||||
|
actually deliver noticeable differences in performance. A per system type
|
||||||
|
feature that is, not a distro-wide feature. At least that's my initial feeling,
|
||||||
|
but this is probably about all the time I will spend on it since inxi can't get
|
||||||
|
it more accurate anyway.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
BUGS:
|
||||||
|
|
||||||
|
1. Bug in monitor position logic, the horizontal/vertical sorts were being done
|
||||||
|
alphanumerically, leading to absurd results where 800 > 2560 or whatever.
|
||||||
|
Basically all x / y positions less than 1000 would have forced the smaller
|
||||||
|
number to be considered as the greatest value. Another corner case find by
|
||||||
|
mrmazda. Thanks mrmazda!
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
FIXES:
|
||||||
|
|
||||||
|
1. Added i350bb sensor to network sensor type.
|
||||||
|
|
||||||
|
2. Small glitch with some scenarios with missing fan1 in sensors, showed fan1 0
|
||||||
|
rpm, but then showed fan 3: empty. That was a slight error in how undefined vs
|
||||||
|
'' empty was treated.
|
||||||
|
|
||||||
|
3. Added fix for defective fan speeds, skip fan item if > 15000, which is a bug
|
||||||
|
in the fan speed report, making it useless. Seen 65535 reported RPM. Could
|
||||||
|
probably make it 10000 upper limit but suspect that is a simple bug that creates
|
||||||
|
an absurd value, 2^16 so won't be anything high unless bug active. This fix runs
|
||||||
|
for ipmi, linux, and sysctl fan data.
|
||||||
|
|
||||||
|
4. Trying for fix for dynamic gpu voltage, assumed always mV, but might be V.
|
||||||
|
|
||||||
|
5. Inadequate or obscure or non-existent redhat/suse documentation led to some
|
||||||
|
fixes for cpu v levels. Note that level v3/v4 can't be fully determined by cpu
|
||||||
|
flag tests, but who cares? Certainly not me. Added 'note: check' for v3/v4.
|
||||||
|
|
||||||
|
6. Nvidia device arch id was too loose, false id for non existing lovelace arch.
|
||||||
|
Note that due to array reverse, the newest ids will always run first, which
|
||||||
|
leads to possible false positives with first string match tests when no product
|
||||||
|
IDs are available yet.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
ENHANCEMENTS:
|
||||||
|
|
||||||
|
1. Elbrus CPU arch, process, year, arch data made more complete using new data
|
||||||
|
resource. Thanks Elbrus guys!
|
||||||
|
|
||||||
|
2. Finally, raw, basic /sys/class/hwmon temp data. Linux kernel docs note
|
||||||
|
supports temp, fan, volts, amps, energy. But have only seen temps so far. Can
|
||||||
|
force /sys use with --force sensors-sys / --sensors-sys, though there's no point
|
||||||
|
to doing that except to test.
|
||||||
|
|
||||||
|
Also changed --recommends to note lm-sensors not required for sensor data now.
|
||||||
|
|
||||||
|
3. Adding device temp for -Gx, -Nx. Will only work for Linux and when found, and
|
||||||
|
only for free drivers (I think).
|
||||||
|
|
||||||
|
4. Added xdriinfo based dri drivers (with fallback to Xorg.0.log as data source,
|
||||||
|
not as accurate), that will show if and only if that driver is not the same name
|
||||||
|
as a detected X or gpu driver.
|
||||||
|
|
||||||
|
5. Another big upgrade to cp_cpu_arch, added and corrected many AMD/Intel
|
||||||
|
matches.
|
||||||
|
|
||||||
|
6. A few more gpu product ids, Intel, added.
|
||||||
|
|
||||||
|
7. More disk vendors, ids, the list, as we are now well aware, is endless,
|
||||||
|
reflecting perhaps the futility of pursuing the infinite using finite means.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
CHANGES:
|
||||||
|
|
||||||
|
1. Slight changes in how inxi supplies no sensor data messages, and in the
|
||||||
|
fallback cases and handling. More accurate and precise, and more robust overall.
|
||||||
|
|
||||||
|
2. Due to complexity of understanding level: and the fact not all cpu flags are
|
||||||
|
exposed that are required, moved -Cxx level: to -Ca.
|
||||||
|
|
||||||
|
3. Changing slightly inaccurate Sound Server for ALSA/OSS to Sound API, which is
|
||||||
|
the closest I can come to explaining clearly what it is. Note that you can only
|
||||||
|
load one API type audio subsystem/driver, so you will be running one or the
|
||||||
|
other, never both, from what I understand.
|
||||||
|
|
||||||
|
Since OpenBSD sndio includes sndiod, calling that a sound server is basically
|
||||||
|
fine, since it's both the server and the interface, if I understand it right,
|
||||||
|
and there won't be a second sound server listed, actually won't be for any BSD
|
||||||
|
that I know of, it's going to be sndio or OSS or nothing, unless something has
|
||||||
|
changed.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
DOCUMENTATION:
|
||||||
|
|
||||||
|
1. Man page, updates for /sys/class/hwmon based sensor data.
|
||||||
|
|
||||||
|
2. Small update for cpu level v3/v4, added note: check explanation, though it's
|
||||||
|
too hard to really explain this stuff since the docs are... not wonderful, when
|
||||||
|
they even exist and don't contradict each other.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
CODE:
|
||||||
|
|
||||||
|
1. Refined significantly sensors missing data and error messages to be much more
|
||||||
|
accurate and granular. Also enables more sensors tools, though hopefully they
|
||||||
|
won't appear since those are a real pain to implement, but it's more open to
|
||||||
|
being sensor tool agnostic now due to these refinements than before.
|
||||||
|
|
||||||
|
2. Added xdpiinfo to debugger.
|
||||||
|
|
||||||
|
3. Switched x_drivers to return ref of array of refs, use join for output only,
|
||||||
|
that lets us use the drivers to test dri stuff also (if we want or need to), and
|
||||||
|
keeps it consistent with how most of inxi does that type of data
|
||||||
|
handling/testing. If undef, it means no array ref exists, which makes testing
|
||||||
|
easy.
|
||||||
|
|
||||||
|
Not truly understanding hash/array refs when inxi rewrite to Perl started is
|
||||||
|
probably one of the bigger causes of glitches and ongoing optimizations.
|
||||||
|
Basically, in all but very small array cases, it's almost always better to start
|
||||||
|
with a ref from the start as soon as the hash/array moves between functions,
|
||||||
|
with one exception, when it's a globally stored data item. Then it depends. But
|
||||||
|
this requires a consistent testing for null data as well, which is harder if you
|
||||||
|
did it in different ways from the start. But slowly and surely chipping away at
|
||||||
|
these.
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
-- Harald Hope - Sat, 7 Oct 2022 11:15:12 -0700
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
Version: 3.3.21
|
Version: 3.3.21
|
||||||
Patch: 00
|
Patch: 00
|
||||||
|
|
Loading…
Reference in a new issue