subversion-1.11.1-1+libserf1_0-1.3.9-1: Segfault after failed connect + empty serf debug package

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

subversion-1.11.1-1+libserf1_0-1.3.9-1: Segfault after failed connect + empty serf debug package

Christian Franke
Subversion segfaults with null instruction pointer after a failed
connect. This affects the http and https protocols but not the svn protocol.
Related report: https://cygwin.com/ml/cygwin/2019-11/msg00126.html

Testcase:

$ uname -srvmo
CYGWIN_NT-10.0 3.1.2(0.340/5/3) 2019-12-21 15:25 x86_64 Cygwin

$ cygcheck -f /bin/svn
subversion-1.11.1-1

$ cygcheck -f /bin/cygserf-1-0.dll
libserf1_0-1.3.9-1

$ svn info https://127.0.0.1:49494
Segmentation fault (core dumped)

$ svn info http://127.0.0.1:49494
Segmentation fault (core dumped)

$ svn info svn://127.0.0.1:49494
svn: E170013: Unable to connect to a repository at URL
'svn://127.0.0.1:49494'
svn: E000111: Can't connect to host '127.0.0.1': Connection refused

Stacktrace from gdb:

#0  0x0000000000000000 in ?? ()
#1  0x00000003ce7c2c87 in serf.process_connection () from
/usr/bin/cygserf-1-0.dll
#2  0x00000003ce7c1333 in serf_event_trigger () from
/usr/bin/cygserf-1-0.dll
#3  0x00000003ce7c141c in serf_context_run () from /usr/bin/cygserf-1-0.dll
#4  0x00000003ce0e7a11 in svn_ra_serf__context_run (sess=0x8000c2fb8,
waittime_left=0xffffbef0, scratch_pool=0x8000d7e38)
     at
/usr/src/debug/subversion-1.11.1-1/subversion/libsvn_ra_serf/util.c:913
...

Is possibly some error handling function pointer not set properly?

Same problem applies to cygwin x86 version. Downgrading to
cygwin-3.0.7-1, libserf1_0-1.3.8-1 and subversion-1.10.4-1 does not help.

There is no easy way for further debugging. A serf-debuginfo package
exists, but its tarball is empty...

PS: On the mirrors, there is still a serf-1.2.1-1-src.tar.bz2 with a
(nonempty!) serf-debuginfo-1.2.1-1.tar.bz2 but the corresponding binary
package libserf1_0-1.2.1-1.tar.xz is missing.

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

Reply | Threaded
Open this post in threaded view
|

Re: subversion-1.11.1-1+libserf1_0-1.3.9-1: Segfault after failed connect + empty serf debug package

David Rothenberger
On 1/1/2020 9:57 AM, Christian Franke wrote:
> Subversion segfaults with null instruction pointer after a failed
> connect. This affects the http and https protocols but not the svn
> protocol.
> Related report: https://cygwin.com/ml/cygwin/2019-11/msg00126.html

I can reproduce this issue, but I don't anticipate investigating it.

I have yet to package the latest Subversion release. I no longer use
Subversion and the build process is quite complicated. Maintaining the
Cygwin port has always been near the limits of my abilities, and since I
no longer use Subversion, I've simply lost interest.

If you would like to take over maintenance of Subversion, I'd be happy
to support you as much as I can. ;-)

> There is no easy way for further debugging. A serf-debuginfo package
> exists, but its tarball is empty...

serf switched to scons as a build platform. scons is written in Python
and aims to replace autoconf/automake. scons knew nothing about Cygwin
when serf switched to it, so I had to teach it to build Cygwin stuff. I
am NOT a Python programmer, but I managed to get it working. Well,
everything except the debug packages.

If you know Python, please have a try fixing it.

Otherwise, you can rebuild serf from source with debugging enabled and
without stripping the symbols. There's a section of the .cygport file
commented out to do this.

--
David Rothenberger  ----  [hidden email]

Hain't we got all the fools in town on our side?  And hain't that a big
enough majority in any town?
                -- Mark Twain, "Huckleberry Finn"

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

Reply | Threaded
Open this post in threaded view
|

Re: subversion-1.11.1-1+libserf1_0-1.3.9-1: Segfault after failed connect + empty serf debug package

David Rothenberger
On 1/9/2020 9:11 AM, David Rothenberger wrote:
> On 1/1/2020 9:57 AM, Christian Franke wrote:
>> Subversion segfaults with null instruction pointer after a failed
>> connect. This affects the http and https protocols but not the svn
>> protocol.
>> Related report: https://cygwin.com/ml/cygwin/2019-11/msg00126.html
>
> I can reproduce this issue, but I don't anticipate investigating it.

I was able to build the latest subversion 1.13 and unfortunately, the
issue still exists in that version. I tried installing an unstripped
version of the serf library, but I still could not get a full backtrace.
There is no update to serf.

At this point, I don't have any further ideas to troubleshoot this.


--
David Rothenberger  ----  [hidden email]

The most dangerous organization in America today is:
        (a) The KKK
        (b) The American Nazi Party
        (c) The Delta Frequent Flyer Club

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple