linux-tools naming is not scalable to multiple source packages

Bug #1205284 reported by Andy Whitcroft
20
This bug affects 2 people
Affects Status Importance Assigned to Milestone
apt (Ubuntu)
Fix Released
Medium
Adam Conrad
Precise
Fix Released
Undecided
Adam Conrad
Saucy
Fix Released
Medium
Adam Conrad
linux (Ubuntu)
Fix Released
Medium
Andy Whitcroft
Precise
Fix Released
Medium
Andy Whitcroft
Saucy
Fix Released
Medium
Andy Whitcroft
linux-goldfish (Ubuntu)
Fix Released
Medium
Andy Whitcroft
Precise
Invalid
Undecided
Unassigned
Saucy
Fix Released
Medium
Andy Whitcroft
linux-lowlatency (Ubuntu)
Fix Released
Undecided
Andy Whitcroft
Precise
Fix Released
Undecided
Unassigned
Saucy
Fix Released
Undecided
Andy Whitcroft
linux-lts-saucy (Ubuntu)
Invalid
Undecided
Unassigned
Precise
Invalid
Undecided
Andy Whitcroft
Saucy
Invalid
Undecided
Unassigned
linux-meta (Ubuntu)
Fix Released
Medium
Andy Whitcroft
Precise
Invalid
Undecided
Unassigned
Saucy
Fix Released
Medium
Andy Whitcroft
linux-meta-goldfish (Ubuntu)
Fix Released
Medium
Andy Whitcroft
Precise
Invalid
Undecided
Unassigned
Saucy
Fix Released
Medium
Andy Whitcroft
linux-meta-lowlatency (Ubuntu)
Fix Released
Undecided
Adam Conrad
Precise
Invalid
Undecided
Unassigned
Saucy
Fix Released
Undecided
Adam Conrad
linux-meta-ppc (Ubuntu)
Fix Released
Undecided
Adam Conrad
Precise
Invalid
Undecided
Unassigned
Saucy
Fix Released
Undecided
Adam Conrad
linux-ppc (Ubuntu)
Fix Released
Undecided
Andy Whitcroft
Precise
Invalid
Undecided
Unassigned
Saucy
Fix Released
Undecided
Andy Whitcroft

Bug Description

The linux tools packages are not currently scalable to multiple source
package branches. This is because the packages are actually per
architecture (not flavour) in both contents and naming but may differ
between source packages which may be at different versions. This prevents
us safely emitting linux-tools packages from branches other than master.

We have a policy of insulating people from the source package from which a
kernel comes. We do this via the linux-<thing>-<flavour> package naming,
which is consistant regardless of overall package. It therefore makes
a lot of sense to extend this to the tools package. Such that we would
have the following user consumable packages as below:

    linux-tools-<flavour> -- tools to match linux-image-<flavour>
    linux-tools-<abi>-<flavour> -- tools to match linux-image-<abi>-<flavour>

In order to allow linux-tools to be still be a valid install target the
first of these would additionally Provides: linux-tools to allow simple
selection of the appropriate flavour specific package where there is only
one, or to help the user make an informed choice where there is more.

The first would be the logical choice when wanting to maintain tools
installed for all future version of the kernel, mirroring the kernels as
installed by the linux-<flavour> and linux-image-<flavour> packages and
keeping the user up to date in tools. The second would be the appropriate
package to request installation when trying to target a specific
kernel version and would be used by the wrapper when requesting manual
intervention such as when the linux-tools-<flavour> is not installed.

The first of these would be added to the appropriate meta package, the
second would come out of the flavour specific packages in the main kernel
source package.

Further we would then be able to name the actual binary packages as produced by the
various source packages to be source package specific. Thus we would have packages as
below:

    linux-tools-<abi> -- coming out of the master branch
    linux-grouper-tools-<abi> -- coming out of the grouper branch

These would be hidden from the user via the previously listed meta packages
and would not be direct installation candidates.

There is also an additional linux-tools-common package which represents
the manual pages and the wrappers. These would be only generated and
installed from the master branch and all of the other flavours would
(at least initially) share this package.

The actual binaries will be moved over to names similar to below:

    /usr/lib/<srcpkg>-tools-<abi>/<binary>

