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) Status: Incomplete => In Progress ** Changed in: linux (Ubuntu Focal) Assignee: (unassigned) => Seth Forshee (sforshee) ** Changed in: linux (Ubuntu Groovy) Status: Incomplete => In Progress ** Changed in: linux (Ubuntu Groovy) Assignee: (unassigned) => Seth Forshee (sforshee) ** Changed in: linux-riscv (Ubuntu Focal) Status: New => In Progress ** Changed in: linux-riscv (Ubuntu Focal) Assignee: (unassigned) => Seth Forshee (sforshee) ** Changed in: linux-riscv (Ubuntu Groovy) Status: New => Invalid ** Description changed: + 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 + 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 + 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 + 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 -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux-riscv in Ubuntu. https://bugs.launchpad.net/bugs/1886188 Title: linux-libc-dev broken for crossbuilding, Multi-Arch:same violation Status in linux package in Ubuntu: In Progress Status in linux-riscv package in Ubuntu: Invalid Status in linux source package in Focal: In Progress Status in linux-riscv source package in Focal: In Progress Status in linux source package in Groovy: In Progress Status in linux-riscv source package in Groovy: Invalid 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 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1886188/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp