[adding the culprit's author to the loop; also CCing everyone else in the Signed-off-by chain and a few lists that should be in the loop, too] On 08.04.24 17:13, Lennart Poettering wrote: > > So this broke systemd: > > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e81cd5a983bb35dabd38ee472cf3fea1c63e0f23 FWIW, that is e81cd5a983bb35 ("block: stub out and deprecated the capability attribute on the gendisk") [v6.3-rc1] > We use the "capability" sysfs attr to figure out if a block device has > part scanning enabled or not. There seems to be no other API for > this. (We also use it in our test suite to see if devices match are > expectations, and older systemd/udev versions used to match agains it > from udev rules.) > > The interface was part of sysfs, and documented: > > https://www.kernel.org/doc/html/v5.5/block/capability.html > > While it doesn't list the partscan bit it actually does document that > one is supposed to look into include/linux/genhd.h for the various > bits and their meanings. I'd argue that makes them API to some level. > > Could this please be reverted? Just keeping the relevant bits (i.e. at > least the media change feature bit, and the part scanning bit) is > enough for retaining userspace compat. > > (Please consider googling or a github code search or so before removing > a public API like this. This compat breakage was very much avoidable > with a tiny bit of googling.) Thanks for the report. To be sure the issue doesn't fall through the cracks unnoticed, I'm adding it to regzbot, the Linux kernel regression tracking bot: #regzbot ^introduced e81cd5a983bb3 #regzbot title block: sysfs "capability" file broke systemd's checking for part scanning #regzbot ignore-activity Ciao, Thorsten (wearing his 'the Linux kernel's regression tracker' hat) -- Everything you wanna know about Linux kernel regression tracking: https://linux-regtracking.leemhuis.info/about/#tldr That page also explains what to do if mails like this annoy you.