Testers for inxi/pinxi redone -C CPU logic... huge internal changes

h2-1

Active Member
Joined
Mar 7, 2021
Messages
126
Reaction score
107
Credits
1,916
After about a month or more of research, I was finally able to start the big CPU refactor, the very early parts of it were in inxi 3.3.09, but that was released mainly to get other bugs and issue fixes released, and had some temporary placeholder fixes and tools for CPU logic. Those are all gone, and replaced with the actual solution.

Because this is a huge change internally, and also because I had to do some very convoluted stuff to try to maintain BSD support and legacy ancient Linux support (and when I say ancient, I mean ancient), this will need a lot of testing on different hardware, aka, your hardware, since I've already tested it on mine.

Code:
# if you already have pinxi installed:
pinxi -U
# if you don't, just do:
cd /usr/local/bin && sudo wget -O pinxi smxi.org/pinxi && sudo chmod +x pinxi

First run inxi to compare, it doesn't matter a lot which version, although 3.3.09 had a few fixes that earlier versions were missing, like L1/L3 caches showing without root/sudo. This is from a system that showed the wrong number of Cores, 2x as many as existed, and the wrong L2 cache, that's inxi 3.3.08.

[if inxi -MCay or -MCay1 gives an error for -y as unsupported, use -MCay80 instead, -y was added I think 3.1, and -y1 maybe 3.2, I forget when]

Code:
inxi -MCazy
Machine: ....
CPU:
  Info: 2x 6-Core model: Intel Xeon E5-2620 0 bits: 64 type: MCP SMP
  arch: Sandy Bridge family: 6 model-id: 2D (45) stepping: 7 microcode: 71A
  cache: L2: 30 MiB
  flags: avx lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 48053
  Speed: 2304 MHz min/max: 1200/2500 MHz Core speeds (MHz): 1: 2304 2: 2307
  3: 2000 4: 2000 5: 2353 6: 2321 7: 2389 8: 2319 9: 2287 10: 2349 11: 2437
  12: 2338 13: 2302 14: 2391 15: 2324 16: 2338 17: 2355 18: 2308 19: 2332
  20: 2302 21: 1811 22: 1790 23: 1710 24: 1702
 
# with the new logic:

pinxi -MCazy1
Machine: ....
CPU:
  Info: 2x 6-Core
    model: Intel Xeon E5-2620 0
    bits: 64
    type: MCP SMP
    arch: Sandy Bridge
    family: 6
    model-id: 2D (45)
    stepping: 7
    microcode: 71A
    cache:
      L1: 2x 384 KiB (768 KiB)
        desc: d-6x32 KiB; i-6x32 KiB
      L2: 2x 1.5 MiB (3 MiB)
        desc: 6x256 KiB
      L3: 2x 15 MiB (30 MiB)
        desc: 1x15 MiB
    flags: avx ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
    bogomips: 4000
  Speed (MHz):
    avg: 1682
    high: 2000
    min/max: 1200/2500
    cores:
      1: 2000
      2: 2000
      3: 2000
      4: 2000
      5: 2000
      6: 1997
      7: 1609
      8: 1204
      9: 1207
      10: 1242
      11: 1383
      12: 1552
  Vulnerabilities:
    ....

# Another sample of the new logic:
pinxi -Cay1
## which will show something like this:
pinxi -MCazy1
Machine:
  ......
CPU:
  Info: 6-Core
    model: AMD Ryzen 5 2600
    bits: 64
    type: MT MCP
    arch: Zen+
    family: 17 (23)
    model-id: 8
    stepping: 2
    microcode: 8008204
    cache:
      L1: 576 KiB
        desc: d-6x32 KiB; i-6x64 KiB
      L2: 3 MiB
        desc: 6x512 KiB
      L3: 16 MiB
        desc: 2x8 MiB
    flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
    bogomips: 6799
  Speed (MHz):
    avg: 2717
    high: 3895
    min/max: 1550/3400
    boost: enabled
    cores:
      1: 3326
      2: 2746
      3: 1454
      4: 1468
      5: 3895
      6: 3891
      7: 2674
      8: 2783
      9: 1559
      10: 1556
      11: 3475
      12: 3783
  Vulnerabilities:
    .....

I just got the last features on my todo list done, so this is finally ready for testing.

Note that because these are very large changes, and the old logic is very difficult to work on, I've basically preserved a significantly modified version of the old logic, minus a few features that are in the new logic, like cpu min/max speeds, which can be accessed like so:

Code:
pinxi -MCay1 --force cpuinfo

Note it's not exactly the old logic, but it's a lot of it, only a bit more organized and cleaned up.

There's a few things to check to see if it's right, use cpu-world.com data, they are quite good, do a google search like so:

search: [your cpu model, like: AMD Ryzen 5 2600] cpu-world.com

Verify that the L1, L2, and L3 caches are all correct, particularly in the per CPU totals.

Verify that the CPU type: data is correct. Note that Alder Lake is supported, that was one big reason for the full refactor, the old logic could not handle that complex cpu topology/architecture, or other ones that are coming soon. Note some changes, with -Ca, you see how many of each type of L cache there are in each cpu, as well as the total for all physical cpus.

Many corner cases were failing using the old logic, in fact, the more I looked, the more corner cases I found that were failing, the goal here, which I think is realized unless you find bugs in the logic, is that if the data is 'wrong', it's because the system reported the wrong data, which is fine, as long as inxi itself isn't the cause of the data being wrong.

There are also some debuggers that are useful to paste into a pastebin in some cases, like:

Code:
pinxi -MCazy --dbg 39 --dbg 8

will basically spit out a huge amount of data, and the entire data structures being used, as well as the results, those can be useful to track down errors in the results.

The more obscure CPUs and hardware, old operating systems, ARM SOC devices, whatever, the better, this is one where I can only crudely test for failures, but there are debuggers built in that if you run pinxi --debug 22 to upload a debugger data set, contain files I can use, at least in theory, to debug the issue without even seeing the hardware, though that has not been fully tested yet, but it should in theory work.

Thanks for all hardware/operating systems.

The main thing for BSDs is just to compare inxi and pinxi output, and make sure it didn't get worse for -Cay in pinxi, and ideally, maybe a touch better, but I think due to how little data those systems have to offer, there's not a huge set of things that can go wrong with the output beyond the failures causes by not having enough data in the first place.

Tested on Debian 3,1, sarge, 4.0, etch, in VM, tested on 5.0 on 1998 hardware, tested on Openbsd 6.9 and 7.0. And newer hardware/servers/desktops/laptops.

Of particular interest are a certain generation of intel core quadro that were made out of 2 core duos stuck together, and any ARM SOC that uses two different CPU blocks, with different speeds per block.
 
Last edited:


@stan @brickwizard Just tagging your post so it shows up for the others who are helping with testing.
 
@h2-1 just fyi in first code comment pinxi not pinx

Cheers

Wiz
 
thanks wizard, fixed it. this job frazzled me, it was not easy, I was visiting a friend and kept trying to type chdir (perl) in bash shell and couldn't figure out why it wasn't cd'ing to the directory.... that's a sign it's probably about time to roll up the changes, debug, test, and release once everything is found and fixed. Already found one from another forum, a small oversight (stepping 0 was being considered as empty, not 0, an old issue I'd fixed a while ago, but broke in the refactor), corrected already in latest pinxi.
 
inxi -MCazy
I get an error from the 'y'... see below (inxi 3.0.38-00).

It this the report you want? Or do you also want pinxi -MCazy --dbg 39 --dbg 8 ?

Code:
stan@dell:~$ inxi -MCazy
Error 10: Unsupported value: 0 for option: y
Check -h for correct parameters.


stan@dell:~$ inxi -MCaz
Machine:   Type: Desktop System: Dell product: XPS 8940 v: N/A serial: <filter> Chassis: type: 3 serial: <filter>
           Mobo: Dell model: 0K3CM7 v: A00 serial: <filter> UEFI: Dell v: 2.3.0 date: 10/07/2021
CPU:       Topology: 8-Core model: 11th Gen Intel Core i7-11700 bits: 64 type: MT MCP arch: N/A family: 6 model-id: A7 (167)
           stepping: 1 microcode: 40 L2 cache: 16.0 MiB
           flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 79872
           Speed: 801 MHz min/max: 800/4800 MHz Core speeds (MHz): 1: 800 2: 853 3: 801 4: 800 5: 801 6: 800 7: 1370 8: 801
           9: 801 10: 1027 11: 801 12: 800 13: 801 14: 800 15: 800 16: 800
           Vulnerabilities: Type: itlb_multihit status: Not affected
           Type: l1tf status: Not affected
           Type: mds status: Not affected
           Type: meltdown status: Not affected
           Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via prctl and seccomp
           Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer sanitization
           Type: spectre_v2 mitigation: Enhanced IBRS, IBPB: conditional, RSB filling
           Type: srbds status: Not affected
           Type: tsx_async_abort status: Not affected


stan@dell:~$ pinxi -MCazy1
Machine:
  Type: Desktop
  System: Dell
    product: XPS 8940
    v: N/A
    serial: <superuser required>
  Chassis:
    type: 3
    serial: <superuser required>
  Mobo: Dell
    model: 0K3CM7
    v: A00
    serial: <superuser required>
  UEFI: Dell
    v: 2.3.0
    date: 10/07/2021

CPU:
  Info: 8-Core
    model: 11th Gen Intel Core i7-11700
    bits: 64
    type: MT MCP
    arch: Rocket Lake
    family: 6
    model-id: A7 (167)
    stepping: 1
    microcode: 40
    cache:
      L1: 640 KiB
        desc: d-8x48 KiB; i-8x32 KiB
      L2: 4 MiB
        desc: 8x512 KiB
      L3: 16 MiB
        desc: 1x16 MiB
    flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
    bogomips: 4992
  Speed (MHz):
    avg: 824
    high: 1040
    min/max: 800/4800:4900
    cores:
      1: 888
      2: 801
      3: 801
      4: 801
      5: 800
      6: 800
      7: 800
      8: 1040
      9: 850
      10: 800
      11: 800
      12: 801
      13: 801
      14: 800
      15: 800
      16: 801
  Vulnerabilities:
    Type: itlb_multihit
      status: Not affected
    Type: l1tf
      status: Not affected
    Type: mds
      status: Not affected
    Type: meltdown
      status: Not affected
    Type: spec_store_bypass
      mitigation: Speculative Store Bypass disabled via prctl and seccomp
    Type: spectre_v1
      mitigation: usercopy/swapgs barriers and __user pointer sanitization
    Type: spectre_v2
      mitigation: Enhanced IBRS, IBPB: conditional, RSB filling
    Type: srbds
      status: Not affected
    Type: tsx_async_abort
      status: Not affected

stan@dell:~$
 
oh, if you get that error, it means the inxi is too old, just use -y80 instead, I made a big mistake in 3.0.0 and failed to make -y without argument, even though in testing I was always using -y80. I assume Rocket Lake is newer than 3.0.38 inxi. There was also a bug found by two separate people and fixed with steppings that also would have made intel arch matches fail in any case where the stepping was > 9.
 
@stan re the debugger extra data, --dbg 39 --dbg 8 - only if the pinxi data is wrong, yours seems right.

By the way, sorry pinxi downgraded how much L2 cache you have from 16 to 4 MiB, lol. That was one of the major bugs that the refactor is designed to fix and make almost impossible to repeat.
 
here is a quick rundown, will take another look when i have time


