Driving forward in Android drivers

Google’s own Project Zero security research effort, which often finds and publishes vulnerabilities in both other companies’ and its own products, set its sights on Android once more, this time focusing on third-party kernel drivers.

Android’s open-source ecosystem has led to an incredible diversity of manufacturers and vendors developing software that runs on a broad variety of hardware. This hardware requires supporting drivers, meaning that many different codebases carry the potential to compromise a significant segment of Android phones. There are recent public examples of third-party drivers containing serious vulnerabilities that are exploited on Android. While there exists a well-established body of public (and In-the-Wild) security research on Android GPU drivers, other chipset components may not be as frequently audited so this research sought to explore those drivers in greater detail.

↫ Seth Jenkins

They found a whole host of security issues in these third-party kernel drivers in phones both from Google itself as well as from other companies. An interesting point the authors make is that because it’s getting ever harder to find 0-days in core Android, people with nefarious intent are looking at other parts of an Android system now, and these kernel drivers are an inviting avenue for them. They seem to focus mostly on GPU drivers, for now, but it stands to reason they’ll be targeting other drivers, too.

As usual with Android, the discovered exploits were often fixed, but the patches took way, way too long to find their way to end users due to the OEMs lagging behind when it comes to sending those patches to users. The authors propose wider adoption of Android APEX to make it easier to OEMs to deliver kernel patches to users faster.

I always like the Project Zero studies and articles, because they really take no prisoners, and whether they’re investigating someone else like Microsoft or Apple, or their own company Google, they go in hard, do not surgarcoat their findings, and apply the same standards to everyone.

Microsoft delays Recall feature

After initially announcing it was going to change its Recall feature and then pulling the preview Windows release containing the feature, Microsoft has now given in almost entirely and is delaying Recall altogether. Instead of shipping it on every new Copilot+ PC, they’re going to release it as an optional feature for Windows Insiders.

Today, we are communicating an additional update on the Recall (preview) feature for Copilot+ PCs. Recall will now shift from a preview experience broadly available for Copilot+ PCs on June 18, 2024, to a preview available first in the Windows Insider Program (WIP) in the coming weeks. Following receiving feedback on Recall from our Windows Insider Community, as we typically do, we plan to make Recall (preview) available for all Copilot+ PCs coming soon.

↫ Pavan Davuluri on the Windows blog

It’s incredible just how much Microsoft has bungled the launch of this feature, as it’s now almost overshadowing everything else that comes with these new ARM laptops. They rushed to shove machine learning into a major feature, and didn’t stop to think about the consequences.

Typical Silicon Valley behaviour.

Canonical and DeepComputing announce new RISC-V laptop shipping with Ubuntu

Speaking of PCs that don’t use x86 chips, Canonical and DeepComputing today announced a new RISC-V laptop running Ubuntu, available for pre-order in a few days. It’s the successor to the DC-ROMA, which shipped last year.

Adding to a long list of firsts, the new DC-ROMA laptop II is the first to feature SpacemiT’s SoC K1 – with its 8-cores RISC-V CPU running at up to 2.0GHz with 16GB of memory. This significantly doubled its overall performance and energy efficiency over the previous generation’s 4-cores SoC running at 1.5GHz. Moreover, SpacemiT’s SoC K1 is also the world’s first SoC to support RISC-V high performance computing RVA 22 Profile RVV 1.0 with 256 bit width, and to have powerful AI capabilities with its customised matrix operation instruction based on IME Group design principle! 

This second-generation DC-ROMA RISC-V laptop also features an all-metal casing making it more durable, as well as improving heat dissipation and more on its premium class look and feel compared to previous generation.

↫ Canonical’s blog

The DC-ROMA II is clearly aimed at developers, as it has what is essentially a GeekPort on the side of the laptop, to aid in porting and debugging software. Aside from that and the RISC-V processor, it’s a rather mid-range kind of device, and no pricing has been published yet so I’m not sure if this is something I could afford for an OSNews review. Once the preorders go live in a few days, we’ll know more.

If you’d like to see this RISC-V laptop make an appearance on OSNews, let me know, and I’ll see what I can do.

The Qualcomm Snapdragon X architecture deep dive: getting to know Oryon and Adreno X1

In the last 8 months Qualcomm has made a lot of interesting claims for their high-performance Windows-on-Arm SoC – many of which will be put to the test in the coming weeks. But beyond all the performance claims and bluster amidst what is shaping up to be a highly competitive environment for PC CPUs, there’s an even more fundamental question about the Snapdragon X that we’ve been dying to get to: how does it work?

Ahead of next week’s launch, then, we’re finally getting the answer to that, as today Qualcomm is releasing their long-awaited architectural disclosure on the Snapdragon X SoC. This includes not only their new, custom Arm v8 “Oryon” CPU core, but also technical disclosures on their Adreno GPU, and the Hexagon NPU that backs their heavily-promoted AI capabilities. The company has made it clear in the past that the Snapdragon X is a serious, top-priority effort for the company – that they’re not just slapping together a Windows SoC from their existing IP blocks and calling it a day – so there’s a great deal of novel technology within the SoC.

↫ Ryan Smith at AnandTech

I cannot wait until AnandTech can move beyond diving into information provided by Qualcomm, and can start doing their own incredibly in-depth benchmarks and research. Assuming the effort succeeds, the Snapdragon X line will most likely form the backbone of ARM PCs for years – if not decades – to come, meaning that when you and I go shopping for a new laptop, this chip will be the one heavily promoted by stores and outlets.

How closely independent benchmarks line up with Qualcomm’s eight months of promises and cherry-picked benchmarks will also tell us a lot about how trustworthy the company will be about the performance of its chips going forward. In smartphones – where we mostly see Qualcomm today – performance simply doesn’t matter as much, but when you’re dealing with laptops, and in the future possibly even desktops, performance suddenly matters a lot more, and Qualcomm’s claims will be facing a level of scrutiny and detail I don’t think they’ve ever really had to deal with before.

PC enthusiasts don’t mess around.

If the Linux support turns out to be as solid as Qualcomm claims, and if the performance figures they’ve been putting out are verified by quality independent reviewers like the people at AnandTech, I honestly don’t think my next laptop will be using x86. I just hope weird companies like Chuwi will release a version of their MiniBook X with one a Qualcomm chip, because I’ll be damned if I go back to anything larger than 10″.

Exclusive: Mozilla reverses course, re-lists extensions it removed in Russia

Two days ago, I broke the news that Mozilla removed several Firefox extensions from the add-on store in Russia, after pressure from Russian censors. Mozilla provided me with an official statement, which seemed to highlight that the decision was not final, and it seems I was right – today, probably helped by the outcry our story caused, Mozilla has announced it’s reversing the decision. In a statement sent to me via email, an unnamed Mozilla spokesperson says:

In alignment with our commitment to an open and accessible internet, Mozilla will reinstate previously restricted listings in Russia. Our initial decision to temporarily restrict these listings was made while we considered the regulatory environment in Russia and the potential risk to our community and staff.

As outlined in our Manifesto, Mozilla’s core principles emphasise the importance of an internet that is a global public resource, open and accessible to all. Users should be free to customise and enhance their online experience through add-ons without undue restrictions.

By reinstating these add-ons, we reaffirm our dedication to:

– Openness: Promoting a free and open internet where users can shape their online experience.
– Accessibility: Ensuring that the internet remains a public resource accessible to everyone, regardless of geographical location.

We remain committed to supporting our users in Russia and worldwide and will continue to advocate for an open and accessible internet for all.

↫ Mozilla spokesperson via email

I’m glad Mozilla reversed its decision, because giving in to a dictatorship never ends well – it starts with a few extensions today, but ends up with the kind of promotional tours for China that Tim Cook goes on regularly. Firefox is a browser that lives or dies by its community, and if that community is unhappy with the course of Mozilla or the decisions it makes, especially ones that touch on core values and human rights, it’s not going to end well for them.

That being said, this does make me wonder what would’ve happened if the forum thread that started all this died in obscurity and never made its way to the media. Would Mozilla have made the same reversal?

Chrome OS switching to the Android Linux kernel and related Android subsystems

Surprisingly quietly, in the middle of Apple’s WWDC, Google’s ChromeOS team has made a rather massive announcement that seems to be staying a bit under the radar. Google is announcing today that it is replacing many of ChromeOS’ current relatively standard Linux-based subsystems with the comparable subsystems from Android.

