[asterisk-dev] Proposal for DAHDI-trunk: deprecate old kernels

Oron Peled oron.peled at xorcom.com
Thu Dec 29 11:42:39 CST 2011


Currently there's no policy for deprecating support for old kernels
in DAHDI-linux, so we have all kinds of code monstrosities to
support anything from prehistoric kernels (2.6.8/9) to the latest
and greatest.

I'd like to propose a general policy and then derive a specific
case for the near future.

1. General kernel deprecation policy:

   * Stable DAHDI branches (no change from current practices):
     - Newer kernels are supported as long as the branch is
       supported. Obviously, after that it's in deep freeze.

     - No deprecation of old kernels. What worked before,
       would continue to work even if it is used on a very
       old "Enterprise" distro.

   * Trunk - Latest kernels are always supported

   * Trunk - Old kernels:
     - A deprecation means output a NOTICE(), but still have
       the code to support the old kernel

     - Support removal happens when we decide to remove the
       old code that support building DAHDI-linux on old kernels.
       [bloat removal...]

     - Fast paced distros should be always supported by trunk
       (Fedora, Debian-testing, Ubuntu, OpenSuse, name your favorite).
       These distributions have a kernel life-cycle that is short
       and therefore does not impose maintenance problems for DAHDI-linux.

     - Kernels for current Stable/"Enterprise" distros would be fully

     - Kernels for previous Stable/"Enterprise" distros would be
       deprecated (remember, only on trunk).

     - After the next DAHDI-linux stable release, the support code
       for the deprecated versions would be removed from our trunk.
       [yes, those ugly #ifdefs]

2. Let's try to apply this to the near future. As mentioned
   before, we can safely ignore fast paced distros and focus
   only on Stable/"Enterprise"/LTS distros.

   * RHEL/Centos:
     - References:
     - Current version: RHEL-6.x (kernel 2.6.32)
     - Deprecated version: RHEL-5.x (kernel 2.6.18)
     - Older version: RHEL-4.x (kernel 2.6.9)
       [End of Regular Life Cycle - 29-Feb-2012]

   * Suse SLES:
     - References:

     - Current version: SLES-11 (kernel 2.6.32)
     - Deprecated version: SLES-10 (kernel 2.6.16)
       [End of General Support - 12-Apr-2011]

   * Debian-stable:
     - References:
     - Current version: Debian-6.0.x "Squeeze" (kernel 2.6.26)
     - Deprecated version: Debian-5.0.x "Lenny" (kernel 2.6.32)
       [End Of Life - 2-Feb-2012]

   * Ubuntu-LTS:
     - References:
     - Current LTS version: 10.04 "Lucid Lynx" (kernel 2.6.32)
     - Deprecated version: 8.04 "Hardy Heron" (kernel 2.6.24)
       [End Of Life (server) - Apr-2013]

3. Proposed timeline:
   * After DAHDI-2.6/2.5 release:
     Mark 2.6.8/2.6.9 kernel workarounds as deprecated in
     our trunk. They are only used by RHEL/Centos-4 and
     Debian-Etch (before oldstable=="lenny")

   * 29-Feb-2012:
     Can drop RHEL-4 support from trunk. At that time the oldest
     kernel to support would be 2.6.18 (RHEL-5.x)
     [good bye 2.6.8/2.6.9 quirks]

   * After DAHDI-2.7:
     Can mark 2.6.18 workarounds as deprecated (in our trunk).
     At that time the oldest (non-deprecated) kernels to support
     would be 2.6.24 (Ubuntu-8.04).

   * After DAHDI-2.8:
     Drop support for 2.6.18 kernels.

   * etc...

4. Now who did I forget to take in account? Let the flames begin ;-)


Oron Peled                                 Voice: +972-4-8228492
oron at actcom.co.il                  http://users.actcom.co.il/~oron
Problems cannot be solved at the same level of awareness that
created them.
                 -- A. Einstein

More information about the asterisk-dev mailing list