Package: ceph / 16.2.15+ds-0+deb12u1

Metadata

Package Version Patches format
ceph 16.2.15+ds-0+deb12u1 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
enable strsignal.patch | (download)

CMakeLists.txt | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 this defines have_reentrant_strsignal as sys_siglist no longer
  exists with glibc 2.32 and all programs should use strsignal instead.
update java source target flags.patch | (download)

src/java/CMakeLists.txt | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 use --release 7 instead of -source/-target
 Instead of -source/-target ceph should be build with --release for OpenJDK 9
 or later so that the bootclasspath is also set, as per JEP-247, otherwise it
 risks incurring into binary incompatibility when run with an earlier OpenJDK.
 OpenJDK 11 minimum compatibility release has been updated to 7.
disable crypto.patch | (download)

src/os/CMakeLists.txt | 5 3 + 2 - 0 !
1 file changed, 3 insertions(+), 2 deletions(-)

---
civetweb 755 1.8 somaxconn configurable_conf.patch | (download)

src/civetweb/resources/civetweb.conf | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

 adds max_connections to reference configuration.
civetweb 755 1.8 somaxconn configurable.patch | (download)

src/civetweb/src/civetweb.c | 16 11 + 5 - 0 !
1 file changed, 11 insertions(+), 5 deletions(-)

 makes somaxconn user-configurable.
civetweb 755 1.8 somaxconn configurable_test.patch | (download)

src/civetweb/test/page3.ssjs | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

 adds max_connections to test display.
debian armel armhf buildflags.patch | (download)

cmake/modules/SIMDExt.cmake | 11 7 + 4 - 0 !
src/erasure-code/jerasure/gf-complete/m4/ax_ext.m4 | 15 11 + 4 - 0 !
2 files changed, 18 insertions(+), 8 deletions(-)

---
fix bash completion location | (download)

src/bash_completion/CMakeLists.txt | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

---
32bit fixes.patch | (download)

src/SimpleRADOSStriper.cc | 2 1 + 1 - 0 !
src/common/buffer.cc | 2 1 + 1 - 0 !
src/librbd/object_map/DiffRequest.cc | 2 1 + 1 - 0 !
src/os/bluestore/BlueFS.cc | 8 4 + 4 - 0 !
src/s3select/include/s3select_functions.h | 2 1 + 1 - 0 !
src/tools/cephfs_mirror/FSMirror.cc | 4 2 + 2 - 0 !
src/tools/neorados.cc | 6 3 + 3 - 0 !
src/tools/rbd_mirror/image_replayer/snapshot/Replayer.cc | 10 6 + 4 - 0 !
8 files changed, 19 insertions(+), 17 deletions(-)

 misc fixes for 32 bit architecture builds.
add option to disable ceph dencoder.patch | (download)

src/tools/CMakeLists.txt | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

---
riscv64 link pthread.patch | (download)

CMakeLists.txt | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

 link with -pthread instead of -lpthread to fix ftbfs on riscv64
fix ceph osd systemd target.patch | (download)

systemd/ceph-osd.target | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 fix systemd ceph-osd.target
 This helps when rebooting.
compile ppc.c on all powerpc machines.patch | (download)

cmake/modules/SIMDExt.cmake | 17 14 + 3 - 0 !
src/arch/CMakeLists.txt | 2 1 + 1 - 0 !
2 files changed, 15 insertions(+), 4 deletions(-)

 [patch] arch,cmake: compile ppc.c on all powerpc machines

* cmake/modules/SIMDExt.cmake: define HAVE_PPC for 32-bit PowerPC.
* src/arch/CMakeLists.txt: compile ppc.c for all PowerPC architectures,
  including powerpc (32-bit PowerPC), ppc64el (64-bit Little Endian
  PowerPC) and ppc64 (64-bit Big Endian PowerPC).

before this change, ppc.c is only compiled if HAVE_POWER8 is defined.
but Power8 is a 64-bit PowerPC architecture. while in src/arch/probe.cc,
we check for `defined(__powerpc__) || defined(__ppc__)`, if this is
true, ceph_arch_ppc_probe() is used to check for the support of
Altivec. but on non-power8 PowerPC machines, the linker fails to find the
symbols like ceph_arch_ppc_probe(), as ppc.c is not compiled on them.

in this change, ppc.c is compiled on all PowerPC architectures, so that
ceph_arch_ppc_probe() is also available on non-power8 machines. this
change does not impact the behavior of non-power8 machines. because
on them, the runtime check would fail to detect the existence of
PPC_FEATURE2_VEC_CRYPTO instructions.

Reported-by: Mattias Ellert <mattias.ellert@physics.uu.se>
Signed-off-by: Kefu Chai <tchaikov@gmail.com>

bug1914584.patch | (download)

src/rgw/rgw_user.cc | 9 8 + 1 - 0 !
1 file changed, 8 insertions(+), 1 deletion(-)

 [patch] rgw/radosgw-admin clarify error when email address already in
 use

The error message if you try and create an S3 user with an email
address that is already associated with another S3 account is very
confusing; this patch makes it much clearer

To reproduce:

radosgw-admin user create --uid=foo --display-name="Foo test" --email=bar@domain.invalid
radosgw-admin user create --uid=test --display-name="AN test" --email=bar@domain.invalid
could not create user: unable to parse parameters, user id mismatch, operation id: foo does not match: test

With this patch:

radosgw-admin user create --uid=test --display-name="AN test" --email=bar@domain.invalid
could not create user: unable to create user test because user id foo already exists with email bar@domain.invalid

Fixes: https://tracker.ceph.com/issues/49137
Fixes: https://tracker.ceph.com/issues/19411
Signed-off-by: Matthew Vernon <mv3@sanger.ac.uk>
(cherry picked from commit 05318d6f71e45a42a46518a0ef17047dfab83990)

cmake test for 16 bytes atomic support on mips also.patch | (download)

cmake/modules/CheckCxxAtomic.cmake | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 cmake: test for 16-byte atomic support on mips also
 it's reported that a mips64el build host is able to pass the test of
 CheckCxxAtomic without linking against libatomic, while librbd.so
 fails to link due to failures like
 .
 /usr/bin/ld: ../../../lib/librbd.so.1.16.0: undefined reference to `__atomic_store_16'
 /usr/bin/ld: ../../../lib/librbd.so.1.16.0: undefined reference to `__atomic_load_16'
 /usr/bin/ld: ../../../lib/librbd.so.1.16.0: undefined reference to `__atomic_compare_exchange_16'
 .
 so we have to check the existence of __atomic_load_16 instruction on
 mips architecture.
only yied under armv7 and above.patch | (download)

src/rocksdb/third-party/folly/folly/portability/Asm.h | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 only yield under armv7 and above (#1176)
Fix build with fmt 8 9.patch | (download)

src/crimson/os/seastore/CMakeLists.txt | 1 1 + 0 - 0 !
src/crimson/os/seastore/onode_manager/staged-fltree/node_extent_accessor.h | 2 1 + 1 - 0 !
src/crimson/os/seastore/segment_manager.cc | 19 19 + 0 - 0 !
src/crimson/os/seastore/segment_manager.h | 3 3 + 0 - 0 !
src/crimson/osd/main.cc | 6 3 + 3 - 0 !
src/seastar/include/seastar/core/print.hh | 4 4 + 0 - 0 !
6 files changed, 31 insertions(+), 4 deletions(-)

 fix build with fmt 8/9

+ changes in segment_manager.cc and segment_manager.h are backported from
  part of the large changes in https://github.com/ceph/ceph/commit/d5b0cd13
+ change in node_extent_accessor.h is not forwarded to upstream since it's
  a workaround. However it doesn't harm since it's just a error message
  which shouldn't happen anyway.
+ changes in seastar is backported from
  https://github.com/scylladb/seastar/commit/dfb62861
+ changes in crimson/osd/main.cc is backported from
  https://github.com/ceph/ceph/commit/58cb9bac

fix CheckCxxAtomic riscv64.patch | (download)

cmake/modules/CheckCxxAtomic.cmake | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 fix checkcxxatomic to detect more accurately
 Some platforms like riscv64 does not have full support for atomic primitives,
 yet passes the test. Adding operator++ fixes this issue.
CVE 2022 3854_1_rgw_Guard_against_malformed_bucket_URLs.patch | (download)

src/rgw/rgw_common.cc | 5 5 + 0 - 0 !
1 file changed, 5 insertions(+)

 cve-2022-3854: rgw: guard against malformed bucket urls
 Misplaced colons can result in radosgw thinking is has a bucket URL
 but with no bucket name, leading to a crash later on.
CVE 2024 48916.patch | (download)

src/rgw/rgw_rest_sts.cc | 3 3 + 0 - 0 !
1 file changed, 3 insertions(+)

 [patch] [cve-2024-48916] rgw/sts: fix to disallow unsupported jwt
 algorithms while authenticating AssumeRoleWithWebIdentity using JWT obtained
 from an external IDP.

fixes: https://tracker.ceph.com/issues/68836

Signed-off-by: Pritha Srivastava <prsrivas@redhat.com>