[systemd-devel] providing backwards compatibility

Simon McVittie simon.mcvittie at collabora.co.uk
Fri Jan 17 05:20:18 PST 2014


On 17/01/14 09:42, Kay Sievers wrote:
> This year will bring huge flag day compat breaks. We will drop all old
> D-Bus support, we will require on a bleeding edge kernel, and so on.

Flag-day compatibility breaks are a massive pain for distributions. The
more things need to be upgraded in lockstep, the harder it is -
particularly the kernel, since most distributions allow more than one
kernel to be installed at a time, and switching the running kernel needs
a reboot. Package dependency systems that were mainly designed for
libraries and restartable daemons can easily guarantee "linux >= 3.67 is
somewhere in the filesystem", but not "linux >= 3.67 was booted".

I can see that a flag day is sometimes unavoidable, but please do
consider it to be a significant cost. In particular, if your goal is for
systemd to be a universal part of a "standard" Linux stack, avoiding
flag-day upgrades whenever possible seems wise. I for one would like to
be able to assume systemd's technical advantages when writing other
software, but distributors who are uneasy about adopting systemd are not
going to be reassured by plans that will break their upgrades.

The kernel's policy is "don't break userspace" - isn't the init(1)
equivalent "don't break the rest of userspace"?

Regards,
    S



More information about the systemd-devel mailing list