Some reasons why CPUs might re-use unofficial NOPs for other things

A while back I wrote about an instruction oddity in the PowerPC64-bit architecture , where the architecturereused a number of CPU instructions that otherwise had no effectin order to signal various things to the CPU. You might reasonablywonder why the PowerPC ISA decidedto use unofficial NOPs for this, instead of using explicit dedicatedinstructions. Although I don't know the actual reasons, I can thinkof some reasonable explanations.

First, this reuse of instructions is fully compatible with CPUsthat don't support this


NFS filehandles from Linux NFS servers can be client specific

Under normal circumstances, we assume that NFS servers give out thesame NFS filehandle for a givenfile (or directory or etc) to every NFS client. On Linux, this isnot necessarily the case, although it usually will be.

To illustrate this, I'm going to get a second filehandle for thesame NFS export as I did in my entry on NFS filesystem IDs , using /proc/fs/nfsd/filehandle (cf nfsd(7) ):

>>> f = open("

The extra hazards of mutual TLS authentication (mTLS) in web servers

Today I wound up reading a 2018 Colm MacCárthaigh thread on mutualTLS (mTLS) ( via , via ). I was nodding vaguely alongto the thread until I hit this point , whichraised an issue I hadn't previously thought about:

Directly related to all of this is that it takes an enormous amount ofcode to do mTLS. An ordinary TLS server can more or less ignore X509and ASN.1 - it doesn't need to parse or handle them


Some notes on searching the systemd journal with journalctl

Yesterday I wrote about how I like using Grafana Loki for narrowsearches of our logs . Inthe process of writing that entry, it occurred to me that systemd's journalctl mighthave some search features too that I could use as an alternativeto Loki. The answer is that that yes, a modern journalctl does (orat least probably does, since some of this depends on its buildoptions).

By now, hopefully everyone knows about using ' journalctl -u ' to show logs from only


What I like using Grafana Loki for (and where I avoid it)

These days we have a Grafana Loki server that collects system logs from our Linux servers( which has sometimes been an exciting learning experience ), along with our long standing centralsyslog server and, of course, the system logs onservers themselves (both in the systemd journal and the files writtento /var/log by syslog and programs like Exim). As I've written before, we have both because Loki doesn't duplicate our central syslog server , but that old entry sort of begs thequestion of


Getting a Python 2 virtual environment (in 2023's twilight of Python 2)

Suppose, not entirely hypothetically, that you need to create a newPython 2 virtual environment today; perhaps you need to installsome package to see how its old Python 2 version behaves. WithPython 3, creating a virtual environment is really easy; it's just' python3 -m venv /tmp/pytest '. With Python 2 today, you have twocomplications. First, Python 2 doesn't have a venv module (insteadit uses a ' virtualenv ' command), and second, your


As a system administrator, I work in many different environments

Many people work primarily or entirely in a single environment (forexample, their work laptop). For many people, this makes it quiteworthwhile to significantly customize that environment, carefullycurating things like their editor, setting up an advanced shellconfiguration, and so on. I'm not one of those people. It's truethat I have a very customized X desktop , but it'smore that I work through that environment than that I work in it.My actual work takes place in a disparate


Some bits on Linux NFS(v3) server filesystem IDs (and on filehandles)

NFS(v3) filehandles are how NFSclients tell the NFS server what they're operating on, and one partof the filehandle is a 'fsid', a filesystem ID (or UUID). The Linuxkernel NFS server normally automatically determines the fsid to useitself, but you can explicitly set it in your NFS exports, per exports(5) ,and doing so may let you move filesystems from one actual serverto another without clients having to unmount and remount thefilesystem ( as I recently discovered


ZFS on Linux and when you get stale NFSv3 mounts

Suppose that you have ZFS based NFS servers that you're changing from Ubuntu 18.04 to 22.04. These servers havea lot of NFS exported filesystems that are mounted and used by alot of clients, so it would be very convenient if you could upgradethe ZFS fileservers without having to unmount and remount thefilesystems on all of your clients. Conversely, if a particular wayof moving from 18.04 to 22.04 is going to require you to


Debconf's questions, or really whiptail, doesn't always work in xterms

Every so often I install or upgrade a package by hand on one of our Ubuntu servers and thepackage stops to ask me questions, because that is a thing thatDebian packages can do . Usually thisis pretty close to fatal, because in my normal xterm environment,the default interactive interface Debconf uses for this doesn'twork . Specifically,there is no way to see what the current selection theoretically is,which leaves me flying blind in picking an answer.

The ultimate cause for this turns out to be that