linux-libc-dev broken for crossbuilding, Multi-Arch:same violation

Bug #1886188 reported by Dimitri John Ledkov
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Critical
Seth Forshee
Focal
Critical
Seth Forshee
Groovy
Critical
Seth Forshee
linux-riscv (Ubuntu)
Critical
Unassigned
Focal
Critical
Seth Forshee
Groovy
Critical
Unassigned

Bug Description

SRU Justificatoin

Impact: Building linux-libc-dev for riscv64 from the linux-riscv package means that it can have a different version from the package on other architectures. This makes it uninstallable for cross building.

Fix: Move the riscv64 linux-libc-dev build back to the main kernel package so that the version will match.

Test Case: See below.

Regression Potential: This could cause trouble if the main kernel package version is behind the linux-riscv package version, and may require artificially inflating the version of the linux package. Currently this is not necessary, but it needs to be kept in mind when preparing packages for upload with the fixes applied.

---

# apt install linux-libc-dev:amd64 linux-libc-dev:riscv64
Reading package lists... Done
Building dependency tree
Reading state information... Done
linux-libc-dev is already the newest version (5.4.0-26.30).
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 linux-libc-dev : Breaks: linux-libc-dev:riscv64 (!= 5.4.0-26.30) but 5.4.0-27.31 is to be installed
 linux-libc-dev:riscv64 : Breaks: linux-libc-dev (!= 5.4.0-27.31) but 5.4.0-26.30 is to be installed
E: Unable to correct problems, you have held broken packages.

$ rmadison -S linux-libc-dev | grep -e riscv64 -e amd64 | grep -e focal -e groovy
 linux-libc-dev | 5.4.0-24.28 | focal | riscv64
 linux-libc-dev | 5.4.0-26.30 | focal | amd64, arm64, armhf, i386, ppc64el, s390x
 linux-libc-dev | 5.4.0-26.30 | groovy | amd64, arm64, armhf, i386, ppc64el, s390x
 linux-libc-dev | 5.4.0-27.31 | groovy | riscv64
 linux-libc-dev | 5.4.0-28.32 | focal-security | riscv64
 linux-libc-dev | 5.4.0-28.32 | focal-updates | riscv64
 linux-libc-dev | 5.4.0-40.44 | focal-security | amd64, arm64, armhf, i386, ppc64el, s390x
 linux-libc-dev | 5.4.0-40.44 | focal-updates | amd64, arm64, armhf, i386, ppc64el, s390x
 linux-libc-dev | 5.4.0-40.44 | groovy-proposed | amd64, arm64, armhf, i386, ppc64el, s390x

This is broken.

linux-libc-dev must have identical content for common files, across all architectures, and must have identical version number.

A few ways to fix this:

* Either enforce that src:linux & src:linux-riscv are at the same version number. But then reasons for splitting riscv into a separate build dissappear

* Make src:linux build _just_ the headers linux-libc-dev for risv64, and nothing else. And stop bulding linux-libc-dev form the src:linux-riscv package. Just like it does for i386.

* Or create new src:linux-headers that only builds linux-libc-dev for all architectures, without building any kernels. This way for example, we could rev userspace headers to v5.8/v5.9 ahead of said kernel landing, to shake out build-failures / userspace issues, whilst the kernel itself is still baking in bootstrap/proposed PPA.

This must be address in Focal and Groovy

tags: added: riscv64
Changed in linux (Ubuntu Focal):
importance: Undecided → Critical
Changed in linux (Ubuntu Groovy):
importance: Undecided → Critical
Changed in linux-riscv (Ubuntu Focal):
importance: Undecided → Critical
Changed in linux-riscv (Ubuntu Groovy):
importance: Undecided → Critical
Revision history for this message
Matthias Klose (doko) wrote :

to avoid that, please build linux-libc-dev from a separate source package. That would also allow providing an early user space package, while the various linux packages are still in the works

Revision history for this message
Dimitri John Ledkov (xnox) wrote :