wizard@wizard-HP-ProDesk-400-G2-5-SFF:/usr/local/bin$ inxi -MCaxy80
Machine:
Type: Desktop System: HP product: HP ProDesk 400 G2.5 SFF v: N/A
serial: <superuser/root required> Chassis: type: 3
serial: <superuser/root required>
Mobo: HP model: 8105 serial: <superuser/root required> UEFI: AMI v: 02.19
date: 02/16/2017
CPU:
Topology: Quad Core model: Intel Core i5-4590S bits: 64 type: MCP
arch: Haswell family: 6 model-id: 3C (60) stepping: 3 microcode: 28
L2 cache: 6144 KiB
flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 bogomips: 23944
Speed: 803 MHz min/max: 800/3700 MHz Core speeds (MHz): 1: 998 2: 1233
3: 1192 4: 1048
Vulnerabilities: Type: itlb_multihit status: KVM: VMX unsupported
Type: l1tf mitigation: PTE Inversion
Type: mds mitigation: Clear CPU buffers; SMT disabled
Type: meltdown mitigation: PTI
Type: spec_store_bypass
mitigation: Speculative Store Bypass disabled via prctl and seccomp
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional,
IBRS_FW, STIBP: disabled, RSB filling
Type: srbds mitigation: Microcode
Type: tsx_async_abort status: Not affected
wizard@wizard-HP-ProDesk-400-G2-5-SFF:/usr/local/bin$ pinxi -MCazy1
Machine:
Type: Desktop
System: HP
product: HP ProDesk 400 G2.5 SFF
v: N/A
serial: <superuser required>
Chassis:
type: 3
serial: <superuser required>
Mobo: HP
model: 8105
serial: <superuser required>
UEFI: AMI
v: 02.19
date: 02/16/2017

CPU:
Info: Quad Core
model: Intel Core i5-4590S
bits: 64
type: MCP
arch: Haswell
family: 6
model-id: 3C (60)
stepping: 3
microcode: 28
cache:
L1: 256 KiB
desc: d-4x32 KiB; i-4x32 KiB
L2: 1024 KiB
desc: 4x256 KiB
L3: 6 MiB
desc: 1x6 MiB
flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3
bogomips: 5986
Speed (MHz):
avg: 1447
high: 1805
min/max: 800/3700
cores:
1: 1530
2: 1527
3: 929
4: 1805
Vulnerabilities:
Type: itlb_multihit
status: KVM: VMX unsupported
Type: l1tf
mitigation: PTE Inversion
Type: mds
mitigation: Clear CPU buffers; SMT disabled
Type: meltdown
mitigation: PTI
Type: spec_store_bypass
mitigation: Speculative Store Bypass disabled via prctl and seccomp
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2
mitigation: Full generic retpoline, IBPB: conditional, IBRS_FW, STIBP: disabled, RSB filling
Type: srbds
mitigation: Microcode
Type: tsx_async_abort
status: Not affected

wizard@wizard-HP-ProDesk-400-G2-5-SFF:/usr/local/bin$
 
this is my 2010 dell lappy
wizard@wizard-Inspiron-1545:/usr/local/bin$ inxi -MCay80
Machine:
Type: Portable System: Dell product: Inspiron 1545 v: N/A
serial: <superuser/root required> Chassis: type: 8
serial: <superuser/root required>
Mobo: Dell model: 0G848F serial: <superuser/root required> BIOS: Dell v: A14
date: 12/07/2009
CPU:
Topology: Dual Core model: Pentium T4500 bits: 64 type: MCP arch: Penryn
family: 6 model-id: 17 (23) stepping: A (10) microcode: A0B
L2 cache: 1024 KiB
flags: lm nx pae sse sse2 sse3 ssse3 bogomips: 9177
Speed: 1197 MHz min/max: 1200/2300 MHz Core speeds (MHz): 1: 1197 2: 1197
Vulnerabilities: Type: itlb_multihit status: KVM: Vulnerable
Type: l1tf mitigation: PTE Inversion
Type: mds
status: Vulnerable: Clear CPU buffers attempted, no microcode; SMT disabled
Type: meltdown mitigation: PTI
Type: spec_store_bypass status: Vulnerable
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2
mitigation: Full generic retpoline, STIBP: disabled, RSB filling
Type: srbds status: Not affected
Type: tsx_async_abort status: Not affected

wizard@wizard-Inspiron-1545:/usr/local/bin$ pinxi -MCazy

Machine:
Type: Portable System: Dell product: Inspiron 1545 v: N/A
serial: <superuser required> Chassis: type: 8 serial: <superuser required>
Mobo: Dell model: 0G848F serial: <superuser required> BIOS: Dell v: A14
date: 12/07/2009
CPU:
Info: Dual Core model: Pentium T4500 bits: 64 type: MCP arch: Penryn
family: 6 model-id: 17 (23) stepping: A (10) microcode: A0B cache:
L1: 128 KiB desc: d-2x32 KiB; i-2x32 KiB L2: 1024 KiB desc: 1x1024 KiB
flags: ht lm nx pae sse sse2 sse3 ssse3 bogomips: 4588
Speed (MHz): avg: 2294 min/max: 1200/2300 cores: 1: 2294 2: 2294
Vulnerabilities: Type: itlb_multihit status: KVM: Vulnerable
Type: l1tf mitigation: PTE Inversion
Type: mds
status: Vulnerable: Clear CPU buffers attempted, no microcode; SMT disabled
Type: meltdown mitigation: PTI
Type: spec_store_bypass status: Vulnerable
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2
mitigation: Full generic retpoline, STIBP: disabled, RSB filling
Type: srbds status: Not affected
Type: tsx_async_abort status: Not affected
wizard@wizard-Inspiron-1545:/usr/local/bin$
wizard@wizard-Inspiron-1545:/usr/local/bin$
 
And this from my 2008 32bit acer ZG5

