[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Lilypond 2.23.0 crashes on layout
From: |
Jonas Hahnfeld |
Subject: |
Re: Lilypond 2.23.0 crashes on layout |
Date: |
Wed, 17 Feb 2021 20:15:22 +0100 |
User-agent: |
Evolution 3.38.4 |
Am Mittwoch, dem 17.02.2021 um 18:16 +0100 schrieb Jonas Hahnfeld via
bug-lilypond:
> Am Mittwoch, dem 17.02.2021 um 00:00 +0100 schrieb Arusekk:
> > W dniu 16.02.2021 o 18:33, Jonas Hahnfeld pisze:
> > > Usual disclaimer that LilyPond doesn't fully support Guile 2.2 (yet),
> > > so you'll definitely see worse performance (mostly slower startup) and
> > > might run into occasional issues, like this one. Guile 1.8 should be
> > > the safer choice for now (if you still have it in Gentoo).
> > I tried to track back the moment the issue was introduced, but then
> > found out that guile 2.x has been supported for two versions only, so I
> > stopped digging. Good to know.
> > > That said, I've seen this issue before during my tests with Guile 2.2
> > > (Translators being collected while still referenced somewhere), but
> > > never had a stack trace to investigate. So it's already great to have
> > > that, but do I read this correctly that you can reliably reproduce the
> > > issue on your system? I'm asking because I can't on mine (Arch Linux)
> > > and in fact, your file works just fine for me. So finding out how to
> > > trigger this kind of bugs more reliably would be a huge step.
> > On my box lilypond crashes every single time I command it to produce
> > PDFs (never does if not told to lay out), so I think I can provide much
> > help, maybe core files, or recorded execution from GDB (never tried to
> > do it before, though).
>
> Okay, that's good for testing the fix (even though I've managed to
> reproduce the report from ASan).
>
> > > Regarding AddressSanitizer, did you just compile LilyPond with it or
> > > all dependencies? I didn't attempt so far because I thought it wouldn't
> > > work, but maybe I should try?
> >
> > I just set CFLAGS='-fsanitize=address -g' and
> > LDFLAGS='-fsanitize=address' before configuring lilypond, and installed
> > the debug symbols for guile, so that AddressSanitizer could resolve
> > function names from it. ASAN wiki suggests to mainly compile executables
> > with it, because it does not support sanitized libraries used with not
> > sanitized executables (or it does, but requires preloading it manually).
>
> Ok, makes sense. I guess I confused it with MemorySanitizer then.
>
> > But maybe sanitizing some library too would help additionally? I could
> > try it if you want, but sanitizing guile might break[1] (I have not
> > tried). Gentoo gives extreme flexibility as to managing compile-time
> > options, while handling the burden of building everything one thing at a
> > time, so this does not pose any problem for me (I don't recommend
> > setting up a Gentoo VM just for tests, unless you are patient, since
> > building lilypond and deps from a base system takes at least an hour).
>
> It's not needed right now, I think I understand the problem at hand,
> see https://gitlab.com/lilypond/lilypond/-/issues/6100 Maybe my plan
> for fixing it works, let's see 😉️
Patch up at https://gitlab.com/lilypond/lilypond/-/merge_requests/655 ,
this makes the given example work under Asan on my system. It would be
great if you could test on your end (as far as I understand, you
already compiled master?). The second interesting question is of course
if that was the only bug or whether there are other issues lurking
around. Unfortunately I can't just run all regression tests with the
instrumented version because it reports errors during garbage
collection after some time...
Jonas
signature.asc
Description: This is a digitally signed message part