Re: Bug#956324: Clustalo bus error on mipsel (Was: Bug#956324: python-biopython: FTBFS on mipsel)

Andreas Tille <[email protected]>
Newsgroups gmane.linux.debian.devel.mentors,gmane.linux.debian.ports.mips
Message-ID <[email protected]>
Hi Jeffrey,

thanks a lot for this analysis.  Any chance that somebody could
turn this into a patch I could try?

Kind regards

     Andreas.

On Thu, Apr 30, 2020 at 03:40:12PM -0400, Jeffrey Walton wrote:
> On Fri, Apr 17, 2020 at 7:21 AM Andreas Tille <[email protected]> wrote:
> >  ...
> > So it seems the bus error occures somehow here:
> >
> >    https://salsa.debian.org/med-team/clustalo/-/blob/master/src/clustal/pair_dist.c#L346
> 
> NewProgress is at
> https://salsa.debian.org/med-team/clustalo/-/blob/master/src/clustal/progress.c#L53.
> It uses a progress_t at
> https://salsa.debian.org/med-team/clustalo/-/blob/master/src/clustal/progress.h#L25.
> 
> typedef struct {
>     /* where to write to */
>     FILE *prFile;
>     /* prefix printed before each step */
>     char *pcPrefix;
>     bool bPrintCR;
>     char pcLastLogMsg[1024];
>     Stopwatch_t *prStopwatch;
> } progress_t;
> 
> And stopwatch_t at
> https://salsa.debian.org/med-team/clustalo/-/blob/master/src/squid/stopwatch.h:
> 
> struct stopwatch_s {
>   time_t t0; /* Wall clock time, ANSI time()  */
> #ifdef SRE_STRICT_ANSI
>   clock_t cpu0; /* CPU time, ANSI clock()        */
> #else
>   struct tms cpu0; /* CPU/system time, POSIX times()*/
> #endif
> 
>   double elapsed; /* elapsed time, seconds */
>   double user; /* CPU time, seconds */
>   double sys; /* system time, seconds */
> };
> 
> There are your doubles that are likely the problem.
> 
> And what do we have here at
> https://salsa.debian.org/med-team/clustalo/-/blob/master/src/squid/stopwatch.c#L276
> ...
> 
> void
> StopwatchPVMPack(Stopwatch_t *w)
> {
>   pvm_pkdouble(&(w->elapsed), 1, 1);
>   pvm_pkdouble(&(w->user),    1, 1);
>   pvm_pkdouble(&(w->sys),     1, 1);
> }
> void
> StopwatchPVMUnpack(Stopwatch_t *w)
> {
>   pvm_upkdouble(&(w->elapsed), 1, 1);
>   pvm_upkdouble(&(w->user),    1, 1);
>   pvm_upkdouble(&(w->sys),     1, 1);
> }
> 
> I can't track the trail any further. The source code is missing for
> pvm_pkdouble and pvm_upkdouble. I would be very suspect of
> pvm_pkdouble and pvm_upkdouble.
> 
> Jeff
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.