On 11/23/2014 08:37 PM, Vladimir Koković wrote:
PostgreSQL check-world regress failed with current GIT HEAD on my Kubuntu
14.10.

uname -a
Linux vlD-kuci 3.16.0-24-generic #32-Ubuntu SMP Tue Oct 28 13:13:18 UTC
2014 i686 athlon i686 GNU/Linux

gdb -d /home/src/postgresql-devel/postgresql-git/postgresql/src -c core
...
Loaded symbols for
/home/src/postgresql-devel/dev-build/src/test/regress/regress.so
(gdb) bt
#0  0xb76ecc7c in __kernel_vsyscall ()
#1  0xb7075577 in __GI_raise (sig=sig@entry=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:56
#2  0xb7076cf3 in __GI_abort () at abort.c:89
#3  0x084c326a in ?? ()
#4  0x0a56c3b8 in ?? ()
#5  0xb76d232f in pg_atomic_init_u64 (ptr=0xbfa16fd4, val=0) at
/home/src/postgresql-devel/postgresql-git/postgresql/src/include/port/atomics.h:445
#6  0xb76d50e4 in test_atomic_uint64 () at
/home/src/postgresql-devel/postgresql-git/postgresql/src/test/regress/regress.c:1022
#7  0xb76d5756 in test_atomic_ops (fcinfo=0xa57c76c) at
/home/src/postgresql-devel/postgresql-git/postgresql/src/test/regress/regress.c:1114
#8  0x0825bfee in ?? ()
...

Andres, have you had a chance to look at this?

On 32-bit x86, arch-x86.h leaves PG_HAVE_ATOMIC_U64_SUPPORT undefined. But generic-gcc.h, which is included later, then defines it.

pg_atomic_init_u64 does AssertPointerAlignment(ptr, 8) on the variable, but there is no guarantee that it is 8-bytes aligned on x86.

My patch solved check-world regress fail.

- Heikki


--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to