diff options
Diffstat (limited to 'inxi.changelog')
| -rw-r--r-- | inxi.changelog | 689 |
1 files changed, 689 insertions, 0 deletions
diff --git a/inxi.changelog b/inxi.changelog index 46360eb..f4f8f5b 100644 --- a/inxi.changelog +++ b/inxi.changelog @@ -1,4 +1,693 @@ ================================================================================ +Version: 3.3.10 +Patch: 01 +Date: 2021-12-13 +-------------------------------------------------------------------------------- +RELEASE NOTES: +-------------------------------------------------------------------------------- + +Huge refactor of CPU physical/core/cache logic. That was some very old logic +with a lot of hacks and patches, but it had never been actually rewritten to +take advantage of Perl's far more powerful and robust data structures and logic. +This caused a continuous stream of error cases in subtle ways, or not so subtle, +and fixes were just changing how the errors manifested. + +Tnanks very much to linuxquestions.org Slackware forum people for massive help, +and also to linux.org forum members for ongoing help and data and debugging. + +Note Changes 5, change of default widths in display to 80 columns, and out (aka, +console, or ssh into remote system), 100. You can still use other widths if you +like something wider using the configuration options shown. Also upped max +columns wrapping line starters to own rows to 110 columns from 90, again the +idea being to make output more readable to other users when posted in public. + +I've been thinking of this change for a long time, but was hoping -y would +register with users, but it hasn't gained enough traction, so the result is way +too many super hard to read issue reports, forum posts, linux kernel issues, +etc, it's honestly gotten sort of embarrassing because they make it look like +inxi has bad output. Sidescrolling code blocks in forums in particular are +absurdly hard to read and scan rapidly for data. + +Going along with the width and indentation changes, for most main row types, if +they wrap to a second row, they are further indented 2 column2, to make it +easier to see what they belong to. The two levels of indentation contain more +useful visual cues as to what belongs to what. + +There was a temptation to release this as either 3.4.00 or 4.0.00 but in the +end, I decided to follow the numbering rules, and to just roll it to 3.3.10 +since there aren't really any primary new features even though CPU was basically +rewritten in large part, and big parts of inxi were also changed, upgraded, and +enhanced. But no truly new features, just some display control items like -Y, +--indent, --indents. + +I hope this refactor meets its primary goals, and that the new defaults for +display help resolve public posting issues which have grown increasingly +annoying for anyone trying to read those pasted in too long outputs. + +-------------------------------------------------------------------------------- +KNOWN ISSUES: + +1. Android seems to have CPU cache data, but does not show any 'size' item. But +it does have the other data for each cache type internally, which is odd. + +2. In some instances, the parent key:value pairs with '' as value, those are +parents of children key:value pairs, are left hanging at end of line, with the +children on the following line. This can look awkward, but in other cases, +actually looks very good, it depends if it's at the start or end of the line. + +I won't say this is not correctable, but it would be very difficult, and outside +the scope of this release, but that is something that I may look at for a future +release now that the output generator logic was reworked slightly for Change 5b. + +It's tricky though, because in cases where it's the first item on the line, you +want that behavior, but when it's last, you don't. But this may be worth +revisiting in the future. + +3. In some cases, -Y + -y1 may lead to the start of the block scrolling off the +top of the visible screen. This isn't really correctable, so if that's an issue +for you, just don't use -y1 with -Y and all the output will wrap nicely. + +4. There is an unaccountable ~10-20ms delay reading cpufreq/scaling_cur_freq, +per thread/core, which really adds up on high thread count CPUs. There is a +workaround in inxi to use cpufreq_cur_freq if it is readable, ie, if you are +root or use sudo, but to fallback to scaling_cur_freq if can't read cpuinfo_... + +This is a drag, and really looks like a kernel bug, or a frequency driver bug. + +-------------------------------------------------------------------------------- +BUGS: + +1. 3.3.09 and 3.3.10 CPU bug fixes: +* Failed to filter out certain virtual machine CPU core speeds, and showed more +speeds than the instance actually has. Noticed this with KVM running on Xeon +CPUs. +* For many cases, L2 cache, particularly for Intel, was completely wrong, it was +showing L3 caches, or L3+L2. Failed to handle cases where L2 cache belongs to +more than 1 core, except for using a crude hack for AMD Bulldozer microarch. +Older Intel Core 4 core CPUs would sometimes be 1 L2 per die, and the 4 cores +were actually 2 core duo cpu dies, with one L2 cache per die. +* Shows wrong core count for complex core complexes like those found in Intel +Alder Lake, now shows correct count of actual cores, regardless of the MT or ST +state of each core. +* Showed invalid L3 cache values in some legacy cpus that had no L3 cache, that +is due to a bug in the dmidecode data itself. Solution is to never use dmidecode +cache data if any other valid L1, L2, or L3 cache data found for Linux, and to +only use dmidecode data for bsds if no L1, or L2, or L3 data found. Or if forced +with --dmidecode. + +2. An unfortunately long standing bug found and fixed, thanks slackware users! +cp_cpu_arch was, and has been for a while, failing to convert hex stepping to +decimal, or test if the string it gets is even a possible hex value, this +resulted in all Intel CPUs with stepping > 9 failing to ID correctly for cpu +arch. + +3. In a related bug, hex to decimal tool used to create --admin hex/decimal +output for family/model/stepping was also not testing if the string was an +actual valid hex number. Case in particular, power pc with revision field +contained a long string, which was of course not a valid hex number, and that +tripped a Perl error when it was asked to convert a non hex string to decimal. + +4. Long standing bug found while doing Change 5: inxi actually never applied +separate in/out of dispay to widths because using a legacy boolean that was not +updated, so it was always using out of display widths. + +-------------------------------------------------------------------------------- +FIXES: + +1. Incorrectly calling PowerPC 'revision' 'stepping' for -Ca, that is now stored +as $cpu{'revision'} to avoid mixing up the logics there. For PowerPC shows as +rev: [string]. + +2. Microarch: +* AMD family 15, model 2 as bulldozer, actually piledriver. +* AMD family 17, model 18, was supposed to be zen/zen+, since I can't tell those +apart, seen stepping 1 is zen+, but had incorrect match. +* Intel family 6, model 25, stepping 2 as nehalem, should have been westmere. +* Changed Penryn to Core Penryn, intel family 6, model 17 +* misc other micro arch fine tunings. + +3. Code fix 8, switched to global %risc for arm, mips, ppc, riscv, sparc. This +corrects many sloppy handlers, and makes all risc processing the same, and calls +device tree readers for all risc systems, not just arm or arm and mips. + +4. In cases where bogomips were 0 due to false values in risc results, show N/A. + +5. Removed all attempts to guess at what /proc/cpuinfo cache size: refers to, +it can literally be anything, a per core L1, a per core or cpu L2, or an L3. +So applying any math to it is just a random guess at that point. If any L1,2,3 +cache data is found, don't use the cache: value at all, but that will only be +present if no /sys data was found anyway, and if cpuinfo had no specific cache +type fields, only generic cache. + +6. Added failsafe tests for stepping and model id before doing conversion to +hex. Make sure integer! + +7. Added L1 D cache, was only using I cache for BSDs. Output will show total for +L1 A + L1 D. No idea why I didn't use L1 D, makes little sense, but that's how +it goes. + +8. Made bogomips tests more granular, now only rejects low sub 50 bogomips +values if %risc cpu type. Legacy ancient cpus like 486 could and did have +bogomip counts below 50. +https://tldp.org/HOWTO/BogoMips/bogo-list.html + +9. See Enhancement 12 as well. If OpenBSD, which has no per core data or +physical cpu data, is running on MT capable cpu, but for security OpenBSD has +disabled MT, will now force MT to be not shown via the hw.smt value. This +removes a small glitch that would have bothered OpenBSD users who know that +OpenBSD has disabled MT for security purposes. + +10. Changed BSD hack to use L2 cache totals to deduce > 1 physical cpus, that +was flat out dumb, since we can just use dmidecode type 4 to iterate physical +cpu counts and skip the pointless logic. Thus, if dmidecode, and if > 1 +dmidecode type 4 found, and if physical cpu counts equal 1, then replace the +found counts with the dmidecode physical cpu counts. + +11. Corrected bad assumption that threads would always be 2 per core for MT +tests. Still no way to reliably determine threads per core for non x86 cpus like +powerpc however, but those are very fringe and should rarely be an issue since +that data is only missing on very old linux now I think. + +12. Fixed 'parameters:' going to its own line with -Sa, that wasn't supposed to. +-S is two lines, the kernel / host stuff, and the desktop/console/distro stuff. + +13. Fixed case when key: value first word plus other parts of line longer than +max width, failed to wrap as expected. + +14. Added start/end ' and " start / end \s to main filters. + +-------------------------------------------------------------------------------- +ENHANCEMENTS: + +1. CPU: most Linux will now show L1 and L3 cache with -Cx without needing +sudo/root, and it will be more accurate than ever before. + +2. CPU: shows per CPU L1/L2/L3 totals, and shows actual full system physical +processor count * L1/L2/L3 total in parentheses, like: L2: 1.5 MiB (3 MiB). + +3. CPU: A long standing annoyance, previously for main CPU 'Speed:' item, showed +the fastest core speed found, now shows avg: [speed] and with -Cx, shows the +'high:' as well if > 1 cores, and if 1 or more cores have a higher speed than +the other(s). + +4. CPU: Handles advanced cases of new architectures, like Alder Lake with +Performance and Efficiency cores, future Zen, and existing ARM CPUs with 2 or +more different core sets, with different max/min frequencies. Previously a hack +was used to handle only ARM CPUs with this type of architecture. Will show +correct CPU core counts, which previous inxi versions would fail to do for Alder +Lake type scenarios of 8 single threaded CPUs and 4-8 multithreaded )MT) +perforance cores. + +This should also in theory show different the different min/max speeds if they +were detected. Those did not seem to be set correctly in Alder Lake sample data +I saw however, P and E cores were set to the same min/max speeds. + +5. Added CPU types MST (Multi+Single Thread), AMP (Asymmetric Multi Processing), +and AMCP (Asymmetrical Multi Core Processor). This will be applied to any CPU +that has this type of complex topology that has been dynamically detected, like +Alder Lake or different core count or min/max speed RISC CPUs. + +6. CPU: shows with -Ca for cases where different L1/L2/L3 caches found per +physical CPU, as with Alder Lake, but also many other variants that were poorly +or not at all handled before, how many of each cache type (L1 Data, instruction) +were found, otherwise will show how many of each cache were found. + +7. CPU: shows with -Ca in Topology: report, for cases like Alder Lake with +different core types in one physical CPU (type: MST AMCP), the number that are +single threaded (st) and number that are multi-threaded (mt). + +8. Basic support for rsyc-v systems, going along with code fix 8, fix 3, now +it's easy to add this type of support. + +9. Added shortcut options for --filter-label (--zl), --filter-uuid (--zu), and +andded new filter option, --filter-vulnerabilities (--zv). The latter is added +by request, a decent idea to have option to not show cpu vulnerabilities. + +10. Going with fix 7, switched to a sort of pseudo L1 d/i with desc report for +any BSD with L1 I/D cache found, or elbrus cache0 (icache) / cache1 (d cache). +Elbrus should hopefully be handled by the /sys tool. Guesses on the L1 are ok, +since those are almost always per core, so it's fine. Didn't expect to enhance +any BSD cpu data this time around, but there you go!! If they have the data, +then it will be used. Not going to go overboard though in that, quite useless +overall since usually can't see how many CPUs are present, at least not usually. + +11. For -Ca, full CPU topology report if any complex topogy is detected, +otherwise shows the same basic Info: 2x 6-core or Info: dual core as before, no +point in wasting a line for something with no more data than the short string. +Complex types include MT CPUs since they will have different thread counts etc, +and will have 2 or more threads per core, which will also be listed. + +12. If smt status is defined (0/1), shows smt: enabled|disabled in Topology +section, can be useful for systems with disabled MT, but supporting it. If no +topology data found (OpenBSD for example), for -C shows 'smt: disabled' after +'type:' section, and enabled if -Cxxx (since MT really already tells you that). + +13. For -Ca Speed: report, added 'governor:' item, if found. Can show 1 or more +active governors. + +14. Output height (in lines) control: -Y [-2|-1|0|1-xxx]]. This lets you break +up any of the output into whatever number of lines you want. Also useful out of +DISPLAY for reading -h options menu items etc. + +It came tp my attention that the long standing shift+pgup/pgdown (aka +'softscrollback) behavior had stopped working, and in fact has been removed from +the current Linux kernel, at least until it is rewritten to be more clean and +understandable. Read more about it in these kernel post/commit messages: + +https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=50145474f6ef4a9c19205b173da6264a644c7489 +https://lwn.net/ml/linux-kernel/CAHk-=whe4ZdTdCebneWqC4gSQZwsVJ5-Emg0BucOGCwPhOAJpw@mail.gmail.com/ + +Options for -Y are: +* -Y 0 or -Y: Set maximum block height to terminal line height. +* -Y [1-xxx]: Set maximum block line height to given integer. +* -Y -1: Print out one primary data block item at a time, with -F for example. +* -Y -2: Restore default unlimited height if LINES_MAX configuration item used. + +15. And finally, more disk vendors/vendor ids. As usual. As expected. + +-------------------------------------------------------------------------------- +CHANGES: + +1. If /sys or /proc/cpuinfo speed data available: +* For -b CPU item: + speed: [speed MHz] min/max: [min]/[max] MHz + becomes: + speed (MHz): avg: [speed] min/max: [min]/[max] +* For -C, Speed item + Speed: [speed MHz] min/max: [min]/[max] MHz Cores (MHz): ... + becomes: + Speed (MHz): avg: [speed] min/max: [min]/[max] cores: ... +* For short form, shows speed/min/max but uses average speed if available. + +For -b and -C, only shows one MHz in Speed line starter, which slightly shortens +the line even with the added 'avg:' item since 3 MHz are replaced with 1. + +2. Going with change 1, now the 'avg:' item shows not the fastest cpu speed +found, which was the case before, but shows an average of all cpu speeds found. +Showing the fastest made some sense back in the days of single core, or even +dual core CPUs, but makes little sense today with many core/threaded cpus. + +With -x, it will show the high: [speed] item as well, after 'avg:'. + +3. By suggestion, wrapped first Type item in Vulnerabilities to its own line, +that's a verbose --admin option after all, no need to save lines! + +4. Going along with Fix 5, give up on trying to pretend we can guess at L2 +cache, now if only 'cache' data was available from cpuinfo, will just say: +cache: [cache size] + note: check + +and call it a day. + +5a. Change default width to 80 columns, in and out of display. Too many users +are posting horribly wrapping inxi output in forums, issue trackers, etc, and it +frankly makes inxi look really bad, creates awful side scrolling code boxes, +etc. So now default widths in and out of console are 80 (since often data is +generated in SSH or out of X/Wayland) for issues. + +This essentially makes -y 80/-y the default width. This is what I've been using +for a few years now, and after seeing far too many side scrolling or badly +wrapping inxi outputs online, I think it's probably time to just force 80 column +widths as default and call it a day. + +You can change these new defaults using configuration options (these are the +previous options, though due to a bug, COLS_MAX_CONSOLE was never being used): + + COLS_MAX_CONSOLE=115 # in display, terminal client max width + COLS_MAX_IRC=100 + COLS_MAX_NO_DISPLAY=130 # not in display, no X/Wayland running + +5b. Changed output wrapped indent to 1 column from 2, and make second and +greater rows of a line indent +1 to make it more clear that it is a child row of +its parent row. Note that because no arg short form, -S, and -I are special +types of rows, this behavior is not used, they just print out as usual. This 1 +column indent also applies to -y1, making for a little more data per line but +more readable and easy to follow. + +6. If > 1 physical cpu detected, no longer uses single/dual/triple/quad core +strings, rather uses: 2x 2-core. Also uses lower case -core, not -Core. + +7. Only show die counts for CPU (on rare occasions > 1 found) with -xx. Not +particularly important bit of data afterall. + +8. Make L1, L3 cache data show with -Cx, not -Cxx, now that it's working well. + +9. Removed CPU die for -Cxx, that's only going to show with -Ca now. + +10. If -Ca, and if certain complexity conditions are met, shows a separate +Topology line rather than the Info: 6-core type item. For -b, short, -Cx, -Cxxx +shows the Info: topology short form. + +11. Bogomips always shows before flags data, whether -f or just -Cx trips flag +output. + +12. Flags/Features now shows in the same place, under Speeds: always, whether +-Cx shortlist, or -Cf full list. Makes more sense that way, and code is much +cleaner too. + +13. Bogomips, being essentially bogus units of speed for cpu, are moved into +Speed: report. + +-------------------------------------------------------------------------------- +DOCUMENTATION: + +1. Updated man/help for new CPU extra data options and output changes. + +2. Cleaned up and added sample outputs for man CPU items. + +3. Now that doas is getting into Linux distros, removed all mentions of doas as +a BSD option, and made it a general doas/sudo item. Glad to see doas making it +into linux distros, it's a good tool, much easier to configure and use than +sudo. Good job OpenBSD guys. Note that inxi already has had full doas support +for a while now, but this finalizes it, and makes it fully agnostic. Internally +doas is actually preferred over sudo, by the way. + +4. Added documention items for INDENT (--indent), INDENT_MIN (--inident-min). + +5. Re-ordered help menu and man page, created new Filters and Output Controls +sections to make stuff easier to find. In man page, also added on top a list of +OPTIONS sections to make finding stuff easier. + +-------------------------------------------------------------------------------- +CODE: + +1. Removed legacy /sys cpu functions: cpu_bugs_sys(); get_boost_status(); +set_cpu_speeds_sys(). cpu_speeds() is deprecated and now will only be used for +legacy Linux and BSDs if they had any per core speeds found; get_caches() was +only a placeholder for the full featured cpu_sys data source, and was removed; +cpu_speeds() no longer needed, integrated into other logic; cpu_dies_sys() +removed, integrated into other logic. + +This logic is now integrated into cpu_data_sys() data generator. + +2. Changed the main CpuItems functions to use array/hash references, not passing +full hashes or arrays in most cases now. + +3. For machine_data_soc(), switched to CpuItem::cpuinfo_grabber() which then +sets the global @cpuinfo and %cpuinfo_machine items, which will be used again +in Cpu if cpu data is requested. This gets rid of a full parsing of cpuinfo +just to get the machine data section, and also makes it so cpuinfo in cpu does +not need to worry about the machine data block, which is not related to the +processor blocks anyway, that was always a hack done by the kernel guys to toss +that SOC data somewhere as far as I can tell. + +4. New tools: +* either_or() - takes a list, and returns the first defined element of list. +* regex_range() - generate ranges from comma, space, or ranges like 2-29, or any +combination of those, like 3,6,12-29 + +5. Added --force cpuinfo to bypass all /sys based cpu logic, useful for testing +to see what would have happened using old logic. + +6. Added --dbg switches 39, 40, 41, for the new cpu sys data features, also made +more consistent --dbg 8 and --dbg 38 switches. + +7. Added sys/cpuinfo pair debugger to support debugging complex sys/cpuinfo +issues. + +8. Got rid of $b_arm,$b_mips,$b_ppc,$b_sparc, replaced with global %risc, also +added $risc{'riscv'} type. this makes general risc type feature testing a lot +easier since inxi can either test for %risc defined, or for a specific type of +risc cpu. This is much cleaner, and use $risc{'id'} for print purposes, which +got rid of a lot of tests. Also made all risc tests consistent, some were ARM +only, or arm/mips, but were supposed to be for all risc cpus. + +9. Set help menu code to roughly 80 columns width assuming 2 space tab +indentation. + +10. Changed all xxx_cleaner subs to clean_xxx, all filter subs to filter_xxx, +and row_defaults() to message(). + +11. Dumped redundant fallback logic in get_kernel_bits, if first getconf method +fails, use $sys_bits, and call it good, it was repeating the 32/64 bit tests +pointlessly. + +12. Cleaned up print_data() to allow for more fine tuned indentation for the new +2 indent levels. + +13. Made help menu code more or less wrap to 80 columns, or close. Ongoing to +bring to 80 columns where practical, but never at expense of clarity or logic. + +-------------------------------------------------------------------------------- +-- Harald Hope - Tue, 13 Dec 2021 10:25:49 -0800 + +================================================================================ +Version: 3.3.09 +Patch: 01 +Date: 2021-11-22 +-------------------------------------------------------------------------------- +RELEASE NOTES: +-------------------------------------------------------------------------------- + +Thanks manjaro user alven for finding a bunch of corner and not so corner case +errors, glitches, documentation oversights, etc. + +This is a point release between the coming full CPU refactor and the current +set of bug fixes and issue handlings. + +This release also contains the debuggers for the new CPU data logic, which are +important to get this CPU refactor stable and reliable across old/new systems, +different operating systems and platforms. + +Wanted to do this intermediate releaase to get the current fixes out, which +make inxi overall better for CPU issues, but do not handle the core requirement +to do a full refactor. + +-------------------------------------------------------------------------------- + +CORRECTION: + +1. On release notes for 3.3.08: due to a long delay to get real debugger data +from the person who had the issue, but finally getting it after the release of +3.3.08, there was NO bug in ps wwaux output. Something else was creating the +linewraps, maybe the subshell, it's basically impossible to know since we never +got a real debugger data set, which is the only real way to get the actual same +data inxi will see. + +Was it a subshell wrapping the output? We just can't know, nor are we likely to +ever find out. + +This highlights very well however why some issues are essentially impossible to +ever fully resolve without the --debug 22 dataset. This bug/fix is definitely in +that class of issues. + +It's never good to accuse another program of having a bug when it doesn't, so +sorry to ps authors, no bug or issue exists for ps in this area. + +-------------------------------------------------------------------------------- +KNOWN ISSUES: + +1. wiryonolau issue #259 points out that if --tty is used, default IRC filter +rule is still active and on. Because his case appears to be from an autostart +using Bash, which then gives up to find the parent at dash, which then makes +inxi believe it's in an IRC shell client, that issue doesn't appear to be +resolvable. + +-------------------------------------------------------------------------------- +BUGS: + +1. Documentation, help menu and man page showed wmctl instead of wmctrl, +which for someone who reads the help man, leads to command --fake wmctl failing. +Thanks manjaro user alven for finding this typo. + +2. For dmidecode cpu data, had global total values for cache that could result +in wrong output values, 2x or more wrong for L1 / L3 cache on linux. Difficulty +is preserving that data for bsd, which in general do not show phys cpu counts, +and thus make showing totals off. Created new '-total' item for each L cache +type, which will handle > 1 cpus, and also can be used to determine if > 1 cpus +present!. + +3. Manjaro user pointed out that hub types were wrong, this is because inxi was +using the INTERFACE ID values for hubs instead of the TYPE values. For all other +device types, INTERFACE is correct, but for hubs, we needed TYPE, so fix is to +detect INTERFACE 9/0/0 and if TYPE present for that, swap. + +-------------------------------------------------------------------------------- +FIXES: + +1. For > 1 cpu systems, with dmidecode sourced cpu cache data, can now determine +physical cpu count based on comparing L2 and L2-total values. This means that +when dmidecode is used on BSD for CPU data, inxi may now be able to deduce that +it is a > 1 cpu system. + +2. Forgot to set $run{'filter'} to 0 for whitelist start client detection. + +3. Going along with bug 3, changed 'Full speed (or root) hub' to: +Full speed or root hub, to make more clear that it's one or the other, or both. + +4. For apply_filter(), added test if <superuser required> just return the +string. + +-------------------------------------------------------------------------------- +ENHANCEMENTS: + +1. Going with bug 1, and fix 1, for > 1 cpu systems, will now show for all +cache: items L1: 2x 1.5 MiB (3 MiB), same for L2 and L3. This is far less +confusing than showing the totals without explaining what they are. + +2. Going along with 1, now root is not required to show L1 and L3 -Cxx on Linux +as long as the system is reasonably new, about after 2008, and has getconf -a +supported. That support is came in somewhere around 2.10, not sure exactly when. +Debian Etch had it, Sarge did not, Ubuntu 9.10 had it. Tinycore does not have +getconf at all. This will probably be replaced by a more robust full cpu /sys +data tool. + +3. Added ht to default short -Cx flag list, that should show, and it's short. + +4. Added --no-filter to activate -Z, --filter-override isn't consistent with +other --no-xxx options, even I forgot it. No changes, just another way to use +-Z. + +5. For issue #260 added pch as a new sensor output type, it's kind of a builtin +southbridge / northbridge in the CPU die, but it's not a core, and has a +different temp. Will anyone even know what pch is? probably not, but who cares. + +-------------------------------------------------------------------------------- +CHANGES: + +1. No longer showing for > 1 physical cpu systems the sum total of L1/2/3 cache +data. Now shows per cpu L1/L2/L3, and if > 1 cpu, shows for example: + +cache: L1: 2x 512 KiB (1024 KiB) L2: 2x 2 MiB (4 MiB) L3: 2x 20 MiB (40 MiB) + +For single physical cpu output remains the same: + +cache: L1: 576 KiB L2: 3 MiB L3: 16 MiB + +-------------------------------------------------------------------------------- +DOCUMENTATION: + +1. Updated help/man for L1/L3 cache -Cxx changes. + +2. Updated man and help to suggest -Z for --tty. + +3. Forgot to note -v 7 adds -f, added to man/help. + +-------------------------------------------------------------------------------- +CODE: + +* Added 'getconf -a' to debugger, that may be usable for cpu cache data, need to +gather data on that to confirm. that's regading issue #257 cache glitches. + +2. Removed all * $physical_count for cache data in cpu_properties, that is now +handled by creating string with cpu count, per cpu caches, and total in parens. + +3. Added in fallback failure case for the ZFS file system issue exposed by +accident in issue #258 - will now log in debugger the error, so we can try to +find what is going on there, impossible to reproduce until we find what zfs or +more likely, freebsd, changed there. Could be hyper specific, some weird thing +like a person making a zfs device name with space, impossible to guess. Note +that since the freebsd user declined to supply any data to help resolve this +issue, then closed it, we're back where we usually end up with FreeBSD issues, +either a Linux user (or worse, me) willing and able to find the issue and supply +the debugger data required shows up, OR the issue is ignored as valid but +impossible to resolve. + +RANT: Note that this also confirmed to me that in order to preserve my own +sanity and not waste endless hours trying to get data, from now on, unless +utterly trivial, if a FreeBSD user refuses to promptly supply the required data, +the issue will be closed with a freebsd-closed-no-data-supplied label, which +means, valid but not possible to solve due to user refusing to help me help +them. + +Come on FreeBSD users!! If you want help, and inxi to support your distro, help +me help you!! If not, then why are you even filing an issue in the first place? +Do you expect faeries to spread magic bug / issue fixing faerie dust over inxi +and then activate it with their little wands? This is growing tiresome to be +honest because it's so utterly predictable. + +4. Shuffled order of sensor type detections, there was a slim chance that a non +gpu sensor type could have string intel in it, so put the gpu sensors second +to last, before 'main'. + +5. Started refactor of cpu core/cache logic. Added feature to cpu_arch, and +changed it to cpu_info since now it gives by vendor/family/model/stepping both +micorarch and cache/core math array returns. Also started refactor to make more +predictable, with increased comments, about what is going on in cpu_properties +to avoid breaking existing correct results. + +6. Added to --debug /sys cpu data globber tool, that will help debugging the new +/sys cpu data feature, will let me insert the file data directly into the logic. + +7. Added CpuItem::cpu_data_sys() with debuggers, that will now start collecting +user cpu data whenever the debugger is run, though it's not active yet. + +8. Set $Data::Dumper::SortKeys = 1; dugh, could have saved big headaches if had +found this before. Makes all keys sorted cleanly, gets rid of random hash sorts. + +-------------------------------------------------------------------------------- +-- Harald Hope - Mon, 22 Nov 2021 12:45:00 -0700 + +================================================================================ +Version: 3.3.08 +Patch: 00 +Date: 2021-10-21 +-------------------------------------------------------------------------------- +RELEASE NOTES: +-------------------------------------------------------------------------------- + +Bug fix release. 2 bugs that can impact all users under the right circumstances +were detected and fixed. Thanks manjaro users there for finding and reporting +those. No other changes. + +-------------------------------------------------------------------------------- +KNOWN ISSUES: + +None. + +-------------------------------------------------------------------------------- +BUGS: + +1. Manjaro user ben81 located a critical bug in hardware raid output, this bug +impacts ALL users of hwraid that run inxi with -xx option. Bug was a bad copy +paste, the classic, had updated all the pci type data blocks at once, and hw +raid unfortunately had a slightly different logic due to being part of the more +complex RAID block of logic. Was trying to use an array, not a hash, reference. + +Thanks ben81, I would never have spotted this one, and it would impact 100% of +all inxi users with hwraid on their machine who ran inxi with -xx option. + +2. Also, ps wwaux parser was spitting out an undefined index error. This is +caused by one of two things: + +* ps has an issue, and is apparently at times failing to respect ww, unlimited +line length, and wrapping anyway. This is the likely cause. +* the user terminal for some inexpicable reason has decided to hard wrap long +lines. This is very unlikely, but has to be considered as a possible cause. +Since these commands run in a subshell, this is VERY unlikely. + +Workaround this failure by double checking that line split item is defined, if +not, next row. Thanks Carpenter for finding that one. + +-------------------------------------------------------------------------------- +FIXES: + +None. + +-------------------------------------------------------------------------------- +ENHANCEMENTS: + +None. + +-------------------------------------------------------------------------------- +CHANGES: + +None. + +-------------------------------------------------------------------------------- +DOCUMENTATION: + +None. + +-------------------------------------------------------------------------------- +CODE: + +1. Added workarounds for bug 2. Corrected silly copy/paste error for bug 1. + +-------------------------------------------------------------------------------- +-- Harald Hope - Thu, 21 Oct 2021 12:28:15 -0700 + +================================================================================ Version: 3.3.07 Patch: 00 Date: 2021-10-11 |
