Re: [HACKERS] GSSAPI on Solaris - psql segfault
Zdenek Kotala wrote: Stefan Kaltenbrunner wrote: I just took a look at adding gssapi build support on solaris (solaris 10/x86_64, sun studio 10, 64bit build) which seemed easy enough by educating configure to look for -lgss but while it compiles just fine the resulting tree will not be able to complete a make check due to psql(!) segfaulting as soon as it tries to connect to the backend. the backtrace looks similiar to: program terminated by signal SEGV (no mapping at the fault address) 0x7fd3d401: _memcpy+0x00e1: movq %rax,(%rdi) Current function is pqPutMsgBytes 475 memcpy(conn-outBuffer + conn-outMsgEnd, buf, len); (dbx) where [1] _memcpy(0x4, 0x4709a0, 0x67, 0x2, 0x646c697562677000, 0x7361626174616400), at 0x7fd3d401 =[2] pqPutMsgBytes(buf = 0x4709a0, len = 103U, conn = 0x4682f0), line 475 in fe-misc.c [3] pqPutnchar(s = 0x4709a0 , len = 103U, conn = 0x4682f0), line 189 in fe-misc.c [4] pqPacketSend(conn = 0x4682f0, pack_type = '\0', buf = 0x4709a0, buf_len = 103U), line 2439 in fe-connect.c [5] PQconnectPoll(conn = 0x4682f0), line 1299 in fe-connect.c [6] connectDBComplete(conn = 0x4682f0), line 936 in fe-connect.c [7] PQsetdbLogin(pghost = (nil), pgport = (nil), pgoptions = (nil), pgtty = (nil), dbName = 0xfd7fffdffbeb postgres, login = (nil), pwd = (nil)), line 660 in fe-connect.c [8] main(argc = 3, argv = 0xfd7fffdff9b8), line 211 in startup.c ideas ? Do you use also 64bit psql? Can you send me your ./configure setup? However, I see there potential integer overflow, because len is size_t and conn-outMsgEnd is defined as int. yeah this is a full 64bit build - but I just did several fresh buildfarm cycles and I'm unable to reproduce the issue again ... Stefan ---(end of broadcast)--- TIP 5: don't forget to increase your free space map settings
[HACKERS] GSSAPI on Solaris - psql segfault
I just took a look at adding gssapi build support on solaris (solaris 10/x86_64, sun studio 10, 64bit build) which seemed easy enough by educating configure to look for -lgss but while it compiles just fine the resulting tree will not be able to complete a make check due to psql(!) segfaulting as soon as it tries to connect to the backend. the backtrace looks similiar to: program terminated by signal SEGV (no mapping at the fault address) 0x7fd3d401: _memcpy+0x00e1: movq %rax,(%rdi) Current function is pqPutMsgBytes 475 memcpy(conn-outBuffer + conn-outMsgEnd, buf, len); (dbx) where [1] _memcpy(0x4, 0x4709a0, 0x67, 0x2, 0x646c697562677000, 0x7361626174616400), at 0x7fd3d401 =[2] pqPutMsgBytes(buf = 0x4709a0, len = 103U, conn = 0x4682f0), line 475 in fe-misc.c [3] pqPutnchar(s = 0x4709a0 , len = 103U, conn = 0x4682f0), line 189 in fe-misc.c [4] pqPacketSend(conn = 0x4682f0, pack_type = '\0', buf = 0x4709a0, buf_len = 103U), line 2439 in fe-connect.c [5] PQconnectPoll(conn = 0x4682f0), line 1299 in fe-connect.c [6] connectDBComplete(conn = 0x4682f0), line 936 in fe-connect.c [7] PQsetdbLogin(pghost = (nil), pgport = (nil), pgoptions = (nil), pgtty = (nil), dbName = 0xfd7fffdffbeb postgres, login = (nil), pwd = (nil)), line 660 in fe-connect.c [8] main(argc = 3, argv = 0xfd7fffdff9b8), line 211 in startup.c ideas ? Stefan ---(end of broadcast)--- TIP 7: You can help support the PostgreSQL project by donating at http://www.postgresql.org/about/donate
Re: [HACKERS] GSSAPI on Solaris - psql segfault
Stefan Kaltenbrunner wrote: I just took a look at adding gssapi build support on solaris (solaris 10/x86_64, sun studio 10, 64bit build) which seemed easy enough by educating configure to look for -lgss but while it compiles just fine the resulting tree will not be able to complete a make check due to psql(!) segfaulting as soon as it tries to connect to the backend. Can we add the segfault to the Solaris expected regression results? ;-) --- the backtrace looks similiar to: program terminated by signal SEGV (no mapping at the fault address) 0x7fd3d401: _memcpy+0x00e1: movq %rax,(%rdi) Current function is pqPutMsgBytes 475 memcpy(conn-outBuffer + conn-outMsgEnd, buf, len); (dbx) where [1] _memcpy(0x4, 0x4709a0, 0x67, 0x2, 0x646c697562677000, 0x7361626174616400), at 0x7fd3d401 =[2] pqPutMsgBytes(buf = 0x4709a0, len = 103U, conn = 0x4682f0), line 475 in fe-misc.c [3] pqPutnchar(s = 0x4709a0 , len = 103U, conn = 0x4682f0), line 189 in fe-misc.c [4] pqPacketSend(conn = 0x4682f0, pack_type = '\0', buf = 0x4709a0, buf_len = 103U), line 2439 in fe-connect.c [5] PQconnectPoll(conn = 0x4682f0), line 1299 in fe-connect.c [6] connectDBComplete(conn = 0x4682f0), line 936 in fe-connect.c [7] PQsetdbLogin(pghost = (nil), pgport = (nil), pgoptions = (nil), pgtty = (nil), dbName = 0xfd7fffdffbeb postgres, login = (nil), pwd = (nil)), line 660 in fe-connect.c [8] main(argc = 3, argv = 0xfd7fffdff9b8), line 211 in startup.c ideas ? Stefan ---(end of broadcast)--- TIP 7: You can help support the PostgreSQL project by donating at http://www.postgresql.org/about/donate -- Bruce Momjian [EMAIL PROTECTED] http://momjian.us EnterpriseDB http://www.enterprisedb.com + If your life is a hard drive, Christ can be your backup. + ---(end of broadcast)--- TIP 2: Don't 'kill -9' the postmaster
Re: [HACKERS] GSSAPI on Solaris - psql segfault
Stefan Kaltenbrunner wrote: I just took a look at adding gssapi build support on solaris (solaris 10/x86_64, sun studio 10, 64bit build) which seemed easy enough by educating configure to look for -lgss but while it compiles just fine the resulting tree will not be able to complete a make check due to psql(!) segfaulting as soon as it tries to connect to the backend. the backtrace looks similiar to: program terminated by signal SEGV (no mapping at the fault address) 0x7fd3d401: _memcpy+0x00e1: movq %rax,(%rdi) Current function is pqPutMsgBytes 475 memcpy(conn-outBuffer + conn-outMsgEnd, buf, len); (dbx) where [1] _memcpy(0x4, 0x4709a0, 0x67, 0x2, 0x646c697562677000, 0x7361626174616400), at 0x7fd3d401 =[2] pqPutMsgBytes(buf = 0x4709a0, len = 103U, conn = 0x4682f0), line 475 in fe-misc.c [3] pqPutnchar(s = 0x4709a0 , len = 103U, conn = 0x4682f0), line 189 in fe-misc.c [4] pqPacketSend(conn = 0x4682f0, pack_type = '\0', buf = 0x4709a0, buf_len = 103U), line 2439 in fe-connect.c [5] PQconnectPoll(conn = 0x4682f0), line 1299 in fe-connect.c [6] connectDBComplete(conn = 0x4682f0), line 936 in fe-connect.c [7] PQsetdbLogin(pghost = (nil), pgport = (nil), pgoptions = (nil), pgtty = (nil), dbName = 0xfd7fffdffbeb postgres, login = (nil), pwd = (nil)), line 660 in fe-connect.c [8] main(argc = 3, argv = 0xfd7fffdff9b8), line 211 in startup.c ideas ? Do you use also 64bit psql? Can you send me your ./configure setup? However, I see there potential integer overflow, because len is size_t and conn-outMsgEnd is defined as int. Zdenek ---(end of broadcast)--- TIP 7: You can help support the PostgreSQL project by donating at http://www.postgresql.org/about/donate