[From nobody Sun Apr 12 18:37:06 2026
Received: (at submit) by bugs.debian.org; 1 Apr 2026 09:35:14 +0000
X-Spam-Checker-Version: SpamAssassin 4.0.1-bugs.debian.org_2005_01_02
 (2024-03-25) on buxtehude.debian.org
X-Spam-Level: 
X-Spam-Status: No, score=-3.9 required=4.0 tests=BAYES_00, FOURLA,
 SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no
 version=4.0.1-bugs.debian.org_2005_01_02
X-Spam-Bayes: score:0.0000 Tokens: new, 55; hammy, 150; neutral, 119; spammy,
 0. spammytokens: hammytokens:0.000-+--UD:buildinfo,
 0.000-+--dpkgsource, 0.000-+--dpkg-source, 0.000-+--UD:changes,
 0.000-+--loong64
Return-path: &lt;zhangdandan@loongson.cn&gt;
Received: from mail.loongson.cn ([114.242.206.163]:60806)
 by buxtehude.debian.org with esmtp (Exim 4.96)
 (envelope-from &lt;zhangdandan@loongson.cn&gt;) id 1w7ryk-004A7R-0U
 for submit@bugs.debian.org; Wed, 01 Apr 2026 09:35:14 +0000
Received: from loongson.cn (unknown [10.2.10.31])
 by gateway (Coremail) with SMTP id _____8DxL6q95sxp0MEgAA--.33602S3;
 Wed, 01 Apr 2026 17:34:54 +0800 (CST)
Received: from [10.2.10.31] (unknown [10.2.10.31])
 by front1 (Coremail) with SMTP id qMiowJDxjcKz5sxp8nJiAA--.54524S3;
 Wed, 01 Apr 2026 17:34:45 +0800 (CST)
To: submit@bugs.debian.org
From: zhangdandan &lt;zhangdandan@loongson.cn&gt;
Subject: gasnet: FTBFS: Add loongarch64 support
Message-ID: &lt;c1904cf3-dd5a-12ba-81d6-ab841b0636d7@loongson.cn&gt;
Date: Wed, 1 Apr 2026 17:34:43 +0800
User-Agent: Mozilla/5.0 (X11; Linux loongarch64; rv:68.0) Gecko/20100101
 Thunderbird/68.7.0
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary=&quot;------------5E3220A8E1EA3B61C03DCE98&quot;
Content-Language: en-US
X-CM-TRANSID: qMiowJDxjcKz5sxp8nJiAA--.54524S3
X-CM-SenderInfo: x2kd0wxgdqvt3q6o00pqjv00gofq/
X-Coremail-Antispam: 1Uk129KBj93XoW7Cr4fGFWxWrW8ZF47trW8GrX_yoW5JF4kpr
 1xAF4UJFWkXr1rCrn7t34jqrW7J34kX3WUWa1fJ3WFvw4F9ryvqr1jqr1jgFy7JF4Sqw12
 gF17GFyUuFyUAFcCm3ZEXasCq-sJn29KB7ZKAUJUUUUU529EdanIXcx71UUUUU7KY7ZEXa
 sCq-sGcSsGvfJ3Ic02F40EFcxC0VAKzVAqx4xG6I80ebIjqfuFe4nvWSU5nxnvy29KBjDU
 0xBIdaVrnRJUUU9Fb4IE77IF4wAFF20E14v26r1j6r4UM7CY07I20VC2zVCF04k26cxKx2
 IYs7xG6rWj6s0DM7CIcVAFz4kK6r1j6r18M28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48v
 e4kI8wA2z4x0Y4vE2Ix0cI8IcVAFwI0_JFI_Gr1l84ACjcxK6xIIjxv20xvEc7CjxVAFwI
 0_Jr0_Gr1l84ACjcxK6I8E87Iv67AKxVW8Jr0_Cr1UM28EF7xvwVC2z280aVCY1x0267AK
 xVW8Jr0_Cr1UM2AIxVAIcxkEcVAq07x20xvEncxIr21le4C267I2x7xF54xIwI1l57IF6x
 kI12xvs2x26I8E6xACxx1l5I8CrVACY4xI64kE6c02F40Ex7xfMcIj6xIIjxv20xvE14v2
 6r1j6r18McIj6I8E87Iv67AKxVWUJVW8JwAm72CE4IkC6x0Yz7v_Jr0_Gr1lF7xvr2IY64
 vIr41lc7I2V7IY0VAS07AlzVAYIcxG8wCF04k20xvY0x0EwIxGrwCFx2IqxVCFs4IE7xkE
 bVWUJVW8JwC20s026c02F40E14v26r1j6r18MI8I3I0E7480Y4vE14v26r106r1rMI8E67
 AF67kF1VAFwI0_Jr0_JrylIxkGc2Ij64vIr41lIxAIcVC0I7IYx2IY67AKxVWUJVWUCwCI
 42IY6xIIjxv20xvEc7CjxVAFwI0_Jr0_Gr1lIxAIcVCF04k26cxKx2IYs7xG6r1j6r1xMI
 IF0xvEx4A2jsIE14v26r1j6r4UMIIF0xvEx4A2jsIEc7CjxVAFwI0_Jr0_GrUvcSsGvfC2
 KfnxnUUI43ZEXa7IU1CPfJUUUUU==
Delivered-To: submit@bugs.debian.org

This is a multi-part message in MIME format.
--------------5E3220A8E1EA3B61C03DCE98
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Source: gasnet
Version: 2025.8.0-5
Severity: normal
Tags: FTBFS patch
User: debian-loongarch@lists.debian.org
Usertags: loong64

Dear maintainers,

Compiling gasnet for loong64 has been failing in the Debian Package 
Auto-Building environment.
The error log is as follows,
```
......
In file included from 
/build/reproducible-path/gasnet-2025.8.0/gasnet_tools.h:91,
                  from 
/build/reproducible-path/gasnet-2025.8.0/gasnet_tools.c:26:
/build/reproducible-path/gasnet-2025.8.0/gasnet_membar.h:232:3: error: 
#error unknown CPU - dont know how to do a local memory barrier for your 
CPU/OS
   232 |  #error unknown CPU - dont know how to do a local memory 
barrier for your CPU/OS
       |   ^~~~~
In file included from 
/build/reproducible-path/gasnet-2025.8.0/gasnet_tools.h:93:
/build/reproducible-path/gasnet-2025.8.0/gasnet_atomicops.h: In function 
‘gasneti_genatomic32_set’:
/build/reproducible-path/gasnet-2025.8.0/gasnet_atomicops.h:99:81: 
error: implicit declaration of function ‘gasneti_local_wmb’; did you 
mean ‘gasneti_local_mb’? [-Wimplicit-function-declaration]
    99 |                                                 if (f &amp; 
GASNETI_ATOMIC_WMB_PRE) gasneti_local_wmb();
       |
^~~~~~~~~~~~~~~~~
......
```
After analyzing, we need to add loongarch64 support for gasnet.
Please consider the patch attached.
Based attached patch, I have built  gasnet successfully on loong64.
```
dpkg-deb: building package 'libgasnet-dev' in 
'../libgasnet-dev_2025.8.0-5.1_loong64.deb'.
dpkg-deb: building package 'gasnet' in '../gasnet_2025.8.0-5.1_loong64.deb'.
dpkg-deb: building package 'gasnet-dbgsym' in 
'../gasnet-dbgsym_2025.8.0-5.1_loong64.deb'.
  dpkg-genbuildinfo -O../gasnet_2025.8.0-5.1_loong64.buildinfo
  dpkg-genchanges -O../gasnet_2025.8.0-5.1_loong64.changes
dpkg-genchanges: info: not including original source code in upload
  dpkg-source --after-build .
dpkg-buildpackage: info: binary and diff upload (original source NOT 
included)
  signfile gasnet_2025.8.0-5.1.dsc
```

I was unable to locate where to submit a pull request upstream.
If someone knows where to submit the pull request, they can help 
contribute the patch upstream.

Best regards,
Dandan Zhang


--------------5E3220A8E1EA3B61C03DCE98
Content-Type: text/x-patch; charset=UTF-8;
 name=&quot;gasnet-add-basic-loongarch64-support.patch&quot;
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename=&quot;gasnet-add-basic-loongarch64-support.patch&quot;

Description: &lt;short summary of the patch&gt;
 .
 gasnet (2025.8.0-5.1) unstable; urgency=medium
 .
   * Add basic loongarch64 support.
Author: Dandan Zhang &lt;zhangdandan@loongson.cn&gt;

---
Last-Update: 2026-04-01

--- gasnet-2025.8.0.orig/gasnet_atomic_fwd.h
+++ gasnet-2025.8.0/gasnet_atomic_fwd.h
@@ -61,6 +61,7 @@
     (PLATFORM_COMPILER_XLC &amp;&amp; GASNETI_HAVE_SYNC_ATOMICS_32) || \
     (PLATFORM_ARCH_SPARC &amp;&amp; PLATFORM_COMPILER_CLANG /* TODO: not using GCC ASM due to Bug 3805 */) || \
     PLATFORM_ARCH_AARCH64 || \
+    PLATFORM_ARCH_LOONGARCH64 || \
     PLATFORM_ARCH_S390 || \
     PLATFORM_ARCH_TILE || \
     PLATFORM_ARCH_RISCV
--- gasnet-2025.8.0.orig/gasnet_membar.h
+++ gasnet-2025.8.0/gasnet_membar.h
@@ -208,6 +208,16 @@
  #endif
  #define GASNETI_RMB_IS_MB
  #define GASNETI_WMB_IS_MB
+#elif PLATFORM_ARCH_LOONGARCH64
+ #if PLATFORM_COMPILER_GNU
+   #define gasneti_local_mb() __sync_synchronize()
+   #define gasneti_local_wmb() gasneti_local_mb()
+   #define gasneti_local_rmb() gasneti_local_mb()
+ #else
+   #define GASNETI_USING_SLOW_MEMBARS 1
+ #endif
+ #define GASNETI_RMB_IS_MB
+ #define GASNETI_WMB_IS_MB
 #elif PLATFORM_ARCH_S390
  #if PLATFORM_COMPILER_GNU
    #define gasneti_local_mb() __sync_synchronize()
--- gasnet-2025.8.0.orig/other/gasnet_portable_platform.h
+++ gasnet-2025.8.0/other/gasnet_portable_platform.h
@@ -1030,6 +1030,15 @@
     #define _PLATFORM_ARCH_32 1
   #endif
 
+#elif defined(__loongarch__)
+  #define PLATFORM_ARCH_LOONGARCH64 1
+  #define PLATFORM_ARCH_FAMILYNAME LOONGARCH64
+  #define _PLATFORM_ARCH_LITTLE_ENDIAN 1
+  #if defined(__loongarch_lp64)
+    #define _PLATFORM_ARCH_64 1
+  #else
+    #define _PLATFORM_ARCH_32 1
+  #endif
 #elif defined(__s390__)
   #define PLATFORM_ARCH_S390 1
   #define PLATFORM_ARCH_FAMILYNAME S390

--------------5E3220A8E1EA3B61C03DCE98--
]