Bonum Certa Men Certa

Lenovo Ships ThinkBook 15 Gen2 ITL Series Full of UEFI BIOS ACPI Bugs, Releases Half a Dozen BIOS Updates, and Doesn’t Fix the Bugs

Guest post by Ryan, reprinted with permission from the original

For those who wonder what an OEM like Lenovo actually ships in their uEFI firmware, and what Microsoft Windows simply works around and helps them hide, take a gander at the Linux kernel’s log below.



Linux works around the bugs too, but Windows actually hides them from you!



Here’s a Google search from some of LOL NO VO’s other satisfied customers, with their “business grade” solution.



Lenovo’s “support” people in the forums don’t know anything, but they mostly deal with crap like Windows and tell people how to turn it off and back on again.



Here’s an Ubuntu bug and what a Ubuntu developer has to say about at least some of this. (The person in question has a Lenovo Legion Y540-15IRH according to his DMI Decode dump. Which suggests these errors affect more than one of their product lines.)



But they slapped an Ubuntu Certified label on this ThinkBook 15 Gen2 ITL model I use, and other than this damned mess I had to sort out with the AX210 Wifi chip, it’s an okay laptop.



I just wish it wouldn’t shove all of this garbage in my face every time I boot it up. It appears right before the Debian bootsplash, and although LOL NO VO Ubuntu Certified this thing with some sort of Linux 5.6-OEM kernel that Ubuntu 20.04 autodetects, I can’t imagine that it could work very well with that kernel. The Wifi is still touch and go and you have to put it in AC only mode and cherry pick Linux 5.10.70 out of Debian-Proposed (or wait until Debian 11.1 to install it, but you can probably make it work okay until you can cherry pick the newer kernel. Just remember to turn off fast boot in Windows and shut the system down to fully clear the Windows driver out of the chipset’s memory first!).



Now, I will directly quote the Ubuntu developer, Alex Hung:



“There are two types of ACPI errors observed: AE_ALREADY_EXISTS and AE_NOT_FOUND



The former, AE_ALREADY_EXISTS, usually happens



1) when BIOS loads multiple SSDTs (in /sys/firmware/acpi/tables) that contains the objects with the same names (and usually the same functions too). Naming conflicts prevent kernel to load all of them correctly.



2) BIOS’s ACPI methods are not serialized and multiple calls the same methods occur.



I would guess we are seeing scenario 1 here. They are usually harmless because a copy of working SSDT is loaded while duplicated ones are discarded.



The later, AE_NOT_FOUND, is the opposite. This occurs when BIOS does NOT load SSDTs and therefore kernel is not able to get information and perform accordingly.



Neither types of error messages can be fixed without BIOS fixes.



Fortunately, all of the failing ACPI methods are optional, and there are good chances that Linux / Ubuntu will work without them. There are three types of devices *might* be affected according to the error messages:



1. USB (\_SB.PCI0.XHC.RHUB…)- but USB ports and devices should just-work without BIOS code, which are usually for OEM customization.



2. Touchpad (\_SB.PCI0.I2Cx…) – error messages are reported for i2c-2 and i2c-3, but it is likely the touchpad is connected to i2c-1. Please check whether you are experience problems with your touchpad.



3. Switchable graphics (\_SB.PCI0.PEG0…)- but error messages are “AE_ALREADY_EXISTS”. lspci also shows no discrete VGA present on this system, and nothing to worry about.”



In other words:



Lenovo has made a damned mess, but left it there because of reasons, including the fact that operating systems don’t generally use uEFI drivers for anything because operating systems have their own, they perform better, and if I’m remembering the gist of this, once you exit boot services, you can’t use the ones from the system firmware anyway. Everything on this laptop works fine, including the HDMI port. The only exception is the fingerprint scanner built into the power button, but who cares?



Errors for touchpad devices that don’t even exist where it’s printing the error message for? My touchpad works fine. So, whatever I guess. I use a bluetooth mouse anyway.



"Regardless, I think Techrights needs to add this to why uEFI is no good."Switchable (hybrid) graphics errors. I don’t have hybrid graphics on this system. In fact, when laptops usually ship with that, they tend to use an Nvidia “card” for the high performance chip, and I’ve had enough of Nvidia’s proprietary driver for 10 life times already. In fact, there _may_ be a BIOS option regarding hybrid graphics in my firmware setup. I may look there at some point and see if I can shut it up. Lenovo may have just left the setting on/off for laptops they ship like that?



Of course, some people on Gigabyte motherboards, as well as Dell and Acer laptops, seem to have these problems and some that actually affect the operation of the computer. So I guess Lenovo isn’t the absolute worst.



Regardless, I think Techrights needs to add this to why uEFI is no good. These are the same class of problems, and then some, that the buggiest of Legacy PC BIOS systems were known to sometimes have, and we were lied to and told that Microsoft and Intel would clean up that mess with uEFI, and they obviously didn’t. Windows is just the fridge that the equally proverbial cockroaches hide under.