brian@wizard-AOA110:~$ inxi -MCay
Machine:
Type: Other-vm? System: Acer product: AOA110 v: 1
serial: <superuser required>
Mobo: Intel model: N/A serial: <superuser required> BIOS: INSYDE v: 0.3109
date: 05/09/2008
CPU:
Info: Single Core model: Intel Atom N270 bits: 32 type: MT arch: Bonnell
family: 6 model-id: 1C (28) stepping: 2 microcode: 218 L2 cache: 512 KiB
flags: pae sse sse2 sse3 ssse3 bogomips: 6383
Speed: 985 MHz min/max: 800/1600 MHz Core speeds (MHz): 1: 798 2: 798
Vulnerabilities: Type: itlb_multihit status: Not affected
Type: l1tf status: Not affected
Type: mds status: Not affected
Type: meltdown status: Not affected
Type: spec_store_bypass status: Not affected
Type: spectre_v1 status: Not affected
Type: spectre_v2 status: Not affected
Type: srbds status: Not affected
Type: tsx_async_abort status: Not affected
brian@wizard-AOA110:~$ pnixi -MCazy
bash: pnixi: command not found
brian@wizard-AOA110:~$ pnxi -MCazy1
bash: pnxi: command not found
brian@wizard-AOA110:~$ inxi -MCazy80
Machine:
Type: Other-vm? System: Acer product: AOA110 v: 1 serial: <filter>
Mobo: Intel model: N/A serial: <filter> BIOS: INSYDE v: 0.3109
date: 05/09/2008
CPU:
Info: Single Core model: Intel Atom N270 bits: 32 type: MT arch: Bonnell
family: 6 model-id: 1C (28) stepping: 2 microcode: 218 L2 cache: 512 KiB
flags: pae sse sse2 sse3 ssse3 bogomips: 6383
Speed: 1010 MHz min/max: 800/1600 MHz Core speeds (MHz): 1: 798 2: 798
Vulnerabilities: Type: itlb_multihit status: Not affected
Type: l1tf status: Not affected
Type: mds status: Not affected
Type: meltdown status: Not affected
Type: spec_store_bypass status: Not affected
Type: spectre_v1 status: Not affected
Type: spectre_v2 status: Not affected
Type: srbds status: Not affected
Type: tsx_async_abort status: Not affected

I also have a 2000 acer travelmate I will try and post later today/tomorrow
 
if you get that error, it means the inxi is too old, just use -y80 instead
Ah, okay... got it. Here is Old HP desktop below (an Older HP desktop will follow shortly).

Code:
stan@lmde:~$ inxi -MCazy80
Machine:
  Type: Desktop System: HP-Pavilion product: NY549AA-ABA p6230y v: N/A
  serial: <filter>
  Mobo: FOXCONN model: ALOE v: X3 serial: <filter> BIOS: American Megatrends
  v: 5.00 date: 08/03/2009
CPU:
  Topology: Quad Core model: AMD Phenom II X4 810 bits: 64 type: MCP
  family: 10 (16) model-id: 4 stepping: 2 microcode: 10000DB
  L2 cache: 2048 KiB
  Speed: 800 MHz min/max: 800/2600 MHz Core speeds (MHz): 1: 800 2: 800 3: 800
  4: 1400
  Vulnerabilities: Type: itlb_multihit status: Not affected
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: spec_store_bypass status: Not affected
  Type: spectre_v1
  mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2
  mitigation: Full AMD retpoline, STIBP: disabled, RSB filling
  Type: srbds status: Not affected
  Type: tsx_async_abort status: Not affected
stan@lmde:~$
stan@lmde:~$
stan@lmde:~$ pinxi -MCazy1
Machine:
  Type: Desktop
  System: HP-Pavilion
    product: NY549AA-ABA p6230y
    v: N/A
    serial: <superuser required>
  Chassis: Hewlett-Packard
    type: 3
    serial: <superuser required>
  Mobo: FOXCONN
    model: ALOE
    v: X3
    serial: <superuser required>
  BIOS: American Megatrends
    v: 5.00
    date: 08/03/2009

CPU:
  Info: Quad Core
    model: AMD Phenom II X4 810
    bits: 64
    type: MCP
    arch: K10
    family: 10 (16)
    model-id: 4
    stepping: 2
    microcode: 10000DB
    cache:
      L1: 512 KiB
        desc: d-4x64 KiB; i-4x64 KiB
      L2: 2 MiB
        desc: 4x512 KiB
      L3: 4 MiB
        desc: 1x4 MiB
    flags: ht lm nx pae sse sse2 sse3 sse4a svm
    bogomips: 5186
  Speed (MHz):
    avg: 1400
    high: 2600
    min/max: 800/2600
    boost: disabled
    cores:
      1: 1400
      2: 800
      3: 800
      4: 2600
  Vulnerabilities:
    Type: itlb_multihit
      status: Not affected
    Type: l1tf
      status: Not affected
    Type: mds
      status: Not affected
    Type: meltdown
      status: Not affected
    Type: spec_store_bypass
      status: Not affected
    Type: spectre_v1
      mitigation: usercopy/swapgs barriers and __user pointer sanitization
    Type: spectre_v2
      mitigation: Full AMD retpoline, STIBP: disabled, RSB filling
    Type: srbds
      status: Not affected
    Type: tsx_async_abort
      status: Not affected

stan@lmde:~$
 
Outputs here look ok: That is when I type the correct command :)

Code:
kc1di@kc1di-ThinkPad-T450:~$ inxi -MCay80
Machine:
  Type: Laptop System: LENOVO product: 20BV000AUS v: ThinkPad T450
  serial: <superuser/root required> Chassis: type: 10
  serial: <superuser/root required>
  Mobo: LENOVO model: 20BV000AUS v: SDK0E50510 WIN
  serial: <superuser/root required> UEFI [Legacy]: LENOVO v: JBET71WW (1.35 )
  date: 09/14/2018
