[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: espeakup stops speaking bookworm arm64



sthibault: do you think this could be related to
https://github.com/linux-speakup/espeakup/pull/48 ?

(the reason for my guess: it is the only recent change within the
espeak_thread function - and a buffer-full / wait condition feels like
something that could occur semi-repeatably and could have edge cases)

Although the change from that pull request is not included in the
vanilla tarball of espeakup version 0.90 on GitHub, it is patched[1]
into Debian.

[1] - https://sources.debian.org/src/espeakup/1%3A0.90-13/debian/patches/flow_control/

On Wed, 20 Dec 2023 at 18:35, Frank Carmickle <frank@carmickle.com> wrote:
>
>
> > On Dec 20, 2023, at 13:21, Geoff Shang <geoff@QuiteLikely.com> wrote:
> >
> > On Tue, 28 Nov 2023, James Addison wrote:
> >
> >> To do that, the first step is to enable a sources.list entry for debug
> >> symbol packages, then to install the gdb and espeakup-dbgsym packages,
> >> and then after the espeakup process stops speaking, to attach the gdb
> >> debugger to locate where it got stuck by running: gdb
> >> /usr/bin/espeakup <pid-of-broken-process>
> >>
> >> If that works and you are provided with a (gdb) shell, you should be
> >> able to type the single word 'bt' and press enter to get a backtrace,
> >> and then copy and paste the results here.
> >
> > It took me a couple of goes, and I lost speech entirely both times (not sure why), but I got a trace.
> >
> > I'm not sure how helpful it is though.
> >
> > root@debian:~# gdb /usr/bin/espeakup 861
> > GNU gdb (Debian 13.1-3) 13.1
> > Copyright (C) 2023 Free Software Foundation, Inc.
> > License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> > This is free software: you are free to change and redistribute it.
> > There is NO WARRANTY, to the extent permitted by law.
> > Type "show copying" and "show warranty" for details.
> > This GDB was configured as "x86_64-linux-gnu".
> > Type "show configuration" for configuration details.
> > For bug reporting instructions, please see:
> > <https://www.gnu.org/software/gdb/bugs/>.
> > Find the GDB manual and other documentation resources online at:
> >    <http://www.gnu.org/software/gdb/documentation/>.
> >
> > For help, type "help".
> > Type "apropos word" to search for commands related to "word"...
> > Reading symbols from /usr/bin/espeakup...
> > Reading symbols from /usr/lib/debug/.build-id/76/62ad26e5f970e59309a544f3864db114aa389e.debug...
> > Attaching to program: /usr/bin/espeakup, process 861
> > [New LWP 862]
> > [New LWP 863]
> > [New LWP 864]
> > [New LWP 865]
> > [New LWP 866]
> > [Thread debugging using libthread_db enabled]
> > Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> > 0x00007f9de46bfda6 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> > (gdb) bt
> > #0  0x00007f9de46bfda6 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> > #1  0x00007f9de46c4b33 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> > #2  0x00005605c505e734 in main (argc=<optimized out>, argv=<optimized out>)
> >    at ../src/espeakup.c:229
>
> Thanks for working on this.
>
> Just to document, line 229 of espeakup.c is
>
> pthread_join(signal_thread_id, NULL);
>
> --FC
>


Reply to: