Tonight I did the last of the changes for to handle when the proc filesystem has the subset=PID flag which hides most of non PID files under /proc. The idea is for the library to flag the issue, generally with a -ENOENT and let the application decide what to do about it.

That doesn't mean all the programs work, for example free just complains it can't see meminfo but at least it's a sensible message.

In Linux and other unixes every device has a number. This can be split out into major and minor numbers which is generally how humans see them.

There are three different sizes: 16 32 and 64 bits and the major and minor numbers are jumbled across them.

For some unknown reason lost to time, used its own definition but now it uses the glibc macro. For Linux systems this is no change but it helps with others such as cygwin

version 4.0.0 has been released today. This release includes the new library API allowing for more procfs items to be exported. It has been an ongoing effort since 2015 and we're glad to reach this milestone.

freelists.org/post/procps/Proc

package 3.3.17-7 was released today.

This should mean both the kfreebsd and hurd ports can build.

kill will once again correctly handle negative pids.

pidwait will work and not try to run like pgrep.

Not that it matters for most people, but the pre-install script from 2008 got removed too.

I think I finally cracked the alignment issue in free for non-english translations. It was a pretty simple fix in the end but really should have been avoided with printf() sucking less.

The next release of pgrep will be able to filter on control group or cgroup names. With the newer libproc-2 library it was an easy fix to add.

I'm not sure if this makes the answer any easier, but it gives more points of view.

Show thread

I've been trying to work out what pgpgin and pgpgout values in /proc/vmstat are measured in. Is it in blocks or KiB?

Unfortunately, most references are either vague or point back to vmstat.8 which is not helpful.

Anyone got any idea of what they are and more importantly a decent reference?

version 3.3.17 was
released today. This version has some minor fixes and improvements and now
includes some translated manpages. Other enhancements include:
* New command pwait - waits for a given process to finish
* Top handles more CPUs more gracefully
* sysctl now follows the systemd version better, especially around
directory order

procps-ng v3.3.17 is at gitlab at
gitlab.com/procps-ng/procps/-/ or a tarball on
sourceforge at
sourceforge.net/projects/procp

Strange how some parts of a program you never use even if you have the used the program for ages.

Did you know Linux PS has test fields? I didn't and I look after it!

The field names are like _left, _left2 or _unlimited and they are statically defined. I found out about them by crashing the new library.

The watch program from the package has a new trick. Someone asked if there was a way to truncate the output instead of line-wrapping.

Watch already detects the width of the screen because it uses ncurses to output the lines so it needs to know where on the screen the next character will go. It was just a matter of hooking into the "run out of width" part of the code and eat the input until we hit an end of line.

So soon if you want to chomp those lines, you can!

Recently pushed a change to fix the -C flag in ps. The command name length was increased to 63 characters from 15 but most non kernel threads can only do 15 characters.

So how can ps match both 15 and 63 characters?

If the process' comm is 15 and the match is 15 or more then match the first 15 characters.

Also keep matching the entire string up to 63 characters.

Apparently had an old website I built, like, ten or more years ago. Today it, and the terrible logo I made, has rightly gone away.

Are you one of those people with some mad system with lots of CPUs? Having a hard time trying to see them all? Well top is coming out with two new features.

The first is two CPUs per row for wide (about over 160 columns) screens.

The second is to be able to group cpus into, um groups, so you can see pairs of cpu stats aggregated or 4 aggregated etc.

The command pgrep will soon have an older command which matches processes that are older than the specified number of seconds.

I've added some autopkgtest test script to check for the version output of in The current versions just report unknown due to a upstream script breakage (which is my fault too).

is very useful facility to check for Debian packages as-installed. It probably has the second-worst documentation in history (the first being sendmail).

If I actually understood it, I'd fix the documentation, but I don't.

Is there anything more confusing than shared library numbering?

There are three numbers: current, revision and age. Depending on what you are doing to the API one or more of those numbers will change. Seems the last relase I did months ago I got it wrong and bumped the age when that can't happen by itself, I think.

Oh and the soname of the library is definitely connected to, but not exactly, those three numbers (I think its C.R.R-A or something like that).

Show older
Mastodon on Dropbear

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!