CPU:
  Topology: Dual Core model: Intel Core i5-5300U bits: 64 type: MT MCP
  arch: Broadwell family: 6 model-id: 3D (61) stepping: 4 microcode: 2F
  L2 cache: 3072 KiB
  flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  bogomips: 18357
  Speed: 895 MHz min/max: 500/2900 MHz Core speeds (MHz): 1: 799 2: 798 3: 798
  4: 797
  Vulnerabilities: Type: itlb_multihit status: KVM: Vulnerable
  Type: l1tf mitigation: PTE Inversion
  Type: mds mitigation: Clear CPU buffers; SMT vulnerable
  Type: meltdown mitigation: PTI
  Type: spec_store_bypass
  mitigation: Speculative Store Bypass disabled via prctl and seccomp
  Type: spectre_v1
  mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional,
  IBRS_FW, STIBP: conditional, RSB filling
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort mitigation: Clear CPU buffers; SMT vulnerable
kc1di@kc1di-ThinkPad-T450:~$ Pinxi -MCazy

Command 'Pinxi' not found, did you mean:

  command 'inxi' from deb inxi (3.0.38-1-0ubuntu1)

Try: sudo apt install <deb name>

kc1di@kc1di-ThinkPad-T450:~$ pinxi -MCazy
Machine:
  Type: Laptop System: LENOVO product: 20BV000AUS v: ThinkPad T450
  serial: <superuser required> Chassis: type: 10 serial: <superuser required>
  Mobo: LENOVO model: 20BV000AUS v: SDK0E50510 WIN
  serial: <superuser required> UEFI-[Legacy]: LENOVO v: JBET71WW (1.35 )
  date: 09/14/2018
CPU:
  Info: Dual Core model: Intel Core i5-5300U bits: 64 type: MT MCP
  arch: Broadwell family: 6 model-id: 3D (61) stepping: 4 microcode: 2F cache:
  L1: 128 KiB desc: d-2x32 KiB; i-2x32 KiB L2: 512 KiB desc: 2x256 KiB
  L3: 3 MiB desc: 1x3 MiB
  flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  bogomips: 4589
  Speed (MHz): avg: 2280 high: 2453 min/max: 500/2900 cores: 1: 2303 2: 2295
  3: 2069 4: 2453
  Vulnerabilities: Type: itlb_multihit status: KVM: Vulnerable
  Type: l1tf mitigation: PTE Inversion
  Type: mds mitigation: Clear CPU buffers; SMT vulnerable
  Type: meltdown mitigation: PTI
  Type: spec_store_bypass
  mitigation: Speculative Store Bypass disabled via prctl and seccomp
  Type: spectre_v1
  mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional,
  IBRS_FW, STIBP: conditional, RSB filling
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort mitigation: Clear CPU buffers; SMT vulnerable
kc1di@kc1di-ThinkPad-T450:~$
 
Here is Older HP desktop (3 of 3). Will follow shortly with 4 laptops... maybe 5 if my wife will let me play with hers. ;)

Code:
$ inxi -MCazy80
Machine:
  Type: Desktop System: HP-Pavilion product: RT680AA-ABA m7747c v: N/A
  serial: <filter>
  Mobo: ASUSTek model: LEONITE v: 5.00 serial: <filter> BIOS: Phoenix v: 5.09
  date: 01/11/2007
CPU:
  Topology: Dual Core model: Intel Core2 6400 bits: 64 type: MCP family: 6
  model-id: F (15) stepping: 6 microcode: D0 L2 cache: 2048 KiB
  Speed: 1601 MHz min/max: 1600/2133 MHz Core speeds (MHz): 1: 1600 2: 1601
  Vulnerabilities: Type: itlb_multihit status: KVM: VMX unsupported
  Type: l1tf mitigation: PTE Inversion
  Type: mds
  status: Vulnerable: Clear CPU buffers attempted, no microcode; SMT disabled
  Type: meltdown mitigation: PTI
  Type: spec_store_bypass status: Vulnerable
  Type: spectre_v1
  mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2
  mitigation: Full generic retpoline, STIBP: disabled, RSB filling
  Type: srbds status: Not affected
  Type: tsx_async_abort status: Not affected



$ pinxi -MCazy1
Machine:
  Type: Desktop
  System: HP-Pavilion
    product: RT680AA-ABA m7747c
    v: N/A
    serial: <superuser required>
  Chassis: Hewlett-Packard
    type: 3
    v: 1111
    serial: <superuser required>
  Mobo: ASUSTek
    model: LEONITE
    v: 5.00
    serial: <superuser required>
  BIOS: Phoenix
    v: 5.09
    date: 01/11/2007

CPU:
  Info: Dual Core
    model: Intel Core2 6400
    bits: 64
    type: MCP
    arch: Core Merom
    family: 6
    model-id: F (15)
    stepping: 6
    microcode: D0
    cache:
      L1: 128 KiB
        desc: d-2x32 KiB; i-2x32 KiB
      L2: 2 MiB
        desc: 1x2 MiB
    flags: ht lm nx pae sse sse2 sse3 ssse3
    bogomips: 4267
  Speed (MHz):
    avg: 1661
    high: 1722
    min/max: 1600/2133
    cores:
      1: 1601
      2: 1722
  Vulnerabilities:
    Type: itlb_multihit
      status: KVM: VMX unsupported
    Type: l1tf
      mitigation: PTE Inversion
    Type: mds
      status: Vulnerable: Clear CPU buffers attempted, no microcode; SMT disabled
    Type: meltdown
      mitigation: PTI
    Type: spec_store_bypass
      status: Vulnerable
    Type: spectre_v1
      mitigation: usercopy/swapgs barriers and __user pointer sanitization
    Type: spectre_v2
      mitigation: Full generic retpoline, STIBP: disabled, RSB filling
    Type: srbds
      status: Not affected
    Type: tsx_async_abort
      status: Not affected
 
I'm surprised... she let me test her laptop, a Microsoft Surface Book. She thinks Linux will give it cooties! ;)

Here it is:
Code:
$ inxi -MCazy80
Machine:
  Type: Laptop System: Microsoft product: Surface Book
  v: 124000000000000000000000D:0B:09F:1C:03P:38 serial: <filter>
  Mobo: Microsoft model: Surface Book serial: <filter> UEFI: Microsoft
  v: 92.3748.768 date: 05.04.2021
CPU:
  Topology: Dual Core model: Intel Core i7-6600U bits: 64 type: MT MCP
  family: 6 model-id: 4E (78) stepping: 3 microcode: EA L2 cache: 4096 KiB
  Speed: 800 MHz min/max: 400/3400 MHz Core speeds (MHz): 1: 800 2: 800 3: 800
  4: 800
  Vulnerabilities: Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf
  mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
  Type: mds mitigation: Clear CPU buffers; SMT vulnerable
  Type: meltdown mitigation: PTI
  Type: spec_store_bypass
  mitigation: Speculative Store Bypass disabled via prctl and seccomp
  Type: spectre_v1
  mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional,
  IBRS_FW, STIBP: conditional, RSB filling
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort mitigation: Clear CPU buffers; SMT vulnerable



$ pinxi -MCazy1
Machine:
  Type: Laptop
  System: Microsoft
    product: Surface Book
    v: 124000000000000000000000D:0B:09F:1C:03P:38
    serial: <superuser required>
  Chassis:
    type: 9
    serial: <superuser required>
  Mobo: Microsoft
    model: Surface Book
    serial: <superuser required>
  UEFI: Microsoft
    v: 92.3748.768
    date: 05.04.2021

CPU:
  Info: Dual Core
    model: Intel Core i7-6600U
    bits: 64
    type: MT MCP
    arch: Skylake
    family: 6
    model-id: 4E (78)
    stepping: 3
    microcode: EA
    cache:
      L1: 128 KiB
        desc: d-2x32 KiB; i-2x32 KiB
      L2: 512 KiB
        desc: 2x256 KiB
      L3: 4 MiB
        desc: 1x4 MiB
    flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
    bogomips: 5599
  Speed (MHz):
    avg: 904
    high: 957
    min/max: 400/3400
    cores:
      1: 889
      2: 878
      3: 895
      4: 957
  Vulnerabilities:
    Type: itlb_multihit
      status: KVM: VMX disabled
    Type: l1tf
      mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
    Type: mds
      mitigation: Clear CPU buffers; SMT vulnerable
    Type: meltdown
      mitigation: PTI
    Type: spec_store_bypass
      mitigation: Speculative Store Bypass disabled via prctl and seccomp
    Type: spectre_v1
      mitigation: usercopy/swapgs barriers and __user pointer sanitization
    Type: spectre_v2
      mitigation: Full generic retpoline, IBPB: conditional, IBRS_FW, STIBP: conditional, RSB filling
    Type: srbds
      mitigation: Microcode
    Type: tsx_async_abort
      mitigation: Clear CPU buffers; SMT vulnerable
 
Here is older Lenovo laptop #1

Code:
$ inxi -MCazy80
Machine:
  Type: Laptop System: LENOVO product: 20266 v: Lenovo Yoga 2 Pro
  serial: <filter>
  Mobo: LENOVO model: Yoga2 v: 31900058STD serial: <filter> UEFI: LENOVO
  v: 76CN43WW date: 03/30/2015
CPU:
  Topology: Dual Core model: Intel Core i7-4500U bits: 64 type: MT MCP
  family: 6 model-id: 45 (69) stepping: 1 microcode: 17 L2 cache: 4096 KiB
  Speed: 938 MHz min/max: 800/3000 MHz Core speeds (MHz): 1: 809 2: 825 3: 798
  4: 799
  Vulnerabilities: Type: itlb_multihit status: KVM: VMX unsupported
  Type: l1tf mitigation: PTE Inversion
  Type: mds
  status: Vulnerable: Clear CPU buffers attempted, no microcode; SMT vulnerable
  Type: meltdown mitigation: PTI
  Type: spec_store_bypass status: Vulnerable
  Type: spectre_v1
  mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2
  mitigation: Full generic retpoline, STIBP: disabled, RSB filling
  Type: srbds status: Vulnerable: No microcode
  Type: tsx_async_abort status: Not affected



$ pinxi -MCazy1
Machine:
  Type: Laptop
  System: LENOVO
    product: 20266
    v: Lenovo Yoga 2 Pro
    serial: <superuser required>
  Chassis:
    type: 10
    v: Lenovo Yoga 2 Pro
    serial: <superuser required>
  Mobo: LENOVO
    model: Yoga2
    v: 31900058STD
    serial: <superuser required>
  UEFI: LENOVO
    v: 76CN43WW
    date: 03/30/2015

CPU:
  Info: Dual Core
    model: Intel Core i7-4500U
    bits: 64
    type: MT MCP
    arch: Haswell
    family: 6
    model-id: 45 (69)
    stepping: 1
    microcode: 17
    cache:
      L1: 128 KiB
        desc: d-2x32 KiB; i-2x32 KiB
      L2: 512 KiB
        desc: 2x256 KiB
      L3: 4 MiB
        desc: 1x4 MiB
    flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3
    bogomips: 4788
  Speed (MHz):
    avg: 1371
    high: 2129
    min/max: 800/3000
    cores:
      1: 1017
      2: 956
      3: 1382
      4: 2129
  Vulnerabilities:
    Type: itlb_multihit
      status: KVM: VMX unsupported
    Type: l1tf
      mitigation: PTE Inversion
    Type: mds
      status: Vulnerable: Clear CPU buffers attempted, no microcode; SMT vulnerable
    Type: meltdown
      mitigation: PTI
    Type: spec_store_bypass
      status: Vulnerable
    Type: spectre_v1
      mitigation: usercopy/swapgs barriers and __user pointer sanitization
    Type: spectre_v2
      mitigation: Full generic retpoline, STIBP: disabled, RSB filling
    Type: srbds
      status: Vulnerable: No microcode
    Type: tsx_async_abort
      status: Not affected
 
Here is newer Lenovo laptop #2