Should kernel team even own linux-libc-dev ? Maybe foundations should hijack linux-libc-dev away from kernel team, and let us handle it?

Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 1886188

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
Changed in linux (Ubuntu Focal):
status: New → Incomplete
tags: added: bot-stop-nagging
Changed in linux (Ubuntu Focal):
status: Incomplete → Triaged
status: Triaged → New
Changed in linux (Ubuntu Groovy):
status: Incomplete → New
Changed in linux (Ubuntu):
status: New → Incomplete
Changed in linux (Ubuntu Focal):
status: New → Incomplete
Matthias Klose (doko)
Changed in linux (Ubuntu Focal):
status: Incomplete → New
Changed in linux (Ubuntu Groovy):
status: Incomplete → New
Changed in linux (Ubuntu):
status: New → Incomplete
Changed in linux (Ubuntu Focal):
status: New → Incomplete
Revision history for this message
Seth Forshee (sforshee) wrote :

linux-riscv in groovy is still copied forward from focal and will pick up the change applied from focal when it is updated. Therefore I'm marking that task invalid.

Changed in linux (Ubuntu Focal):
assignee: nobody → Seth Forshee (sforshee)
status: Incomplete → In Progress
Changed in linux (Ubuntu Groovy):
assignee: nobody → Seth Forshee (sforshee)
status: Incomplete → In Progress
Changed in linux-riscv (Ubuntu Focal):
assignee: nobody → Seth Forshee (sforshee)
status: New → In Progress
Changed in linux-riscv (Ubuntu Groovy):
status: New → Invalid
Seth Forshee (sforshee)
description: updated
Revision history for this message
Seth Forshee (sforshee) wrote :
Seth Forshee (sforshee)
Changed in linux (Ubuntu Groovy):
status: In Progress → Fix Committed
Changed in linux (Ubuntu Focal):
status: In Progress → Fix Committed
Changed in linux-riscv (Ubuntu Focal):
status: In Progress → Fix Committed
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) 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-focal' to 'verification-done-focal'. If the problem still exists, change the tag 'verification-needed-focal' to 'verification-failed-focal'.

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-focal
Revision history for this message
Dimitri John Ledkov (xnox) wrote :

I've already bootstrapped rustc using these changes. In both focal & groovy. This is really good!

For me it was enough to have it just in -proposed. But yeah, we do need this in -updates too.

tags: added: verification-done-focal
removed: verification-needed-focal
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 5.8.0-16.17

---------------
linux (5.8.0-16.17) groovy; urgency=medium

  * groovy/linux: 5.8.0-16.17 -proposed tracker (LP: #1891233)

  * Miscellaneous Ubuntu changes
    - hio -- Update to use bio_{start,end}_io_acct with 5.8+
    - Enable hio driver
    - [Packaging] Temporarily disable building doc package contents

linux (5.8.0-15.16) groovy; urgency=medium

  * groovy/linux: 5.8.0-15.16 -proposed tracker (LP: #1891177)

  * Miscellaneous Ubuntu changes
    - SAUCE: Documentation: import error c_funcptr_sig_re, c_sig_re (sphinx-
      doc/sphinx@0f49e30c)

linux (5.8.0-14.15) groovy; urgency=medium

  * groovy/linux: 5.8.0-14.15 -proposed tracker (LP: #1891085)

  * Packaging resync (LP: #1786013)
    - [Packaging] update helper scripts

  * msg_zerocopy.sh in net from ubuntu_kernel_selftests failed (LP: #1812620)
    - selftests/net: relax cpu affinity requirement in msg_zerocopy test

  * Fix missing HDMI/DP Audio on an HP Desktop (LP: #1890441)
    - ALSA: hda/hdmi: Add quirk to force connectivity

  * Add initial audio support for Lenovo ThinkStation P620 (LP: #1890317)
    - ALSA: usb-audio: Add support for Lenovo ThinkStation P620

  * Fix IOMMU error on AMD Radeon Pro W5700 (LP: #1890306)
    - PCI: Mark AMD Navi10 GPU rev 0x00 ATS as broken

  * Enlarge hisi_sec2 capability (LP: #1890222)
    - crypto: hisilicon - update SEC driver module parameter

  * Miscellaneous Ubuntu changes
    - [Config] Re-enable signing for ppc64el

 -- Seth Forshee <email address hidden> Tue, 11 Aug 2020 15:32:58 -0500

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

This bug was fixed in the package linux - 5.4.0-45.49

---------------
linux (5.4.0-45.49) focal; urgency=medium

  * focal/linux: 5.4.0-45.49 -proposed tracker (LP: #1893050)

  * [Potential Regression] dscr_inherit_exec_test from powerpc in
    ubuntu_kernel_selftests failed on B/E/F (LP: #1888332)
    - powerpc/64s: Don't init FSCR_DSCR in __init_FSCR()

linux (5.4.0-44.48) focal; urgency=medium

  * focal/linux: 5.4.0-44.48 -proposed tracker (LP: #1891049)

  * Packaging resync (LP: #1786013)
    - [Packaging] update helper scripts

  * ipsec: policy priority management is broken (LP: #1890796)
    - xfrm: policy: match with both mark and mask on user interfaces

linux (5.4.0-43.47) focal; urgency=medium

  * focal/linux: 5.4.0-43.47 -proposed tracker (LP: #1890746)

  * Packaging resync (LP: #1786013)
    - update dkms package versions

  * Devlink - add RoCE disable kernel support (LP: #1877270)
    - devlink: Add new "enable_roce" generic device param
    - net/mlx5: Document flow_steering_mode devlink param
    - net/mlx5: Handle "enable_roce" devlink param
    - IB/mlx5: Rename profile and init methods
    - IB/mlx5: Load profile according to RoCE enablement state
    - net/mlx5: Remove unneeded variable in mlx5_unload_one
    - net/mlx5: Add devlink reload
    - IB/mlx5: Do reverse sequence during device removal

  * msg_zerocopy.sh in net from ubuntu_kernel_selftests failed (LP: #1812620)
    - selftests/net: relax cpu affinity requirement in msg_zerocopy test

  * Enlarge hisi_sec2 capability (LP: #1890222)
    - Revert "UBUNTU: [Config] Disable hisi_sec2 temporarily"
    - crypto: hisilicon - update SEC driver module parameter

  * Fix missing HDMI/DP Audio on an HP Desktop (LP: #1890441)
    - ALSA: hda/hdmi: Add quirk to force connectivity

  * Fix IOMMU error on AMD Radeon Pro W5700 (LP: #1890306)
    - PCI: Mark AMD Navi10 GPU rev 0x00 ATS as broken

  * ASoC:amd:renoir: the dmic can't record sound after suspend and resume
    (LP: #1890220)
    - SAUCE: ASoC: amd: renoir: restore two more registers during resume

  * No sound, Dummy output on Acer Swift 3 SF314-57G with Ice Lake core-i7 CPU
    (LP: #1877757)
    - ASoC: SOF: Intel: hda: fix generic hda codec support

  * Fix right speaker of HP laptop (LP: #1889375)
    - SAUCE: hda/realtek: Fix right speaker of HP laptop

  * blk_update_request error when mount nvme partition (LP: #1872383)
    - SAUCE: nvme-pci: prevent SK hynix PC400 from using Write Zeroes command

  * soc/amd/renoir: detect dmic from acpi table (LP: #1887734)
    - ASoC: amd: add logic to check dmic hardware runtime
    - ASoC: amd: add ACPI dependency check
    - ASoC: amd: fixed kernel warnings

  * soc/amd/renoir: change the module name to make it work with ucm3
    (LP: #1888166)
    - AsoC: amd: add missing snd- module prefix to the acp3x-rn driver kernel
      module
    - SAUCE: remove a kernel module since its name is changed

  * Focal update: v5.4.55 upstream stable release (LP: #1890343)
    - AX.25: Fix out-of-bounds read in ax25_connect()
    - AX.25: Prevent out-of-bounds read in ax25_sendmsg()
    - dev: Defer free of skbs in flush_backlog
    - drivers/net/wan/x25_asy: Fix to make i...

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

This bug was fixed in the package linux-riscv - 5.4.0-31.35

---------------
linux-riscv (5.4.0-31.35) focal; urgency=medium

  * focal/linux-riscv: 5.4.0-31.35 -proposed tracker (LP: #1890743)

  * Focal update: v5.4.53 upstream stable release (LP: #1888560)
    - [Config] updateconfigs for BLK_DEV_SR_VENDOR

  * Packaging resync (LP: #1786013)
    - [Packaging] update update.conf

  * linux-libc-dev broken for crossbuilding, Multi-Arch:same violation
    (LP: #1886188)
    - [Config] Move build of linux-libc-dev to primary kernel

  [ Ubuntu: 5.4.0-44.48 ]

  * focal/linux: 5.4.0-44.48 -proposed tracker (LP: #1891049)
  * Packaging resync (LP: #1786013)
    - [Packaging] update helper scripts
  * ipsec: policy priority management is broken (LP: #1890796)
    - xfrm: policy: match with both mark and mask on user interfaces

  [ Ubuntu: 5.4.0-43.47 ]

  * focal/linux: 5.4.0-43.47 -proposed tracker (LP: #1890746)
  * Packaging resync (LP: #1786013)
    - update dkms package versions
  * Devlink - add RoCE disable kernel support (LP: #1877270)
    - devlink: Add new "enable_roce" generic device param
    - net/mlx5: Document flow_steering_mode devlink param
    - net/mlx5: Handle "enable_roce" devlink param
    - IB/mlx5: Rename profile and init methods
    - IB/mlx5: Load profile according to RoCE enablement state
    - net/mlx5: Remove unneeded variable in mlx5_unload_one
    - net/mlx5: Add devlink reload
    - IB/mlx5: Do reverse sequence during device removal
  * msg_zerocopy.sh in net from ubuntu_kernel_selftests failed (LP: #1812620)
    - selftests/net: relax cpu affinity requirement in msg_zerocopy test
  * Enlarge hisi_sec2 capability (LP: #1890222)
    - Revert "UBUNTU: [Config] Disable hisi_sec2 temporarily"
    - crypto: hisilicon - update SEC driver module parameter
  * Fix missing HDMI/DP Audio on an HP Desktop (LP: #1890441)
    - ALSA: hda/hdmi: Add quirk to force connectivity
  * Fix IOMMU error on AMD Radeon Pro W5700 (LP: #1890306)
    - PCI: Mark AMD Navi10 GPU rev 0x00 ATS as broken
  * ASoC:amd:renoir: the dmic can't record sound after suspend and resume
    (LP: #1890220)
    - SAUCE: ASoC: amd: renoir: restore two more registers during resume
  * No sound, Dummy output on Acer Swift 3 SF314-57G with Ice Lake core-i7 CPU
    (LP: #1877757)
    - ASoC: SOF: Intel: hda: fix generic hda codec support
  * Fix right speaker of HP laptop (LP: #1889375)
    - SAUCE: hda/realtek: Fix right speaker of HP laptop
  * blk_update_request error when mount nvme partition (LP: #1872383)
    - SAUCE: nvme-pci: prevent SK hynix PC400 from using Write Zeroes command
  * soc/amd/renoir: detect dmic from acpi table (LP: #1887734)
    - ASoC: amd: add logic to check dmic hardware runtime
    - ASoC: amd: add ACPI dependency check
    - ASoC: amd: fixed kernel warnings
  * soc/amd/renoir: change the module name to make it work with ucm3
    (LP: #1888166)
    - AsoC: amd: add missing snd- module prefix to the acp3x-rn driver kernel
      module
    - SAUCE: remove a kernel module since its name is changed
  * Focal update: v5.4.55 upstream stable release (LP: #1890343)
    - AX.25: Fix out-of-bounds read in ax25_connect()
    - AX.25: Prev...

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

This bug was fixed in the package linux-riscv - 5.8.0-1.1

---------------
linux-riscv (5.8.0-1.1) groovy; urgency=medium

  * groovy/linux-riscv: 5.8.0-1.1 -proposed tracker (LP: #1892958)

  * Packaging resync (LP: #1786013)
    - [Packaging] update variants
    - [Packaging] update update.conf
    - [Packaging] update variants
    - [Packaging] update update.conf

  * linux-libc-dev broken for crossbuilding, Multi-Arch:same violation
    (LP: #1886188)
    - [Config] Move build of linux-libc-dev to primary kernel

  * Miscellaneous Ubuntu changes
    - [Packaging] Update debhelper build-depends for compat 10
    - [Packaging] Updates for using upstream wireguard driver
    - [Config] Update configs for 5.8
    - [Config] Update annotations for 5.8
    - [Config] Update configs after rebase to 5.8.0-18.19
    - [Config] Enable CONFIG_DEBUG_INFO_BTF
    - [Config] Update toolchain versions in configs
    - [Config] CONFIG_SECURITY_DMESG_RESTRICT=y
    - [Config] Update toolchain versions in configs
    - [Config] Remove stale enforcements from annotations

 -- Seth Forshee <email address hidden> Thu, 27 Aug 2020 13:42:40 -0500

Changed in linux-riscv (Ubuntu Groovy):
status: Invalid → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers