Paul Eggert wrote: >Yes, I generated this patch: > >http://lists.gnu.org/archive/html/bug-cvs/2005-07/msg00034.html > >Unfortunately, as I wrote in that email, I can't reproduce the bug >with CVS 1.12.12, so I can't really test that the patch fixes the bug >in general. Also, Alexander Taler wrote that the patch does not >correct the bug for him. Please see: > >http://lists.gnu.org/archive/html/bug-cvs/2005-07/msg00037.html > >I haven't yet had the time to investigate it further. > >
I wasn't finding time to implement and test my alternative idea, so I debugged your patch, Paul. The blocking problem Alexander Taler reported was due to the work_around_ssh_glitch() finding ways to invoke POSIX's "undefined behavior" after a Linux vfork() (actually, the child's read read was blocking while the parent (client) was also blocking waiting for its child to call execvp or exit and the grandchild, therefore, didn't have a client to talk to and so blocked waiting for data from the blocking client...), which piped_child had already called. Once I tweaked the piped_child to used fork() instead of vfork, your patch worked like a charm. (That code shouldn't have been calling vfork() originally, strictly, since it did things before it called execvp - I guess it just happened to work). The new code now passes the sshstdio-6 test consistently on my Linux FC4, whereas the same system was consistently failing this test once I removed the select() workarounds in client.c's handle_m and handle_e functions. I should commit this change shortly (assuming Savannah comes back up soon - it appears to be down). Assuming this fix has the same effect on other platforms during nightly testing, it should go out with the 1.12.13 release in a few days. I also plan to backport this change to the 1.11 branch, but am also delayed by Savannah's troubles. Since 1.11.21 just went out, it may be a little longer before I release this fix with 1.11.22. Regards, Derek -- Derek R. Price CVS Solutions Architect Ximbiot <http://ximbiot.com> v: +1 717.579.6168 f: +1 717.234.3125 <mailto:[EMAIL PROTECTED]> _______________________________________________ Bug-cvs mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/bug-cvs