Code:
$ inxi -MCazy80
Machine:
  Type: Laptop System: LENOVO product: 81VS v: Lenovo IdeaPad Slim 1-14AST-05
  serial: <filter>
  Mobo: LENOVO model: LNVNB161216 v: SDK0Z91574 WIN serial: <filter>
  UEFI: LENOVO v: CWCN19WW date: 05/18/2020
CPU:
  Topology: Dual Core model: AMD A6-9220e RADEON R4 5 COMPUTE CORES 2C+3G
  bits: 64 type: MCP family: 15 (21) model-id: 70 (112) stepping: N/A
  microcode: 6006705 L2 cache: 1024 KiB
  Speed: 2267 MHz min/max: 1200/1600 MHz Core speeds (MHz): 1: 2395 2: 2396
  Vulnerabilities: Type: itlb_multihit status: Not affected
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: spec_store_bypass
  mitigation: Speculative Store Bypass disabled via prctl and seccomp
  Type: spectre_v1
  mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2 mitigation: Full AMD retpoline, IBPB: conditional, STIBP:
  disabled, RSB filling
  Type: srbds status: Not affected
  Type: tsx_async_abort status: Not affected



$ pinxi -MCazy1
Machine:
  Type: Laptop
  System: LENOVO
    product: 81VS
    v: Lenovo IdeaPad Slim 1-14AST-05
    serial: <superuser required>
  Chassis:
    type: 10
    v: Lenovo IdeaPad Slim 1-14AST-05
    serial: <superuser required>
  Mobo: LENOVO
    model: LNVNB161216
    v: SDK0Z91574 WIN
    serial: <superuser required>
  UEFI: LENOVO
    v: CWCN19WW
    date: 05/18/2020

CPU:
  Info: Dual Core
    model: AMD A6-9220e RADEON R4 5 COMPUTE CORES 2C+3G
    bits: 64
    type: MCP
    arch: Excavator
    family: 15 (21)
    model-id: 70 (112)
    stepping: 0
    microcode: 6006705
    cache:
      L1: 192 KiB
        desc: d-2x32 KiB; i-2x64 KiB
      L2: 2 MiB
        desc: 2x1024 KiB
    flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
    bogomips: 3194
  Speed (MHz):
    avg: 1323
    high: 1452
    min/max: 1200/1600
    boost: enabled
    cores:
      1: 1195
      2: 1452
  Vulnerabilities:
    Type: itlb_multihit
      status: Not affected
    Type: l1tf
      status: Not affected
    Type: mds
      status: Not affected
    Type: meltdown
      status: Not affected
    Type: spec_store_bypass
      mitigation: Speculative Store Bypass disabled via prctl and seccomp
    Type: spectre_v1
      mitigation: usercopy/swapgs barriers and __user pointer sanitization
    Type: spectre_v2
      mitigation: Full AMD retpoline, IBPB: conditional, STIBP: disabled, RSB filling
    Type: srbds
      status: Not affected
    Type: tsx_async_abort
      status: Not affected
 
Here is HP laptop:

Code:
$ inxi -MCazy80
Machine:
  Type: Laptop System: Hewlett-Packard product: HP Pavilion 11 x360 PC
  v: 0975100002405F00010420180 serial: <filter>
  Mobo: Hewlett-Packard model: 2209 v: 57.57 serial: <filter> UEFI: Insyde
  v: F.30 date: 03/13/2018
CPU:
  Topology: Quad Core model: Intel Pentium N3540 bits: 64 type: MCP family: 6
  model-id: 37 (55) stepping: 8 microcode: 838 L2 cache: 1024 KiB
  Speed: 500 MHz min/max: 500/2666 MHz Core speeds (MHz): 1: 583 2: 583 3: 500
  4: 500
  Vulnerabilities: Type: itlb_multihit status: Not affected
  Type: l1tf status: Not affected
  Type: mds
  status: Vulnerable: Clear CPU buffers attempted, no microcode; SMT disabled
  Type: meltdown mitigation: PTI
  Type: spec_store_bypass status: Not affected
  Type: spectre_v1
  mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional,
  IBRS_FW, STIBP: disabled, RSB filling
  Type: srbds status: Not affected
  Type: tsx_async_abort status: Not affected



$ pinxi -MCazy1
Machine:
  Type: Laptop
  System: Hewlett-Packard
    product: HP Pavilion 11 x360 PC
    v: 0975100002405F00010420180
    serial: <superuser required>
  Chassis:
    type: 10
    serial: <superuser required>
  Mobo: Hewlett-Packard
    model: 2209
    v: 57.57
    serial: <superuser required>
  UEFI: Insyde
    v: F.30
    date: 03/13/2018

CPU:
  Info: Quad Core
    model: Intel Pentium N3540
    bits: 64
    type: MCP
    arch: Silvermont
    family: 6
    model-id: 37 (55)
    stepping: 8
    microcode: 838
    cache:
      L1: 224 KiB
        desc: d-4x24 KiB; i-4x32 KiB
      L2: 2 MiB
        desc: 2x1024 KiB
    flags: ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3
    bogomips: 4333
  Speed (MHz):
    avg: 954
    high: 2037
    min/max: 500/2666
    cores:
      1: 500
      2: 506
      3: 774
      4: 2037
  Vulnerabilities:
    Type: itlb_multihit
      status: Not affected
    Type: l1tf
      status: Not affected
    Type: mds
      status: Vulnerable: Clear CPU buffers attempted, no microcode; SMT disabled
    Type: meltdown
      mitigation: PTI
    Type: spec_store_bypass
      status: Not affected
    Type: spectre_v1
      mitigation: usercopy/swapgs barriers and __user pointer sanitization
    Type: spectre_v2
      mitigation: Full generic retpoline, IBPB: conditional, IBRS_FW, STIBP: disabled, RSB filling
    Type: srbds
      status: Not affected
    Type: tsx_async_abort
      status: Not affected
 
Self built around 2014