However harmless some of these errors are, in practice, to a person who didn’t know better, they make Linux appear broken when it’s not.



But this behavior isn’t new at Microsoft.



What the user is supposed to do is feel uncomfortable, and when he has bugs, suspect that the problem is [the competitor’s product], and then go buy [our product].

Former Microsoft Senior Vice President Brad Silverberg


Regardless, here’s the eyesore I get to read about on my screen when my system is booting. Thanks, Lenovo.






[ 0.175571] ACPI: Added _OSI(Module Device)
[ 0.175571] ACPI: Added _OSI(Processor Device)
[ 0.175571] ACPI: Added _OSI(3.0 _SCP Extensions)
[ 0.175571] ACPI: Added _OSI(Processor Aggregator Device)
[ 0.175571] ACPI: Added _OSI(Linux-Dell-Video)
[ 0.175571] ACPI: Added _OSI(Linux-Lenovo-NV-HDMI-Audio)
[ 0.175571] ACPI: Added _OSI(Linux-HPI-Hybrid-Graphics)
[ 0.223165] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.TXHC.RHUB.SS01._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223171] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223173] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223174] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.TXHC.RHUB.SS01._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223177] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223178] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223180] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.TXHC.RHUB.SS02._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223183] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223184] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223185] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.TXHC.RHUB.SS02._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223187] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223188] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223190] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.TXHC.RHUB.SS03._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223192] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223194] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223195] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.TXHC.RHUB.SS03._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223197] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223198] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223200] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.TXHC.RHUB.SS04._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223202] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223204] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223205] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.TXHC.RHUB.SS04._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223207] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223208] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223210] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS01._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223212] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223213] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223214] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS01._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223217] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223218] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223337] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS02._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223340] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223341] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223342] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS02._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223344] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223346] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223347] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS03._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223349] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223351] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223352] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS03._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223354] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223355] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223407] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS04._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223409] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223411] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223412] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS04._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223414] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223415] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223417] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS05._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223419] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223421] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223422] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS05._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223424] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223425] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223427] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS06._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223429] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223430] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223431] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS06._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223433] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223435] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223436] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS07._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223438] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223440] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223441] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS07._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223443] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223444] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223446] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS08._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223448] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223450] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223450] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS08._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223453] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223454] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223572] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS09._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223574] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223576] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223577] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS09._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223579] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223580] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223698] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS10._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223700] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223702] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223703] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.HS10._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223705] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223706] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223824] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.SS01._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223826] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223827] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223828] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.SS01._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223830] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223832] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223833] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.SS02._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223836] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223837] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223838] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.SS02._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223840] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223842] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223843] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.SS03._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223845] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223847] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223848] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.SS03._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223850] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223851] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223853] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.SS04._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223855] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223856] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223857] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.SS04._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223859] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223861] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223862] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.SS05._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223864] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223866] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223867] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.SS05._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223869] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223870] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223872] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.SS06._UPC], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223874] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223875] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.223876] ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.XHCI.RHUB.SS06._PLD], AE_ALREADY_EXISTS (20200925/dswload2-326)
[ 0.223878] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-220)
[ 0.223880] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0014)
[ 0.224477] ACPI BIOS Error (bug): Could not resolve symbol [_SB.PC00.I2C0.TPD0], AE_NOT_FOUND (20200925/dswload2-162)
[ 0.224480] ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20200925/psobject-220)
[ 0.224481] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0010)
[ 0.224500] ACPI BIOS Error (bug): Could not resolve symbol [_SB.PC00.I2C0.TPL1], AE_NOT_FOUND (20200925/dswload2-162)
[ 0.224502] ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20200925/psobject-220)
[ 0.224503] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0010)
[ 0.225016] ACPI BIOS Error (bug): Could not resolve symbol [_SB.PCI0], AE_NOT_FOUND (20200925/dswload2-162)
[ 0.225018] ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20200925/psobject-220)
[ 0.225020] ACPI: Skipping parse of AML opcode: OpcodeName unavailable (0x0010)
[ 0.225234] ACPI: 19 ACPI AML tables successfully acquired and loaded
[ 0.225830] ACPI Error: AE_NOT_FOUND, While resolving a named reference package element – ^SPI1.SPFD.CVFD (20200925/dspkginit-438)
[ 0.225833] ACPI Error: AE_NOT_FOUND, While resolving a named reference package element – ^SPI1.SPFD.CVFD (20200925/dspkginit-438)
[ 0.225836] ACPI Error: AE_NOT_FOUND, While resolving a named reference package element – ^XHCI.RHUB.HS04.VI2C (20200925/dspkginit-438)
[ 0.225845] ACPI Error: AE_NOT_FOUND, While resolving a named reference package element – ^XHCI.RHUB.HS04.VI2C (20200925/dspkginit-438)



Recent Techrights' Posts

RMS Was Right 35 Years Ago
Stallman’s viewpoints have remained the same
Fedora is IBM and There's Hardly Any Community Left
It's more like an onboarding mechanism for unpaid labour at (and for) IBM
 
Cracks and Holes in Microsoft's Slop Bubble (Also, Windows is Declining)
"More Bad News For Xbox As Microsoft Blames Gaming For An Annual Decline In Its PC Business"
Microsoft's Debt Exploded by More Than 20 Billion Dollars This Past Year, Says Microsoft
Expect more mass layoffs
Strike at the EPO Today
Next month we'll start a new EPO series
State of the Slop and The Register MS Runs Ads as 'Articles'
Yesterday we could not find much slop about "Linux"
Gemini Links 30/01/2026: Announcing Crossyword and SYN Attack
Links for the day
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Thursday, January 29, 2026
IRC logs for Thursday, January 29, 2026
Gemini Links 29/01/2026: Naps, Letting Go, and Terribly Cold Weather
Links for the day
Links 29/01/2026: Kennedy Center Officials Resigning and Amazon to Cut 16,000 Jobs
Links for the day
Goodbyes to Red Hat and IBM
PIPs let them do the same with less "wasted" on severance or with obscene narrative-shaping
The Need to Understand the Projection Tactics Against RMS
There's an old and common saying (or "wisdom") about who's guilty when there's a fart in elevators (lifts)
Links 29/01/2026: Neocities Is Blocked by Microsoft, “Intellectual Freedom Centers” as the New "Intelligent Design"
Links for the day
Microsoft XBox Dying Not Only as a Console, Reveals Microsoft
Microsoft is trying to rebrand or repurpose the brand
Don't be Mistaken, Microsoft Boasts About Money That Does Not Exist and Revenue (Buying From Oneself!) Is Not Income
the company's debt grew
IBM's Financial Performance in IBM's Own Words: Money Down, Debt Up Sharply
IBM isn't a healthy company
In Dominica, GNU/Linux Has Risen to All-Time High in 2026
a lot of America is moving to Free software this year
The "Alicante Mafia" - Part XV - EPO is on Strike Tomorrow, Lots to be Angry About (Except Money)
We'll soon finish the series
Gemini Links 29/01/2026: "Lady Audley's Secret" and "The Value Of Our Fear" (Carney's Speech)
Links for the day
Emmanuel Macron on Europe's GAFAM Addiction/Dependence: "There is No Such Thing as Happy Vassalage"
Microsoft has long worked to prevent commodification
It's Official, Mass Layoffs at IBM Again (2026)
In a matter of days we'll just see how much IBM's debt has grown
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Wednesday, January 28, 2026
IRC logs for Wednesday, January 28, 2026
Laos and Microsoft: About 10% Windows, 0% Bing
There are many more nations like it
EPO Technical Meetings Show no Breakthroughs, a Strike Goes Ahead This Friday
Apparently there was another (fourth) meeting today [...] The industrial actions are working already
Google News as the Sole Source of Slop About "Linux", a Feeder of Slopfarms or Serial Sloppers
At least it's no longer hard to 'contain' the slop problem, knowing which domains are the culprits and seeing that Google is their main 'feeder'
IBM to Announce 'Results' Shortly, Expect Lots of Chaff Like "Quantum" and "Hey Hi" (Nothing Material to Show)
We're still seeing layoffs and an exodus
Links 28/01/2026: ChatGPT Has Financial Problems, White House Sharing Fakes (or Deepfakes) in Official Accounts/Sites
Links for the day
Gemini Links 28/01/2026: FlatCube NES Port Finished and "Why I Still Write on the Small Web in 2026"
Links for the day
Upcoming Techrights Series About the Public Appearances of Richard M. Stallman (RMS) in the United States
we plan to drop all pretences about "Open Source" and instead focus on Software Freedom
Upcoming Techrights Series About the Experiences of EPO Insiders
We'll start the new series some time next week
Links 28/01/2026: Microsoft Ordered to Stop Spying on School Children, Apple's Brand Tarnished by Its Complicity With Human Rights Abusers
Links for the day
Upcoming Techrights Series About the Failure of the Solicitors Regulation Authority (SRA) to Stop Hired Guns Who Work for Americans That Abuse Women
The SRA has demonstrated nothing but considerable incompetence at many levels
The "Alicante Mafia" - Part XIV - The EPO Vice-President Steve Rowan and the Hidden Alicante Connection is a Big Deal
We'll soon take a closer look at Ernst
Gemini Links 28/01/2026: Particle and AirMIDI
Links for the day
Amandine Jambert (EDPB/CNIL/FSFE), motive for lying, trust in blockchain and encryption
Reprinted with permission from Daniel Pocock
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Tuesday, January 27, 2026
IRC logs for Tuesday, January 27, 2026