with symlinks in as below for each flavour pointing to the above:

    /usr/lib/linux-tools/<binary>-<abi>-<flavour>

Andy Whitcroft (apw)
Changed in linux (Ubuntu):
status: New → In Progress
assignee: nobody → Andy Whitcroft (apw)
importance: Undecided → Medium
importance: Medium → Low
importance: Low → Medium
Revision history for this message
Tim Gardner (timg-tpi) wrote :

Could you provide some examples of why the current naming scheme is insufficient ?

Revision history for this message
Andy Whitcroft (apw) wrote :

/me will bring a sample patch set to sprint for this.

description: updated
Andy Whitcroft (apw)
Changed in linux-meta (Ubuntu Saucy):
status: New → In Progress
assignee: nobody → Andy Whitcroft (apw)
Changed in apt (Ubuntu Saucy):
assignee: nobody → Adam Conrad (adconrad)
importance: Undecided → Medium
status: New → In Progress
Changed in linux-meta (Ubuntu Saucy):
importance: Undecided → Medium
Revision history for this message
Andy Whitcroft (apw) wrote :

We need the kernel autoclean support to understand the tools packages as well as they are abi specific. Adding a task for apt.

Andy Whitcroft (apw)
Changed in linux-goldfish (Ubuntu Saucy):
assignee: nobody → Andy Whitcroft (apw)
status: New → In Progress
importance: Undecided → Medium
Changed in linux-meta-goldfish (Ubuntu Saucy):
assignee: nobody → Andy Whitcroft (apw)
importance: Undecided → Medium
status: New → In Progress
Adam Conrad (adconrad)
Changed in apt (Ubuntu Saucy):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package apt - 0.9.9.1~ubuntu3

---------------
apt (0.9.9.1~ubuntu3) saucy; urgency=low

  * Keep linux-tools packages matching installed kernels (LP: #1205284)
 -- Adam Conrad <email address hidden> Wed, 11 Sep 2013 11:48:09 -0400

Changed in apt (Ubuntu Saucy):
status: Fix Committed → Fix Released
Tim Gardner (timg-tpi)
Changed in linux-meta-goldfish (Ubuntu Saucy):
status: In Progress → Fix Committed
Changed in linux-goldfish (Ubuntu Saucy):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux-goldfish - 3.4.0-0.4

---------------
linux-goldfish (3.4.0-0.4) saucy; urgency=low

  [ Andy Whitcroft ]

  * [Packaging] sort out linux-tools naming
    - LP: #1205284
  * [Config] switch to new linux-tools naming
    - LP: #1205284
  * [Config] fix up build-depends:

  [ Tim Gardner ]

  * [Config] CONFIG_*_NS=y
    - LP: #1222772
  * [Config] CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
    - LP: #1222772
  * [Config] CONFIG_ANDROID_PARANOID_NETWORK=n
    - LP: #1222772
 -- Andy Whitcroft <email address hidden> Wed, 11 Sep 2013 18:10:03 +0100

Changed in linux-goldfish (Ubuntu Saucy):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux-meta-goldfish - 3.4.0.0.2

---------------
linux-meta-goldfish (3.4.0.0.2) saucy; urgency=low

  * Build for i386
  * Follow changes to linux-tools naming (LP: #1205284).
 -- Andy Whitcroft <email address hidden> Thu, 12 Sep 2013 14:59:01 +0100

Changed in linux-meta-goldfish (Ubuntu Saucy):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 3.11.0-7.14

---------------
linux (3.11.0-7.14) saucy; urgency=low

  [ Andy Whitcroft ]

  * [Packaging] sort out linux-tools naming
    - LP: #1205284
  * [Packaging] linux-tools: switch to common generic version helper

  [ Paolo Pisati ]

  * [Config] highbank: ecx1000: CPU_IDLE causes instabilities, disable it

  [ Tim Gardner ]

  * Release tracker
    - LP: #1226160

  [ Tony Lindgren ]

  * SAUCE: ARM: dts: Fix muxing and regulator for wl12xx on the SDIO bus
    for pandaboard

  [ Upstream Kernel Changes ]

  * USB: handle LPM errors during device suspend correctly
    - LP: #1011415
  * usb: don't check pm qos NO_POWER_OFF flag in usb_port_suspend()
    - LP: #1011415
  * usb: Don't fail port power resume on device disconnect.
    - LP: #1011415

  [ Upstream Kernel Changes ]

  * rebase to v3.11.1
 -- Tim Gardner <email address hidden> Wed, 11 Sep 2013 07:30:17 -0600

Changed in linux (Ubuntu Saucy):
status: In Progress → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux-meta - 3.11.0.7.9

---------------
linux-meta (3.11.0.7.9) saucy; urgency=low

  * Follow changes to linux-tools naming (LP: #1205284).
 -- Andy Whitcroft <email address hidden> Wed, 11 Sep 2013 14:47:01 +0100

Changed in linux-meta (Ubuntu Saucy):
status: In Progress → Fix Released
Adam Conrad (adconrad)
Changed in linux-lowlatency (Ubuntu Saucy):
assignee: nobody → Andy Whitcroft (apw)
status: New → Fix Released
Changed in linux-ppc (Ubuntu Saucy):
assignee: nobody → Andy Whitcroft (apw)
status: New → Fix Released
Changed in linux-meta-lowlatency (Ubuntu Saucy):
assignee: nobody → Adam Conrad (adconrad)
status: New → Fix Released
Changed in linux-meta-ppc (Ubuntu Saucy):
assignee: nobody → Adam Conrad (adconrad)
status: New → Fix Released
Andy Whitcroft (apw)
Changed in apt (Ubuntu Precise):
status: New → Invalid
Changed in linux (Ubuntu Precise):
importance: Undecided → Medium
status: New → In Progress
Changed in linux-goldfish (Ubuntu Precise):
status: New → Invalid
Changed in linux-lowlatency (Ubuntu Precise):
status: New → Invalid
Changed in linux-meta (Ubuntu Precise):
status: New → Invalid
Changed in linux-ppc (Ubuntu Precise):
status: New → Invalid
Changed in linux-meta-ppc (Ubuntu Precise):
status: New → Invalid
Changed in linux-meta-lowlatency (Ubuntu Precise):
status: New → Invalid
Changed in linux-meta-goldfish (Ubuntu Precise):
status: New → Invalid
Changed in linux (Ubuntu Precise):
assignee: nobody → Andy Whitcroft (apw)
Tim Gardner (timg-tpi)
Changed in linux (Ubuntu Precise):
status: In Progress → Fix Committed
Changed in linux-lts-saucy (Ubuntu Saucy):
status: New → Invalid
Changed in linux-lts-saucy (Ubuntu Precise):
assignee: nobody → Andy Whitcroft (apw)
status: New → Fix Committed
Changed in linux-lts-saucy (Ubuntu):
status: New → Invalid
Revision history for this message
Adam Conrad (adconrad) wrote :

The apt fix for this should be backported to precise, and the linux-lts-saucy HWE kernels have the new linux-tools scheme, so we can actually retain them sanely via autoremove.

Changed in apt (Ubuntu Precise):
assignee: nobody → Adam Conrad (adconrad)
status: Invalid → In Progress
Revision history for this message
Colin Watson (cjwatson) wrote : Please test proposed package

Hello Andy, or anyone else affected,

Accepted apt into precise-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/apt/0.8.16~exp12ubuntu10.16 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in apt (Ubuntu Precise):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Brad Figg (brad-figg) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-precise' to 'verification-done-precise'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-precise
Tim Gardner (timg-tpi)
tags: added: verification-done-precise
removed: verification-needed-precise
Revision history for this message
Andy Whitcroft (apw) wrote :

confirming that the apt changes correctly add the linux-tools package for the lts-saucy kernels into the hold list.

Revision history for this message
Andy Whitcroft (apw) wrote :

confirming that the linux changes correctly update the wrappers for perf et al.

Revision history for this message
Andy Whitcroft (apw) wrote :

confirming that the linux-lts-saucy kernel installs tools to the expected locations.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package apt - 0.8.16~exp12ubuntu10.16

---------------
apt (0.8.16~exp12ubuntu10.16) precise; urgency=low

  * Keep linux-tools packages matching installed kernels (LP: #1205284)
 -- Adam Conrad <email address hidden> Fri, 15 Nov 2013 15:16:45 +0000

Changed in apt (Ubuntu Precise):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (12.2 KiB)

This bug was fixed in the package linux - 3.2.0-57.87

---------------
linux (3.2.0-57.87) precise; urgency=low

  [Steve Conklin]

  * Release Tracking Bug
    - LP: #1250622

  [ Andy Whitcroft ]

  * tools -- upgrade to common generic helper
    - LP: #1205284

  [ Kees Cook ]

  * SAUCE: backport ARM seccomp-bpf support
    - LP: #1183616

  [ Luis Henriques ]

  * SAUCE: ACPI battery: fix compiler warning
    - LP: #1247154

  [ Tim Gardner ]

  * [Config] updateconfigs: CONFIG_HAVE_AOUT=n for arm

  [ Upstream Kernel Changes ]

  * Revert "sctp: fix call to SCTP_CMD_PROCESS_SACK in
    sctp_cmd_interpreter()"
    - LP: #1249089
  * xen/blkback: Check device permissions before allowing OP_DISCARD
    - LP: #1091187
    - CVE-2013-2140
  * zram: allow request end to coincide with disksize
    - LP: #1246664
  * ARM: 7373/1: add support for the generic syscall.h interface
    - LP: #1183616
  * ARM: 7577/1: arch/add syscall_get_arch
    - LP: #1183616
  * htb: fix sign extension bug
    - LP: #1249089
  * net: check net.core.somaxconn sysctl values
    - LP: #1249089
  * fib_trie: remove potential out of bound access
    - LP: #1249089
  * tcp: cubic: fix overflow error in bictcp_update()
    - LP: #1249089
  * tcp: cubic: fix bug in bictcp_acked()
    - LP: #1249089
  * ipv6: don't stop backtracking in fib6_lookup_1 if subtree does not
    match
    - LP: #1249089
  * 8139cp: Add dma_mapping_error checking
    - LP: #1249089
  * tun: signedness bug in tun_get_user()
    - LP: #1249089
  * ipv6: remove max_addresses check from ipv6_create_tempaddr
    - LP: #1249089
  * ipv6: drop packets with multiple fragmentation headers
    - LP: #1249089
  * ipv6: Don't depend on per socket memory for neighbour discovery
    messages
    - LP: #1249089
  * net: bridge: convert MLDv2 Query MRC into msecs_to_jiffies for
    max_delay
    - LP: #1249089
  * ICMPv6: treat dest unreachable codes 5 and 6 as EACCES, not EPROTO
    - LP: #1249089
  * tipc: fix lockdep warning during bearer initialization
    - LP: #1249089
  * HID: hidraw: put old deallocation mechanism in place
    - LP: #1249089
  * HID: hidraw: correctly deallocate memory on device disconnect
    - LP: #1249089
  * xen-gnt: prevent adding duplicate gnt callbacks
    - LP: #1249089
  * ath9k: always clear ps filter bit on new assoc
    - LP: #1249089
  * libceph: unregister request in __map_request failed and nofail == false
    - LP: #1249089
  * usb: config->desc.bLength may not exceed amount of data returned by the
    device
    - LP: #1249089
  * USB: cdc-wdm: fix race between interrupt handler and tasklet
    - LP: #1249089
  * powerpc: Handle unaligned ldbrx/stdbrx
    - LP: #1249089
  * intel-iommu: Fix leaks in pagetable freeing
    - LP: #1249089
  * ath9k: fix rx descriptor related race condition
    - LP: #1249089
  * ath9k: avoid accessing MRC registers on single-chain devices
    - LP: #1249089
  * ASoC: wm8960: Fix PLL register writes
    - LP: #1249089
  * rculist: list_first_or_null_rcu() should use list_entry_rcu()
    - LP: #1249089
  * USB: mos7720: use GFP_ATOMIC under spinlock
    - LP: #1249089
  * USB: mos7720: fix big-endian control requests
    - LP: #1249089
  * s...

Changed in linux (Ubuntu Precise):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (12.2 KiB)

This bug was fixed in the package linux-lowlatency - 3.2.0-57.59

---------------
linux-lowlatency (3.2.0-57.59) precise; urgency=low

  [ Kaj Ailomaa ]

  * rebase to Ubuntu-3.2.0-57.87
  * Release Tracking Bug
    - LP: #1251435

  [ Ubuntu: 3.2.0-57.87 ]

  * Release Tracking Bug
    - LP: #1250622
  * tools -- upgrade to common generic helper
    - LP: #1205284
  * SAUCE: backport ARM seccomp-bpf support
    - LP: #1183616
  * SAUCE: ACPI battery: fix compiler warning
    - LP: #1247154
  * [Config] updateconfigs: CONFIG_HAVE_AOUT=n for arm
  * Revert "sctp: fix call to SCTP_CMD_PROCESS_SACK in
    sctp_cmd_interpreter()"
    - LP: #1249089
  * xen/blkback: Check device permissions before allowing OP_DISCARD
    - LP: #1091187
    - CVE-2013-2140
  * zram: allow request end to coincide with disksize
    - LP: #1246664
  * ARM: 7373/1: add support for the generic syscall.h interface
    - LP: #1183616
  * ARM: 7577/1: arch/add syscall_get_arch
    - LP: #1183616
  * htb: fix sign extension bug
    - LP: #1249089
  * net: check net.core.somaxconn sysctl values
    - LP: #1249089
  * fib_trie: remove potential out of bound access
    - LP: #1249089
  * tcp: cubic: fix overflow error in bictcp_update()
    - LP: #1249089
  * tcp: cubic: fix bug in bictcp_acked()
    - LP: #1249089
  * ipv6: don't stop backtracking in fib6_lookup_1 if subtree does not
    match
    - LP: #1249089
  * 8139cp: Add dma_mapping_error checking
    - LP: #1249089
  * tun: signedness bug in tun_get_user()
    - LP: #1249089
  * ipv6: remove max_addresses check from ipv6_create_tempaddr
    - LP: #1249089
  * ipv6: drop packets with multiple fragmentation headers
    - LP: #1249089
  * ipv6: Don't depend on per socket memory for neighbour discovery
    messages
    - LP: #1249089
  * net: bridge: convert MLDv2 Query MRC into msecs_to_jiffies for
    max_delay
    - LP: #1249089
  * ICMPv6: treat dest unreachable codes 5 and 6 as EACCES, not EPROTO
    - LP: #1249089
  * tipc: fix lockdep warning during bearer initialization
    - LP: #1249089
  * HID: hidraw: put old deallocation mechanism in place
    - LP: #1249089
  * HID: hidraw: correctly deallocate memory on device disconnect
    - LP: #1249089
  * xen-gnt: prevent adding duplicate gnt callbacks
    - LP: #1249089
  * ath9k: always clear ps filter bit on new assoc
    - LP: #1249089
  * libceph: unregister request in __map_request failed and nofail == false
    - LP: #1249089
  * usb: config->desc.bLength may not exceed amount of data returned by the
    device
    - LP: #1249089
  * USB: cdc-wdm: fix race between interrupt handler and tasklet
    - LP: #1249089
  * powerpc: Handle unaligned ldbrx/stdbrx
    - LP: #1249089
  * intel-iommu: Fix leaks in pagetable freeing
    - LP: #1249089
  * ath9k: fix rx descriptor related race condition
    - LP: #1249089
  * ath9k: avoid accessing MRC registers on single-chain devices
    - LP: #1249089
  * ASoC: wm8960: Fix PLL register writes
    - LP: #1249089
  * rculist: list_first_or_null_rcu() should use list_entry_rcu()
    - LP: #1249089
  * USB: mos7720: use GFP_ATOMIC under spinlock
    - LP: #1249089
  * USB: mos7720: fix big-endian control requests
    - LP: #12...

Changed in linux-lowlatency (Ubuntu Precise):
status: Invalid → Fix Released
status: Invalid → Fix Released
Andy Whitcroft (apw)
Changed in linux-lts-saucy (Ubuntu Precise):
status: Fix Committed → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.