brian@brian-desktop:~$ inxi -MCazy80
Machine:
Type: Desktop Mobo: ASRock model: B150M Pro4 serial: <filter>
UEFI: American Megatrends v: P1.60 date: 11/09/2015
CPU:
Topology: Dual Core model: Intel Pentium G4400 bits: 64 type: MCP
arch: Skylake-S family: 6 model-id: 5E (94) stepping: 3 microcode: EA
L2 cache: 3072 KiB
flags: lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 13199
Speed: 3300 MHz min/max: 800/3300 MHz Core speeds (MHz): 1: 3300 2: 3300
Vulnerabilities: Type: itlb_multihit status: KVM: VMX disabled
Type: l1tf
mitigation: PTE Inversion; VMX: conditional cache flushes, SMT disabled
Type: mds mitigation: Clear CPU buffers; SMT disabled
Type: meltdown mitigation: PTI
Type: spec_store_bypass
mitigation: Speculative Store Bypass disabled via prctl and seccomp
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional,
IBRS_FW, STIBP: disabled, RSB filling
Type: srbds mitigation: Microcode
Type: tsx_async_abort status: Not affected
brian@brian-desktop:~$ pinxi -MCazy1
Machine:
Type: Desktop
Mobo: ASRock
model: B150M Pro4
serial: <superuser required>
UEFI: American Megatrends
v: P1.60
date: 11/09/2015

CPU:
Info: Dual Core
model: Intel Pentium G4400
bits: 64
type: MCP
arch: Skylake-S
family: 6
model-id: 5E (94)
stepping: 3
microcode: EA
cache:
L1: 128 KiB
desc: d-2x32 KiB; i-2x32 KiB
L2: 512 KiB
desc: 2x256 KiB
L3: 3 MiB
desc: 1x3 MiB
flags: ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
bogomips: 6599
Speed (MHz):
avg: 3300
min/max: 800/3300
cores:
1: 3300
2: 3300
Vulnerabilities:
Type: itlb_multihit
status: KVM: VMX disabled
Type: l1tf
mitigation: PTE Inversion; VMX: conditional cache flushes, SMT disabled
Type: mds
mitigation: Clear CPU buffers; SMT disabled
Type: meltdown
mitigation: PTI
Type: spec_store_bypass
mitigation: Speculative Store Bypass disabled via prctl and seccomp
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2
mitigation: Full generic retpoline, IBPB: conditional, IBRS_FW, STIBP: disabled, RSB filling
Type: srbds
mitigation: Microcode
Type: tsx_async_abort
status: Not affected

brian@brian-desktop:~$
 
Last edited:
And last, here is Asus laptop:

Code:
$ inxi -MCazy80
Machine:
  Type: Laptop System: ASUSTeK product: X401U v: 1.0 serial: <filter>
  Mobo: ASUSTeK model: X401U v: 1.0 serial: <filter> UEFI: American Megatrends
  v: X401U.204 date: 05/08/2012
CPU:
  Topology: Dual Core model: AMD E1-1200 APU with Radeon HD Graphics bits: 64
  type: MCP family: 14 (20) model-id: 2 stepping: N/A microcode: 5000119
  L2 cache: 512 KiB
  Speed: 778 MHz min/max: 777/1400 MHz Core speeds (MHz): 1: 777 2: 779
  Vulnerabilities: Type: itlb_multihit status: Not affected
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: spec_store_bypass status: Vulnerable
  Type: spectre_v1
  mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2
  mitigation: Full AMD retpoline, STIBP: disabled, RSB filling
  Type: srbds status: Not affected
  Type: tsx_async_abort status: Not affected



$ pinxi -MCazy1
Machine:
  Type: Laptop
  System: ASUSTeK
    product: X401U
    v: 1.0
    serial: <superuser required>
  Mobo: ASUSTeK
    model: X401U
    v: 1.0
    serial: <superuser required>
  UEFI: American Megatrends
    v: X401U.204
    date: 05/08/2012

CPU:
  Info: Dual Core
    model: AMD E1-1200 APU with Radeon HD Graphics
    bits: 64
    type: MCP
    arch: Bobcat
    family: 14 (20)
    model-id: 2
    stepping: 0
    microcode: 5000119
    cache:
      L1: 128 KiB
        desc: d-2x32 KiB; i-2x32 KiB
      L2: 1024 KiB
        desc: 2x512 KiB
    flags: ht lm nx pae sse sse2 sse3 sse4a ssse3 svm
    bogomips: 2794
  Speed (MHz):
    avg: 893
    high: 1009
    min/max: 777/1400
    boost: disabled
    cores:
      1: 1009
      2: 778
  Vulnerabilities:
    Type: itlb_multihit
      status: Not affected
    Type: l1tf
      status: Not affected
    Type: mds
      status: Not affected
    Type: meltdown
      status: Not affected
    Type: spec_store_bypass
      status: Vulnerable
    Type: spectre_v1
      mitigation: usercopy/swapgs barriers and __user pointer sanitization
    Type: spectre_v2
      mitigation: Full AMD retpoline, STIBP: disabled, RSB filling
    Type: srbds
      status: Not affected
    Type: tsx_async_abort
      status: Not affected
 
Self built around 2014
Brian, I think you missed that this is a comparison between inxi output and pinxi output (you forgot pinxi).

These are the commands to run (if I've got them right myself! ;)):

Code:
inxi -MCazy  # Change to -MCazy80 if you get an error without it

# Then...

pinxi -MCazy1  # I guess that the "1" at the end is important

# If you don't have pinxi installed (most people won't), install it like this:
cd /usr/local/bin && sudo wget -O pinxi smxi.org/pinxi && sudo chmod +x pinxi

# If you do have pinxi installed, it needs to be upgraded like this:
sudo pinxi -U

@h2-1 can correct me if this isn't right, or if he wants to run other/different options. Or if he wants us to run pinxi with the debugger options.
 
Last edited:

Members online


Top