To continue rolling out new Google AI features to users at a faster and even larger scale, we’ll be embracing portions of the Android stack, like the Android Linux kernel and Android frameworks, as part of the foundation of ChromeOS. We already have a strong history of collaboration, with Android apps available on ChromeOS and the start of unifying our Bluetooth stacks as of ChromeOS 122.

↫ Prajakta Gudadhe and Alexander Kuscher on the Chromium blog

The benefits to Google here are obvious: instead of developing and maintaining two variants of the Linux kernel and various related subsystems, they now only have to focus on one, saving money and time. It will also make it easier for both platforms to benefit from new features and bugfixes, which should benefit users of both platforms quite a bit.

As mentioned in the snippet, the first major subsystem in ChromeOS to be replaced by its Android counterpart is Bluetooth. ChromeOS was using the BlueZ Bluetooth stack, the same one used by most (all?) Linux distributions today, which was initially developed by Qualcomm, but has now switched over to using Fluoride, the one from Android.

According to Google, Fluoride has a number of benefits over BlueZ. It runs almost entirely in userspace, as opposed to BlueZ, where more than 50% of the code resides in the kernel. In addition, Fluoride is written in Rust, and Google claims it has a simpler architecture, making it easier to perform testing. Google also highlights that Fluoride has a far larger userbase – i.e., all Android users – which also presents a number of benefits.

Google performed internal tests to measure the improvements as a result from switching ChromeOS from BlueZ to Fluoride, and the test results speak for themselves – pairing is faster, pairing fails less often, and reconnecting an already paired device fails less often. With Bluetooth being a rather problematic technology to use, any improvements to the user experience are welcome.

At the end of Google’s detailed blog post about the switch to Fluoride, the company notes that it intends for the project as whole – which is called Project Floss – to be a standalone open source project, capable of running on any Linux distribution.

↫ Russ Lindsay, Abhishek Pandit-Subedi, Alain Michaud, and Loic Wei Yu Neng on the chromeOS dev website

We aspire to position Project Floss as a standalone open source project that can reach beyond the walls of Google’s own operating system in a way where we can maximize the overall value and agility of the larger Bluetooth ecosystem. We also intend to support the Linux community as a whole with the goal that Floss can easily run on most Linux distributions.

If Fluoride can indeed deliver tangible, measurable benefits in Bluetooth performance on Linux desktops, I have no doubt quite a few distributions will be more than willing to switch over. Bluetooth is used a lot, and if Fedora, Ubuntu, Arch, and so on, can improve the Bluetooth experience by switching over, I’m pretty sure they will, or at least consider doing so.

Arm, Qualcomm legal battle seen disrupting AI-powered PC wave

The new Windows on ARM Copilot+ PC thing, running on Qualcomm’s Snapdragon X Elite and Pro chips, isn’t even out the door yet, and we’re already dealing with legal proceedings.

But the main conversation among conference attendees was over how a contract dispute between Arm Holdings and Qualcomm, which work together to make the chips powering these new laptops, could abruptly halt the shipment of new PCs that industry leaders expect will make Microsoft and its partners billions of dollars.

↫ Max A. Cherney at Reuters

The basic gist of the story is as follows. Qualcomm acquired a company named Nuvia, founded by former Apple processor engineers, in order to gain new technology to build its Snapdragon X Elite and Pro chips. Nuvia was planning on developing ARM chips for servers, but after the acquisition, Qualcomm changed their plans and repurposed their technology for use in laptops – the new X chips. ARM claims that Nuvia was only granted a license for server use, and not laptop use. Qualcomm, meanwhile, argued that it has a broad license to use ARM for pretty much anything, and as such, that any possible restrictions Nuvia had are irrelevant.

While this all sounds like very rich corporations having a silly legal slapfight, it could have real consequences. If the legal case goes very, very wrong for Qualcomm, it could halt the sale of devices powered by the Snapdragon X chips well before they’re even shipping. I doubt it’ll get that far – it rarely does, and there’s some big names and big reputations at play here – but it does highlight the absurdity of how the ARM ecosystem works.

