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

The Mainstream Media Took 4 Days to Realise Microsoft Shut Down Its Operations in Pakistan and Fired Everybody
We estimate that Microsoft has had about 29,000 layoffs since January
“Twibel” Actions Against Comedians (and Why It's a Truly Low Blow)
they try to make up in quantities for a lack of merit or quality
 
Links 06/07/2025: Climate Change and "The Right to Criticise"
Links for the day
PCLinuxOS Sites Coming Back, Gradually
let's just be patient
Social Control Media, Even If Based on Free Software, Still Has Many Problems
a distraction from what actually mattered and still matters
IBM is Not Your Master
IBM makes friends with people who exclude the majority of the population: women
Help Fund the Free Software Foundation (FSF)
If you have some dollars to spare, go support the FSF
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Saturday, July 05, 2025
IRC logs for Saturday, July 05, 2025
A Short History of Attacks on Techrights (and Boycott Novell Before That)
good opportunity to tell again the story of several (not all) attempts to silence us
Leadership in Free Software
Don't let IBM lead. It's a terrible flag bearer.
Linux Foundation Apparently Flirting With Slop (Marketing by LLM-Generated SPAM)
The Web is in a really bad state!
COVID-19 Sped Up Site Improvements in Techrights
A few months later we created our very own IRC network
Gemini Links 05/07/2025: Negative Questions and 'Touching Grass' (Going Outside)
Links for the day
Links 05/07/2025: Dalai Lama Succession as 90th Birthday Approaches, 40 deg C in China
Links for the day
Links 05/07/2025: Hungary and US Defecting to Russia, "Google's Hotseat Hypocrisy"
Links for the day
Gemini Links 05/07/2025: 4th of July 2025 and "Zig Roadmap 2026"
Links for the day
How to Combat the Exploitation and Abuse by Microsoft GitHub
Not to mention corruption and crimes against women
Bryan Lunduke is Actually Sending His Audience to Attack People
"[Lunduke] is actually sending his audience to attack people."
Even The Right Wing is Rejecting Bryan Lunduke
no wonder he became so irrelevant and marginal
Microsoft's MSN Helps Microsoft Spread Lies About the Layoffs' Scale (Well Over 25,000 People Laid Off This Year)
There seem to be monopolies on lies and on truth
The Death of X Has Been Greatly Exaggerated (by Compromised Media)
X.Org Server is alive and well
Rewriting Things in Rust
How far would you go?
In 2025 Everything is "AI". Remember Blockchains?
Talk about what companies and things (services, products, software) actually do, not the labels they use
Julian Assange Has Been Free for a Year
Julian Assange and I disagreed on some things
Monopolies and Scalping
Monopolies gravitate towards price hikes
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Friday, July 04, 2025
IRC logs for Friday, July 04, 2025
Microsoft's August Layoffs Wave: "August is Confirmed for Additional Performance Based Cuts"
"August is confirmed for additional performance based cuts from the recent connects along with additional organizational cuts."
What Microsoft Reputation Laundering (With a Weaponised Law Degree) Looks Like in a Foreign Continent
You would expect this in uncivilised and primitive countries
Slopwatch: LLMs 'Write' Fake or Distorted 'News' About "Linux"
LLM slop disguised as news
Links 04/07/2025: Google Replaces the Web With Slop, "AI Might Kill Us All"
Links for the day
Gemini Links 04/07/2025: Mindfulness and F1
Links for the day
Weeks After Microsoft Bankruptcy in Russia the Company Shuts Down in Pakistan, Too
Last month Windows' share in Pakistan fell to an all-time low
Rob Musial's June 2025 Additions of Malware in Proprietary Software
Via the GNU Web site this week
Links 04/07/2025: Microsoft's H-1B Visa Applications Show Another Crisis Unfolding, Many More Deep Cuts and Shutdowns Revealed, Complete Microsoft Exits
Links for the day
Gemini Links 04/07/2025: A Day To Remember and "Stop Killing Games"
Links for the day
Crime and Corruption at Microsoft GitHub Cannot be Covered Up by SLAPPs in Another Continent
We'll write about this for a long time to come
Slop Videos Are Disappointing Garbage, Nothing New, Just Brute Force up on Display or a Pedestal of Slop
Slop videos aren't a new thing
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Thursday, July 03, 2025
IRC logs for Thursday, July 03, 2025
The War on Local Storage (People Hosting Their Files Locally and Privately)
There's nothing wrong with controlling one's computing
What Digital Independence Means
Independence in the digital realms means abandoning platforms like GitHub, not just rejecting proprietary software
NVidia is a Bubble
they temporarily see fortunes and wrongly assume perpetuity thereof
Fedora Does Not Care About Diversity and Inclusion, It's About Optics (Corporate Image)
any notion of inclusion is superficial and misleading
Don't Buy the Excuses for Microsoft's Mass Layoffs
Back in the 90s, Microsoft bought a lot of companies to get and stay ahead