error: #error PostgreSQL does not have native spinlock support on this platform. error: unknown type name ‘slock_t’

Lists: 503 토토 커뮤니티 페치 실패
From: 大坏蛋! <769323213(at)qq(dot)com>
To: pgsql-bugs <pgsql-bugs(at)lists(dot)postgresql(dot)org>
Subject: error: #error PostgreSQL does not have native spinlock support on this platform. error: unknown type name ‘slock_t’
Date: 2022-09-17 06:38:15
Message-ID: tencent_2C318EE5AB619D16ECCAE06FFDC9C4ED650A@qq.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: 503 토토 커뮤니티 페치 실패

[root(at)localhost build]# uname -a
Linux localhost.localdomain 4.19.90-23.19.v2101.a.ky10.loongarch64 #1 SMP Mon Sep 13 22:33:20 CST 2021 loongarch64 loongarch64 loongarch64 GNU/Linux

-------------------------------

../../src/include/storage/s_lock.h:946:2: error: #error PostgreSQL does not have native spinlock support on this platform. To continue the compilation, rerun configure using --disable-spinlocks. However, performance will be poor. Please report this to .
&nbsp;#error PostgreSQL does not have native spinlock support on this platform.&nbsp; To continue the compilation, rerun configure using --disable-spinlocks.&nbsp; However, performance will be poor.&nbsp; Please report this to pgsql-bugs(at)lists(dot)postgresql(dot)org(dot)
&nbsp; ^~~~~
../../src/include/storage/s_lock.h:1018:25: error: unknown type name ‘slock_t’
&nbsp;extern int tas(volatile slock_t *lock);&nbsp; /* in port/.../tas.s, or
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;^~~~~~~
../../src/include/storage/s_lock.h:1028:8: error: unknown type name ‘slock_t’
&nbsp;extern slock_t dummy_spinlock;
&nbsp; &nbsp; &nbsp; &nbsp; ^~~~~~~
../../src/include/storage/s_lock.h:1033:28: error: unknown type name ‘slock_t’
&nbsp;extern int s_lock(volatile slock_t *lock, const char *file, int line, const char *func);
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ^~~~~~~
In file included from ../../src/include/utils/sharedtuplestore.h:18,
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;from ../../src/include/nodes/execnodes.h:26,
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;from ../../src/include/executor/execdesc.h:18,
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;from ../../src/include/executor/executor.h:17,
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;from ../../src/include/funcapi.h:22,
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;from adminpack.c:23:
../../src/include/storage/sharedfileset.h:29:2: error: unknown type name ‘slock_t’
&nbsp; slock_t&nbsp; mutex;&nbsp; &nbsp;/* mutex protecting the reference count */
&nbsp; ^~~~~~~
In file included from ../../src/include/nodes/execnodes.h:32,
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;from ../../src/include/executor/execdesc.h:18,
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;from ../../src/include/executor/executor.h:17,
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;from ../../src/include/funcapi.h:22,
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;from adminpack.c:23:
../../src/include/storage/condition_variable.h:30:2: error: unknown type name ‘slock_t’
&nbsp; slock_t&nbsp; mutex;&nbsp; &nbsp;/* spinlock protecting the wakeup list */
&nbsp; ^~~~~~~
In file included from ../../src/include/executor/execdesc.h:18,
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;from ../../src/include/executor/executor.h:17,
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;from ../../src/include/funcapi.h:22,
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;from adminpack.c:23:
../../src/include/nodes/execnodes.h:1560:2: error: unknown type name ‘slock_t’
&nbsp; slock_t&nbsp; mutex;
&nbsp; ^~~~~~~
make[1]: *** [<内置&gt;:adminpack.o] 错误 1


From: Japin Li <japinli(at)hotmail(dot)com>
To: 大坏蛋! <769323213(at)qq(dot)com>
Cc: pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: error: #error PostgreSQL does not have native spinlock support on this platform. error: unknown type name ‘slock_t’
Date: 2022-09-17 12:44:56
Message-ID: MEYP282MB166925990C50A45E095FC5E7B64B9@MEYP282MB1669.AUSP282.PROD.OUTLOOK.COM
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-bugs


On Sat, 17 Sep 2022 at 14:38, 大坏蛋! <769323213(at)qq(dot)com> wrote:
> [root(at)localhost build]# uname -a
> Linux localhost.localdomain 4.19.90-23.19.v2101.a.ky10.loongarch64 #1 SMP Mon Sep 13 22:33:20 CST 2021 loongarch64 loongarch64 loongarch64 GNU/Linux
>
>

IIRC, PostgreSQL do not support loongarch platform, so if you want to
use PostgreSQL on loongarch, you can a) disable spinlock when executing
configure (not recommended for production) or b) implement a spinlock
for PostgreSQL on loongarch64 platform.

Maybe you could encounter other questions on loongarch, I'm not sure.

--
Regrads,
Japin Li.
ChengDu WenWu Information Technology Co.,Ltd.


From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Japin Li <japinli(at)hotmail(dot)com>
Cc: 大坏蛋! <769323213(at)qq(dot)com>, pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: error: #error PostgreSQL does not have native spinlock support on this platform. error: unknown type name ‘slock_t’
Date: 2022-09-17 14:51:27
Message-ID: 71597.1663426287@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-bugs

Japin Li <japinli(at)hotmail(dot)com> writes:
> IIRC, PostgreSQL do not support loongarch platform, so if you want to
> use PostgreSQL on loongarch, you can a) disable spinlock when executing
> configure (not recommended for production) or b) implement a spinlock
> for PostgreSQL on loongarch64 platform.

Wikipedia suggests that loongarch is more or less a MIPS clone,
so maybe you could adapt the MIPS stanza in s_lock.h to work.

Do "make check" in src/backend/storage/lmgr for a basic smoke-test
of new spinlock code.

regards, tom lane