Source: ceph
Version: 16.2.11+ds-5
Severity: normal
X-Debbugs-Cc: wuruil...@loongson.cn

Dear Maintainer,

ceph compilation error in loong64 arch, the 
attached patch provides some reference.

wuruilong

-- System Information:
Debian Release: trixie/sid
  APT prefers unreleased
  APT policy: (500, 'unreleased'), (500, 'unstable')
Architecture: loong64 (loongarch64)

Kernel: Linux 5.10.0-60.96.0.126.oe2203.loongarch64 (SMP w/32 CPU threads)
Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: unable to detect
Description: <short summary of the patch>
 TODO: Put a short summary on the line above and replace this paragraph
 with a longer explanation of this change. Complete the meta-information
 with other relevant fields (see below for details). To make it easier, the
 information below has been extracted from the changelog. Adjust it or drop
 it.
 .
 ceph (16.2.11+ds-5) unstable; urgency=high
 .
   * CVE-2023-43040: security issue with RGW with improperly verified POST keys.
     Applied upstream fix: rgw: Fix bucket validation against POST policies
     (Closes: #1053690).
Author: Thomas Goirand <z...@debian.org>
Bug-Debian: https://bugs.debian.org/1053690

---
The information above should follow the Patch Tagging Guidelines, please
checkout https://dep.debian.net/deps/dep3/ to learn about the format. Here
are templates for supplementary fields that you might want to add:

Origin: (upstream|backport|vendor|other), (<patch-url>|commit:<commit-id>)
Bug: <upstream-bugtracker-url>
Bug-Debian: https://bugs.debian.org/<bugnumber>
Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
Forwarded: (no|not-needed|<patch-forwarded-url>)
Applied-Upstream: <version>, (<commit-url>|commit:<commid-id>)
Reviewed-By: <name and email of someone who approved/reviewed the patch>
Last-Update: 2023-11-23

--- /dev/null
+++ ceph-16.2.11+ds/etc/sysctl/90-ceph-osd.conf
@@ -0,0 +1,2 @@
+fs.aio-max-nr = 1048576
+kernel.pid_max = 4194304
--- ceph-16.2.11+ds.orig/src/boost/boost/predef/architecture.h
+++ ceph-16.2.11+ds/src/boost/boost/predef/architecture.h
@@ -15,6 +15,7 @@ http://www.boost.org/LICENSE_1_0.txt)
 #include <boost/predef/architecture/blackfin.h>
 #include <boost/predef/architecture/convex.h>
 #include <boost/predef/architecture/ia64.h>
+#include <boost/predef/architecture/loongarch.h>
 #include <boost/predef/architecture/m68k.h>
 #include <boost/predef/architecture/mips.h>
 #include <boost/predef/architecture/parisc.h>
--- /dev/null
+++ ceph-16.2.11+ds/src/boost/boost/predef/architecture/loongarch.h
@@ -0,0 +1,43 @@
+/*
+Copyright Ruilong Wu 2023
+Distributed under the Boost Software License, Version 1.0.
+(See accompanying file LICENSE_1_0.txt or copy at
+http://www.boost.org/LICENSE_1_0.txt)
+*/
+
+#ifndef BOOST_PREDEF_ARCHITECTURE_LOONGARCH_H
+#define BOOST_PREDEF_ARCHITECTURE_LOONGARCH_H
+
+#include <boost/predef/version_number.h>
+#include <boost/predef/make.h>
+
+/* tag::reference[]
+= `BOOST_ARCH_LOONGARCH`
+
+http://en.wikipedia.org/wiki/RISC-V[RISC-V] architecture.
+
+[options="header"]
+|===
+| {predef_symbol} | {predef_version}
+
+| `+__loongarch__+` | {predef_detection}
+|===
+*/ // end::reference[]
+
+#define BOOST_ARCH_LOONGARCH BOOST_VERSION_NUMBER_NOT_AVAILABLE
+
+#if defined(__loongarch__)
+#   undef BOOST_ARCH_LOONGARCH
+#   define BOOST_ARCH_LOONGARCH BOOST_VERSION_NUMBER_AVAILABLE
+#endif
+
+#if BOOST_ARCH_LOONGARCH
+#   define BOOST_ARCH_LOONGARCH_AVAILABLE
+#endif
+
+#define BOOST_ARCH_RISCV_NAME "LoongArch"
+
+#endif
+
+#include <boost/predef/detail/test.h>
+BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_LOONGARCH,BOOST_ARCH_LOONGARCH_NAME)
--- ceph-16.2.11+ds.orig/src/boost/boost/predef/other/endian.h
+++ ceph-16.2.11+ds/src/boost/boost/predef/other/endian.h
@@ -125,6 +125,7 @@ information and acquired knowledge:
         defined(__ARMEL__) || \
         defined(__THUMBEL__) || \
         defined(__AARCH64EL__) || \
+       defined(__loongarch__) || \
         defined(_MIPSEL) || \
         defined(__MIPSEL) || \
         defined(__MIPSEL__) || \
--- ceph-16.2.11+ds.orig/src/boost/boostcpp.jam
+++ ceph-16.2.11+ds/src/boost/boostcpp.jam
@@ -607,7 +607,7 @@ rule address-model ( )
     return <conditional>@boostcpp.deduce-address-model ;
 }
 
-local deducable-architectures = arm mips1 power riscv s390x sparc x86 combined 
;
+local deducable-architectures = arm loongarch mips1 power riscv s390x sparc 
x86 combined ;
 feature.feature deduced-architecture : $(deducable-architectures) : propagated 
optional composite hidden ;
 for a in $(deducable-architectures)
 {
@@ -618,9 +618,10 @@ rule deduce-architecture ( properties *
 {
     local result ;
     local filtered = [ toolset-properties $(properties) ] ;
-    local names = arm mips1 power riscv s390x sparc x86 combined ;
+    local names = arm loongarch mips1 power riscv s390x sparc x86 combined ;
     local idx = [ configure.find-builds "default architecture" : $(filtered)
         : /boost/architecture//arm
+        : /boost/architecture//loongarch
         : /boost/architecture//mips1
         : /boost/architecture//power
         : /boost/architecture//riscv

Reply via email to