Speaking of the ARM ecosystem, Qualcomm isn’t the only ARM chip makers dying to break into the PC market. Qualcomm currently has a weird exclusivity agreement with Microsoft where it’s the only ARM chip supplier for PCs, but that agreement is running out soon. Another player that’s ready to storm this market once that happens is MediaTek, who is also developing a chip geared towards Microsoft’s Copilot+ specifications, with a release target of 2025. Let’s hope MediaTek will be as forthcoming with Linux support as Qualcomm surprisingly has been, but I have my sincerest doubt.

Linus Torvalds: extensible scheduler “sched_ext” in Linux 6.11

The extensible scheduler “sched_ext” code has proven quite versatile for opening up better Linux gaming performance, more quickly prototyping new scheduler changes, Ubuntu/Canonical has been evaluating it for pursuing a more micro-kernel like design, and many other interesting approaches with it. Yet it’s remained out of tree but that is now changing with the upcoming Linux 6.11 cycle.

Linus Torvalds as the benevolent dictator for life “BDFL” of the Linux kernel announced he intends to merge the sched_ext patches for Linux 6.11 even though there has been some objections by other kernel developers. Torvalds feels the sched_ext code is ready enough and provides real value to the mainline Linux kernel. It’s not worth dragging out sched_ext continuing to be out-of-tree.

↫ Michael Larabel at Phoronix

I haven’t felt the need to mess around with the Linux scheduler in a long, long time – I have some vague memories of perhaps well over a decade ago where opting for a different scheduler could lead to better desktop-focused performance characteristics, but the details in my brain are so fuzzy that it may just be a fabricated or confabulated memory.

OpenBSD extreme privacy setup

This is an attempt to turn OpenBSD into a Whonix or Tails alternative, although if you really need that level of privacy, use a system from this list and not the present guide. It is easy to spot OpenBSD using network fingerprinting, this can not be defeated, you can not hide the fact you use OpenBSD to network operators.

I did this guide as a challenge for fun, but I also know some users have a use for this level of privacy.

↫ Solène Rapenne

Written by OpenBSD developer Solène Rapenne, so you’re probably not going to find a guide written by anyone more knowledgeable.

Microsoft pulls release preview build of Windows 11 24H2 after Recall controversy

Microsoft recently announced some big changes to the Recall feature in Windows, and now it’s pulled the Release Preview version which contained Recall entirely.

It’s likely not a coincidence that Microsoft also quietly pulled the build of the Windows 11 24H2 update that it had been testing in its Release Preview channel for Windows Insiders. It’s not unheard of for Microsoft to stop distributing a beta build of Windows after releasing it, but the Release Preview channel is typically the last stop for a Windows update before a wider release.

↫ Andrew Cunningham at Ars Technica

The company doesn’t actually mention why the release was pulled, but the reason is pretty obvious if you connect the dots. I’m at least glad Microsoft is taking the complaints seriously, and while I don’t personally think Recall is a good idea, if a user gives their consent and uses it knowingly and willingly, I don’t see any problems with it.

Under pressure from Russian censors, Mozilla removes anti-censorship extensions

A few days ago, I was pointed to a post on the Mozilla forums, in which developers of Firefox extensions designed to circumvent Russian censorship were surprised to find that their extensions were suddenly no longer available within Russia. The extension developers and other users in the thread were obviously not amused, and since they had received no warning or any other form of communication from Mozilla, they were left in the dark as to what was going on.

I did a journalism and contacted Mozilla directly, and inquired about the situation. Within less than 24 hours Mozilla got back to me with an official statement, attributed to an unnamed Mozilla spokesperson:

Following recent regulatory changes in Russia, we received persistent requests from Roskomnadzor demanding that five add-ons be removed from the Mozilla add-on store. After careful consideration, we’ve temporarily restricted their availability within Russia. Recognizing the implications of these actions, we are closely evaluating our next steps while keeping in mind our local community.

↫ Mozilla spokesperson via email

I and most people I talked to already suspected this was the case, and considering Russia is a totalitarian dictatorship, it’s not particularly surprising it would go after browser extensions that allow people to circumvent state censorship. Other totalitarian dictatorships like China employ similar, often far more sophisticated methods of state control and censorship, too, so it’s right in line with expectations.

I would say that I’m surprised Mozilla gave in, but at the same time, it’s highly likely resisting would lead to massive fines and possible arrests of any Mozilla employees or contributors living in Russia, if any such people exist, and I can understand a non-profit like Mozilla not having the means to effectively stand up against the Russian government. That being said, Mozilla’s official statement seems to imply they’re still in the middle of their full decision-making process regarding this issue, so other options may still be on the table, and I think it’s prudent to give Mozilla some more time to deal with this situation.

Regardless, this decision is affecting real people inside Russia, and I’m sure if you’re using tools like these inside a totalitarian dictatorship, you’re probably not too fond of said dictatorship. Losing access to these Firefox extensions through the official add-store will be a blow to their human rights, so let’s hope the source code and ‘sideloaded’ versions of these extensions remain available for them to use instead.

Apple WWDC 2024: the 13 biggest announcements

Apple’s Worldwide Developers Conference keynote has come to a close — and the company had a whole lot to share. We got our first look at the AI features coming to Apple’s devices and some major updates across the company’s operating systems.

If you missed out on watching the keynote live, we’ve gathered all the biggest announcements that you can check out below.

↫ Emma Roth at The Verge

Most of the stuff Apple announced aren’t particularly interesting – a lot of catch-up stuff that has become emblematic of companies like Google, Apple, and Microsoft when it comes to their operating systems. The one thing that did stand out is Apple’s approach to offloading machine learning requests to the cloud when they are too difficult to handle on device. They’ve developed a new way of doing this, using servers with Apple’s own M chips, which is pretty cool and harkens back the days of the Xserve.

In short, these server are using the same kind of techniques to encrypt and secure data on iPhones, but now to encrypt and secure the data coming in for offloaded machine learning requests.

The root of trust for Private Cloud Compute is our compute node: custom-built server hardware that brings the power and security of Apple silicon to the data center, with the same hardware security technologies used in iPhone, including the Secure Enclave and Secure Boot. We paired this hardware with a new operating system: a hardened subset of the foundations of iOS and macOS tailored to support Large Language Model (LLM) inference workloads while presenting an extremely narrow attack surface. This allows us to take advantage of iOS security technologies such as Code Signing and sandboxing.

↫ Apple’s security research blog

Apple also provided some insight into where its training data is coming from, and it claims it’s only using licensed data and “publicly available data collected by our web-crawler”. The words “licensed” and “publicly available” are doing a lot of heavy lifting here, and I’m not entirely sure what definitions of those terms Apple is using. There are enough people out there who feel every piece of data – whether under copyright, available under an open source license, or whatever – is fair, legal game for ML training, so who knows what Apple is using based on these statements alone.

From Apple’s presentations yesterday, as well as any later statements, it’s also not clear when machine learning requests get offloaded in the first place. Apple states they try to run as much as possible on-device, and will offload when needed, but the conditions under which such offloading happens are nebulous and unclear, making it hard for users to know what’s going to happen when they use Apple’s new machine learning features.

Tuxedo showcases prototype Linux laptop with Snapdragon X Elite

I’ve long been waiting for a powerful ARM laptop that can run Linux comfortably, and it seems that with Qualcomm’s new Snapdragon X Elite SoC, that’s finally going to happen. We talked earlier about how for once, Qualcomm is taking Linux support for their new laptop-focused processors very seriously, and that promise and associated effort is paying dividend. Tuxedo, a popular Linux OEM from Germany, has announced it’s working on a laptop with the Snapdragon X Elite chip, and they showed off a working prototype at Computex in Taiwan.

We have been working with a first prototype for some time, which will soon be replaced by a second one. The development is still in the alpha stage, as some drivers are still missing, which will hopefully be available with the next two kernel versions.

It is quite conceivable that an ARM notebook from TUXEDO will be under your Christmas tree in 2024. However, there are still too many pieces of the hardware, software and delivery capability puzzle missing to even begin to set a release date. TUXEDO for ARM will come, but we don’t yet know exactly when.

↫ Tuxedo’s website

Their timeline of more Qualcomm drivers making it into the next two kernel versions lines up with Qualcomm’s own timeline, so it seems we’re mostly just waiting for them to finish their Linux drivers and add them to the kernel. This is quite exciting, and a much better option for Linux users than buying a Windows version of an X Elite or Pro laptop and hoping for the best.

NetBSD 10 with disk encryption on UEFI, and NetBSD 10 on the Pinebook Pro

NetBSD 10 was released recently, so a lot of people are experimenting with it and writing down their thoughts. I’ve got two of those for you today, to help you in case you, too, want to install NetBSD 10 and play around with, or just use, it.

First, what if you want to install NetBSD 10 on a UEFI system, but with full disk encryption in case your device gets stolen? It turns out there are countless guides for installing with full-disk encryption on MBR-based systems, but once you use UEFI – as you should be – things get a lot more complicated. The NetBSD installer is apparently rather basic, and a better solution is to drop to a shell and install NetBSD that way instead, and even then, full disk encryption with UEFI is actually not possible, as it seems the root file system – where the operating system itself resides – cannot be encrypted.

The restriction is in the root file-system. It needs to be in plain-text and in a regular partition. It seems to me that rootfs in CGD or LVM is not well supported.

↫ vsis.online

This seems like something the NetBSD team may need to take a look at, since full disk encryption should be an easy option to choose, even, or especially in 2024, on UEFI systems. Such encryption is easily achieved on Linux or Windows systems, and it seems odd to me that NetBSD is lagging behind a bit here. In the meantime, the linked guide will be a good jumping-off point for those of you interested in going a similar route.

The second article I want to highlight concerns NetBSD 10 on the Pinebook Pro, the inexpensive ARM laptop that normally ships with Linux. It turns out there’s a NetBSD 10 image for this device, so installation is quite a bit more straightforward than the more exotic setup I mentioned earlier. It seems most of the hardware works quite well out of the box, with the inly exception being the on-board Wi-Fi, which the author addressed with a USB W-Fi dongle.

Other than that, NetBSD is running well on the Pinebook Pro for the author, which is great to read since that makes this cheap device a great starting point for people interested in running NetBSD.

Void Linux on ZFS

Last night, I ran through the ZFSBootMenu documentation guide for Void and followed it both on a VM and then on an external SATA HDD plugged through a USB case, taking some notes and getting a general idea of the process.

The Void installer does not support ZFS out of the box, so the Void Handbook itself recommends the ZFSBootMenu documentation before its own (a manual chroot installation) when it comes to doing a ZFS-on-root install. This guide from ZFSBootMenu is what we’ll be following throughout this post.

↫ Juno Takano

There’s a ton of good stuff in this lengthy, detailed, and helpful blog post. First, it covers Void Linux, which is one of the best signifiers of good taste, classy style, and generally being a good person. Void is not necessarily underappreciated – it gets a lot of mentions in the right places – but I do feel there are a lot more people for whom Void Linux would be a perfect fit but who don’t yet know about it. So, time for a very short introduction.

Void Linux is distribution with its own unique and very user-friendly package manager that’s an absolute joy to use. Unlike many other custom, more obscure package formats, the Void repositories are vast, generally some of the most up-to-date, and you’ll be hard-pressed to be asking for some piece of software that isn’t packaged. Void eschews systemd in favour of runit, and while I personally have no issues with systemd, diversity is always welcome and runit is, in line with everything else Void, easy to grasp and use. Lastly, while Void also comes in a GNU libc flavour, it feels like the “real” Void Linux is the one using musl.

Second is a tool I had never heard of: ZFSBootMenu. The name is rather self-explanatory, but in slightly more detail: it’s a self-contained small Linux-based bootloader that detects any Linux kernels and initramfs images on ZFS file systems, which can then be launched using kexec. It makes running Linux on ZFS quite a bit easier, especially for systems that don’t over ZFS as an option during installation, like, in this case, Void Linux.

And that’s what the linked post is actually about: setting up a root-on-ZFS Void EFI installation. It’s a great companion article for anyone trying something similar.

Reverse-engineering MenuetOS 64: primary boot loader

Now that we have the MenuetOS 64 disk image file (M6414490.IMG), it is time to analyze! We will analyze the image file both statically and dynamically. Static analysis is reading and analyzing code without running it, whereas dynamic analysis is running the code and watching how it changes registers and memory during execution. Each analysis mode compliments the other; there are some things that can only be discerned through code execution, like register values or stack layout at a specific point in time during execution. Static analysis is useful for “filling in the blanks” when executing code to understand what the code should do next (or just did). Since MenuetOS 64 is written in Intel x64 assembly, our static analysis will consist of memory mapped disassembly in Ghidra. After reading this post, readers should understand how to launch a MenuetOS 64 virtual machine using QEMU as well as how to attach a debugger (gdb) to QEMU in order to debug while code is executing. Also, readers should understand how MenuetOS 64 begins the boot process as control of execution is passed to MenuetOS 64 code from the virtualization firmware.

↫ Nicholas Starke

This is an old post – from late 2022 – but a great read nonetheless, and considering MenuetOS doesn’t change very much from year to year, it’s still mostly relevant.

What is PID 0?

The very short version: Unix PIDs do start at 0! PID 0 just isn’t shown to userspace through traditional APIs. PID 0 starts the kernel, then retires to a quiet life of helping a bit with process scheduling and power management. Also the entire web is mostly wrong about PID 0, because of one sentence on Wikipedia from 16 years ago.

There’s a slightly longer short version right at the end, or you can stick with me for the extremely long middle bit!

But surely you could just google what PID 0 is, right? Why am I even publishing this?

↫ David Anderson

What a great read. Just great.

Adobe terms clarified: will never own your work, or use it for AI training

Adobe Creative Cloud users opened their apps yesterday to find that they were forced to agree to new terms, which included some frightening-sounding language. It seemed to suggest Adobe was claiming rights over their work.

Worse, there was no way to continue using the apps, to request support to clarify the terms, or even uninstall the apps, without agreeing to the terms.

↫ Ben Lovejoy at 9To5Mac

Of course users were going to revolt. Even without the scary-sounding language, locking people out of their applications unless they agree to new terms is a terrible dark pattern, and something a lot of enterprise customers certainly aren’t going to be particularly happy about. I’ve never worked an office job, so how does stuff like this normally go? I’m assuming employees aren’t allowed to just accept new licensing terms from Adobe or whatever on their office computers?

In response to the backlash, Adobe came out and said in a statement that it does not intend to claim ownership over anyone’s work, and that it’s not going to train its ML models on customers’ work either. The company states that to train its Firefly ML model, it only uses content it has properly licensed for it, as well as public domain content. Assuming Adobe is telling the truth, it seems the company at least understands the concept of consent, which is good news, and a breath of fresh air compared to crooks like OpenAI or GitHub. Content used for training ML models should be properly licensed for it, and consent should be properly obtained from rightsholders, and taking Adobe at their word, it seems that’s exactly what they’re doing.

Regardless, the backlash illustrates once again just how – rightfully – weary people are of machine learning, and how their works might be illegally appropriated to train such models.

Initial Fuchsia support upstreamed to Mesa 3D

We haven’t been hearing much out of the Fuchsia team anymore after said team was hit hard by the Google layoffs, but we’ve got some news so my fancy Fuchsia database category doesn’t go entirely to waste. As Phoronix highlights, Fuchsia support is being upstreamed to Mesa 3D, indicating that no, Fuchsia is not entirely dead.

This adds fairly standard support for Fuchsia in src/util. It’s being used in downstream forks of Lavapipe and it’s useful for gfxstream-vk. The idea is to incrementally merge these obvious changes to help reduce the patch load until someone has time to upstream the full driver.

↫ Gurchetan Singh

As you can tell from the language here, we’re dealing with the first experimental steps, and a lot more work is required before full Fuchsia support can be added to Mesa 3D, as further evidenced by the various friendly conversations attached to the merge request. After some small changes to the code here and there, the code was merged a few days later, so it seems the process can continue.

It used to be quite easy to predict where Fuchsia was going, since pretty much every indication was that Google had grand ideas for the project, and consequently, the Fuchsia team was large, staffed with well-known names, and the kind of progress we saw all pointed towards a role for Fuchsia on smartphones, tablets, laptops, desktops, and perhaps even beyond. There was a real sense that Google intended to almost silently replace the Linux base with Fuchsia in Android, and all the technologies to do so were either in place or actively being worked on.

Then came Google’s massive layoffs, though, and the Fuchsia team was hit proportionally harder than other teams, and now, it’s not so clear anymore what the future has in store for this custom operating system. Several Fuchsia-related efforts were wound down, from no longer porting Chrome to Fuchsia to killing Fuchsia smart speaker efforts. This was one of the few truly interesting projects inside Google, and it presented a real chance that we might see a new major operating system enter the market, for the first time in decades.

Alas, Google gonna Google.