Re: Is it time to remove reiserfs?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


On Fri, Feb 25, 2022 at 02:23:00PM +0100, Willy Tarreau wrote:
> On Fri, Feb 25, 2022 at 08:10:22AM -0500, Byron Stanoszek wrote:
> > On Thu, 24 Feb 2022, Matthew Wilcox wrote:
> > > On Wed, Feb 23, 2022 at 09:48:26AM -0500, Byron Stanoszek wrote:
> > > > For what it's worth, I have a number of production servers still using
> > > > Reiserfs, which I regularly maintain by upgrading to the latest Linux kernel
> > > > annually (mostly to apply security patches). I figured this filesystem would
> > > > still be available for several more years, since it's not quite y2038k yet.
> > > 
> > > Hey Byron, thanks for sharing your usage.
> > > 
> > > It's not entirely clear to me from your message whether you're aware
> > > that our annual LTS release actually puts out new kernels every week (or
> > > sometimes twice a week), and upgrades to the latest version are always
> > > recommended.  Those LTS kernels typically get five years of support in
> > > total; indeed we just retired the v4.4 series earlier this month which
> > > was originally released in January 2016, so it got six years of support.
> > > 
> > > If we dropped reiserfs from the kernel today (and thanks to Edward, we
> > > don't have to), you'd still be able to use a v5.15 based kernel with
> > > regular updates until 2028.  If we drop it in two years, that should
> > > take you through to 2030.  Is that enough for your usage?
> > 
> > I'm aware of the LTS releases, but I hadn't thought about them in relation to
> > this issue. That's a good point, and so it sounds like I have nothing to worry
> > about.
> This just makes me think that instead of speaking about deprecation in
> terms of version, speaking in terms of dates might be more suitable, as
> it should help discouraging distros or products shipping LTS kernels
> from enabling such deprecated features: when you're told the features
> will disappear after, say, 5.20, some might think "OK 5.20 is the last
> one and it happens to be LTS so I get the feature for 6 extra years
> after it's EOL".

This is exactly why the XFS deprecation schedules are dated while
the actual removals record kernel releases. If it gets released in
a kernel, then it technically is supported for the life of that
kernel, even if it is a LTS kernel and the functionality no long
exists upstream.

That is, we know that once we've removed something from upstream,
it's still going to be actively used in LTS kernels based on kernels
that still have that functionality. Same goes for enterprise
kernels. Hence deprecation policies need to first acknowledge the
typical "no regressions" policies for LTS kernels...

With that in mind, this is why we've already deprecated non-y2038k
compliant functionality in XFS so that enterprise kernels can mark
it deprecated in their next major (N + 1) release which will be
supported for 10 years. They can then remove that support it in the
N+2 major release after that (which is probably at least 5 years
down the track) so that the support window for non-compliant
functionality does not run past y2038k.

We chose this specifically because most of the XFS developers are
also responsible for maintaining enterprise distro kernels, and so
we always thinking about how we are going to maintain the upstream
code we release today because it will have a 10-15 year active
support life.  This is also why the deprecation notice in
Documentation/admin-guide/xfs.rst has this caveat:

	Note: Distributors may choose to withdraw V4 format support earlier than
	the dates listed above.

Distros might chose to remove deprecated functionality immediately
rather than rely on, say, LTS kernel support for functionality that
upstream developers are clearly not focussing their efforts on
developing further.

Hence we have to acknowledge that fact that once upstream has
deprecated a feature, it's up to distros to decide how they want to
handle long term support for that feature. The upstream LTS kernel
maintainers are going to have to decide on their own policy, too,
because we cannot bind upstream maintenance decisions on random
individual downstream support constraints. Downstream has to choose
for itself how it handles upstream deprecation notices but, that
said, upstream developers also need to listen to downstream distro
support and deprecation requirements...


Dave Chinner

[Index of Archives]     [Linux File System Development]     [Linux BTRFS]     [Linux NFS]     [Linux Filesystems]     [Ext4 Filesystem]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Resources]

  Powered by Linux