Your message dated Sat, 07 Oct 2023 09:59:42 +0000 with message-id <e1qp462-00a4h2...@coccia.debian.org> and subject line Released with 12.2 has caused the Debian Bug report #1052007, regarding bookworm-pu: package lxcfs/5.0.3-1+deb12u1 to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact ow...@bugs.debian.org immediately.) -- 1052007: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1052007 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems
--- Begin Message ---Package: release.debian.org Severity: normal Tags: bookworm User: release.debian....@packages.debian.org Usertags: pu X-Debbugs-Cc: pkg-lxc-de...@lists.alioth.debian.org, gib...@debian.org Control: affects -1 + src:lxcfs [ Reason ] lxcfs 5.0.3-1 has a bug where /proc/cpuinfo is not properly reported within a 32bit arm container when the 64bit host has more than ~13 CPUs. This was initially reported in #1036818 and impacts some autopkgtests run on the ci.debian.net arm hosts. I have uploaded lxcfs 5.0.4-1 to unstable with a fix cherry-picked from the upstream main branch, and would like to include it in bookworm's version of lxcfs so that the CI arm servers can operate properly. [ Impact ] autopkgtests run on the CI infrastructure have been erroneously failing for some packages, requiring workarounds. Fixing this will allow autopkgtests for armel/armhf runs to be useful once again. [ Tests ] I have tested the patch locally in a QEMU VM, both when initially debugging the issue as well as installing the proposed update. The changes have been reviewed and accepted by the upstream developers. [ Risks ] The risk of regression is limited -- the changes have been reviewed and accepted by the upstream developers. The fix is small and targeted. [ Checklist ] [*] *all* changes are documented in the d/changelog [*] I reviewed all changes and I approve them [*] attach debdiff against the package in (old)stable [*] the issue is verified as fixed in unstable [ Changes ] Backport upstream commit fc8f593bda9eb4692daa07512ef6ba60dc39aded, which was merged upstream earlier today and will be included in the next release of lxcfs. There's also a small change to adjust the default branch used by gbp to reflect the new branch for bookworm fixes. [ Other info ] The source debdiff is attached.diff -Nru lxcfs-5.0.3/debian/changelog lxcfs-5.0.3/debian/changelog --- lxcfs-5.0.3/debian/changelog 2023-01-17 01:21:28.000000000 +0000 +++ lxcfs-5.0.3/debian/changelog 2023-09-15 21:32:11.000000000 +0000 @@ -1,3 +1,11 @@ +lxcfs (5.0.3-1+deb12u1) bookworm; urgency=medium + + * Cherry-pick upstream fix for /proc/cpuinfo being empty within an arm32 + container with large numbers of CPUs (See: #1036818) + * Adjust branch in d/gbp.conf + + -- Mathias Gibbens <gib...@debian.org> Fri, 15 Sep 2023 21:32:11 +0000 + lxcfs (5.0.3-1) unstable; urgency=medium [ Mathias Gibbens ] diff -Nru lxcfs-5.0.3/debian/gbp.conf lxcfs-5.0.3/debian/gbp.conf --- lxcfs-5.0.3/debian/gbp.conf 2023-01-17 01:21:28.000000000 +0000 +++ lxcfs-5.0.3/debian/gbp.conf 2023-09-15 21:32:07.000000000 +0000 @@ -1,3 +1,3 @@ [DEFAULT] pristine-tar = True -debian-branch = master +debian-branch = debian/bookworm diff -Nru lxcfs-5.0.3/debian/patches/000-fix-arm32-personality.patch lxcfs-5.0.3/debian/patches/000-fix-arm32-personality.patch --- lxcfs-5.0.3/debian/patches/000-fix-arm32-personality.patch 1970-01-01 00:00:00.000000000 +0000 +++ lxcfs-5.0.3/debian/patches/000-fix-arm32-personality.patch 2023-09-15 21:32:07.000000000 +0000 @@ -0,0 +1,88 @@ +From fc8f593bda9eb4692daa07512ef6ba60dc39aded Mon Sep 17 00:00:00 2001 +From: Mathias Gibbens <gib...@debian.org> +Date: Mon, 4 Sep 2023 00:13:57 +0000 +Subject: [PATCH] proc: Fix /proc/cpuinfo not respecting personality + +It was found that the personality within the container was not being +properly respected, which for large numbers of CPUs would break +reporting of /proc/cpuinfo in arm32 containers running on an arm64 host. + +Signed-off-by: Mathias Gibbens <gib...@debian.org> +--- + src/proc_fuse.c | 49 +++++++++++++++++++++++++++++++++++++++++++++++-- + 1 file changed, 47 insertions(+), 2 deletions(-) + +diff --git a/src/proc_fuse.c b/src/proc_fuse.c +index 25af10a1..40eb2680 100644 +--- a/src/proc_fuse.c ++++ b/src/proc_fuse.c +@@ -82,6 +82,45 @@ static off_t get_procfile_size(const char *path) + return answer; + } + ++static off_t get_procfile_size_with_personality(const char *path) ++{ ++ struct fuse_context *fc = fuse_get_context(); ++ __u32 host_personality = liblxcfs_personality(), caller_personality; ++ bool change_personality; ++ int ret; ++ off_t procfile_size_ret; ++ ++ if (get_task_personality(fc->pid, &caller_personality) < 0) ++ return log_error(0, "Failed to get caller process (pid: %d) personality", fc->pid); ++ ++ /* do we need to change thread personality? */ ++ change_personality = host_personality != caller_personality; ++ ++ if (change_personality) { ++ ret = personality(caller_personality); ++ if (ret == -1) ++ return log_error(0, "Call to personality(%d) failed: %s\n", ++ caller_personality, strerror(errno)); ++ ++ lxcfs_debug("task (tid: %d) personality was changed %d -> %d\n", ++ (int)syscall(SYS_gettid), ret, caller_personality); ++ } ++ ++ procfile_size_ret = get_procfile_size(path); ++ ++ if (change_personality) { ++ ret = personality(host_personality); ++ if (ret == -1) ++ return log_error(0, "Call to personality(%d) failed: %s\n", ++ host_personality, strerror(errno)); ++ ++ lxcfs_debug("task (tid: %d) personality was restored %d -> %d\n", ++ (int)syscall(SYS_gettid), ret, host_personality); ++ } ++ ++ return procfile_size_ret; ++} ++ + __lxcfs_fuse_ops int proc_getattr(const char *path, struct stat *sb) + { + struct timespec now; +@@ -106,7 +145,10 @@ __lxcfs_fuse_ops int proc_getattr(const char *path, struct stat *sb) + strcmp(path, "/proc/swaps") == 0 || + strcmp(path, "/proc/loadavg") == 0 || + strcmp(path, "/proc/slabinfo") == 0) { +- sb->st_size = get_procfile_size(path); ++ if (liblxcfs_functional()) ++ sb->st_size = get_procfile_size_with_personality(path); ++ else ++ sb->st_size = get_procfile_size(path); + sb->st_mode = S_IFREG | 00444; + sb->st_nlink = 1; + return 0; +@@ -164,7 +206,10 @@ __lxcfs_fuse_ops int proc_open(const char *path, struct fuse_file_info *fi) + + info->type = type; + +- info->buflen = get_procfile_size(path) + BUF_RESERVE_SIZE; ++ if (liblxcfs_functional()) ++ info->buflen = get_procfile_size_with_personality(path) + BUF_RESERVE_SIZE; ++ else ++ info->buflen = get_procfile_size(path) + BUF_RESERVE_SIZE; + + info->buf = zalloc(info->buflen); + if (!info->buf) diff -Nru lxcfs-5.0.3/debian/patches/series lxcfs-5.0.3/debian/patches/series --- lxcfs-5.0.3/debian/patches/series 1970-01-01 00:00:00.000000000 +0000 +++ lxcfs-5.0.3/debian/patches/series 2023-09-15 21:32:07.000000000 +0000 @@ -0,0 +1 @@ +000-fix-arm32-personality.patchsignature.asc
Description: This is a digitally signed message part
--- End Message ---
--- Begin Message ---Version: 12.2 The upload requested in this bug has been released as part of 12.2.
--- End Message ---