← Back to team overview

kernel-packages team mailing list archive

[Bug 1470091] [NEW] update for V3 kernel bits and improved multiple fan slice support

 

Public bug reported:

Fan V2 to V3 transition plan
============================

Currently we have V2 Fan kernel patches paired with an
/etc/defaults/ubuntu-fan based single fan mapping setup.  We want to
transition to both V3 Fan kernel patches with fanctl based configuration
allowing multiple fans to be configured together.

The new V3 kernel bits fix a significant limitation wherein we could not
have multiple slices of different overlay address ranges on the same local
address.  This update introduces an incompatible kernel interface against
a different device.  The new functionality is a full superset of the old.

The new V3 kernel bits require updated iproute2 patches to handle the
new netlink form carrying the expanded map forms.

In order to manage multiple Fan devices we are updating ubuntu-fan to use
the new fanctl command line tool and a new fan specific configuration file.

This plan assumes we are not wedded to the kernel interface, that the
supported API is the /etc/defaults/ubuntu-fan fan configuration.

Considerations
==============
We are unable to depend on kernel features, as we have no meaninful
dependencies to kernel versions.

We need to change the primary configuration file and format for ubuntu-fan
package to allow multiple slices of multiple fans to be configured
together.

We have V2 kernel bits in the wild.  We have V2 iproute in the wild.

Steps
=====
1) update fanctl to support both the V2 and V3 kernel interfaces as we cannot
   depend on a kernel version meaningfully.
2) update iproute2 to support configuring both V2 and V3 kernel interfaces.
3) update ubuntu-fan with the updated fanctl, supporting migration
   of the /etc/default/fan contents to /etc/network/fan (or directly
   handling that form), and depending on the updated iproute2 bits.
4) release updated iproute2 bits.
5) release updated ubuntu-fan bits.
6) release updated kernel bits (V3 kernel module).

Testing
=======
Need to test old and new kernels with old and new ubuntu-fan levels.
We obviously do not expect the old userspace to work with the new kernels,
but it should fail obviously.

** Affects: iproute2 (Ubuntu)
     Importance: High
     Assignee: Andy Whitcroft (apw)
         Status: In Progress

** Affects: linux (Ubuntu)
     Importance: High
     Assignee: Andy Whitcroft (apw)
         Status: In Progress

** Affects: ubuntu-fan (Ubuntu)
     Importance: High
     Assignee: Andy Whitcroft (apw)
         Status: In Progress

** Affects: iproute2 (Ubuntu Vivid)
     Importance: High
     Assignee: Andy Whitcroft (apw)
         Status: In Progress

** Affects: linux (Ubuntu Vivid)
     Importance: High
     Assignee: Andy Whitcroft (apw)
         Status: In Progress

** Affects: ubuntu-fan (Ubuntu Vivid)
     Importance: High
     Assignee: Andy Whitcroft (apw)
         Status: In Progress

** Affects: iproute2 (Ubuntu Wily)
     Importance: High
     Assignee: Andy Whitcroft (apw)
         Status: In Progress

** Affects: linux (Ubuntu Wily)
     Importance: High
     Assignee: Andy Whitcroft (apw)
         Status: In Progress

** Affects: ubuntu-fan (Ubuntu Wily)
     Importance: High
     Assignee: Andy Whitcroft (apw)
         Status: In Progress

** Changed in: ubuntu-fan (Ubuntu)
       Status: New => In Progress

** Changed in: ubuntu-fan (Ubuntu)
   Importance: Undecided => High

** Changed in: ubuntu-fan (Ubuntu)
     Assignee: (unassigned) => Andy Whitcroft (apw)

** Also affects: iproute2 (Ubuntu)
   Importance: Undecided
       Status: New

** Also affects: linux (Ubuntu)
   Importance: Undecided
       Status: New

** Changed in: linux (Ubuntu)
       Status: New => In Progress

** Changed in: iproute2 (Ubuntu)
       Status: New => In Progress

** Changed in: iproute2 (Ubuntu)
   Importance: Undecided => High

** Changed in: linux (Ubuntu)
   Importance: Undecided => High

** Changed in: iproute2 (Ubuntu)
     Assignee: (unassigned) => Andy Whitcroft (apw)

** Changed in: linux (Ubuntu)
     Assignee: (unassigned) => Andy Whitcroft (apw)

** Also affects: linux (Ubuntu Wily)
   Importance: High
     Assignee: Andy Whitcroft (apw)
       Status: In Progress

** Also affects: iproute2 (Ubuntu Wily)
   Importance: High
     Assignee: Andy Whitcroft (apw)
       Status: In Progress

** Also affects: ubuntu-fan (Ubuntu Wily)
   Importance: High
     Assignee: Andy Whitcroft (apw)
       Status: In Progress

** Also affects: linux (Ubuntu Vivid)
   Importance: Undecided
       Status: New

** Also affects: iproute2 (Ubuntu Vivid)
   Importance: Undecided
       Status: New

** Also affects: ubuntu-fan (Ubuntu Vivid)
   Importance: Undecided
       Status: New

** Changed in: iproute2 (Ubuntu Vivid)
       Status: New => Triaged

** Changed in: iproute2 (Ubuntu Vivid)
   Importance: Undecided => High

** Changed in: iproute2 (Ubuntu Vivid)
       Status: Triaged => In Progress

** Changed in: iproute2 (Ubuntu Vivid)
     Assignee: (unassigned) => Andy Whitcroft (apw)

** Changed in: linux (Ubuntu Vivid)
       Status: New => In Progress

** Changed in: linux (Ubuntu Vivid)
   Importance: Undecided => High

** Changed in: linux (Ubuntu Vivid)
     Assignee: (unassigned) => Andy Whitcroft (apw)

** Changed in: ubuntu-fan (Ubuntu Vivid)
       Status: New => In Progress

** Changed in: ubuntu-fan (Ubuntu Vivid)
   Importance: Undecided => High

** Changed in: ubuntu-fan (Ubuntu Vivid)
     Assignee: (unassigned) => Andy Whitcroft (apw)

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1470091

Title:
  update for V3 kernel bits and improved multiple fan slice support

Status in iproute2 package in Ubuntu:
  In Progress
Status in linux package in Ubuntu:
  In Progress
Status in ubuntu-fan package in Ubuntu:
  In Progress
Status in iproute2 source package in Vivid:
  In Progress
Status in linux source package in Vivid:
  In Progress
Status in ubuntu-fan source package in Vivid:
  In Progress
Status in iproute2 source package in Wily:
  In Progress
Status in linux source package in Wily:
  In Progress
Status in ubuntu-fan source package in Wily:
  In Progress

Bug description:
  Fan V2 to V3 transition plan
  ============================

  Currently we have V2 Fan kernel patches paired with an
  /etc/defaults/ubuntu-fan based single fan mapping setup.  We want to
  transition to both V3 Fan kernel patches with fanctl based configuration
  allowing multiple fans to be configured together.

  The new V3 kernel bits fix a significant limitation wherein we could not
  have multiple slices of different overlay address ranges on the same local
  address.  This update introduces an incompatible kernel interface against
  a different device.  The new functionality is a full superset of the old.

  The new V3 kernel bits require updated iproute2 patches to handle the
  new netlink form carrying the expanded map forms.

  In order to manage multiple Fan devices we are updating ubuntu-fan to use
  the new fanctl command line tool and a new fan specific configuration file.

  This plan assumes we are not wedded to the kernel interface, that the
  supported API is the /etc/defaults/ubuntu-fan fan configuration.

  Considerations
  ==============
  We are unable to depend on kernel features, as we have no meaninful
  dependencies to kernel versions.

  We need to change the primary configuration file and format for ubuntu-fan
  package to allow multiple slices of multiple fans to be configured
  together.

  We have V2 kernel bits in the wild.  We have V2 iproute in the wild.

  Steps
  =====
  1) update fanctl to support both the V2 and V3 kernel interfaces as we cannot
     depend on a kernel version meaningfully.
  2) update iproute2 to support configuring both V2 and V3 kernel interfaces.
  3) update ubuntu-fan with the updated fanctl, supporting migration
     of the /etc/default/fan contents to /etc/network/fan (or directly
     handling that form), and depending on the updated iproute2 bits.
  4) release updated iproute2 bits.
  5) release updated ubuntu-fan bits.
  6) release updated kernel bits (V3 kernel module).

  Testing
  =======
  Need to test old and new kernels with old and new ubuntu-fan levels.
  We obviously do not expect the old userspace to work with the new kernels,
  but it should fail obviously.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/iproute2/+bug/1470091/+subscriptions


Follow ups

References