Subject: bug#46256: [feature/native-comp] AOT eln files ignored if run from build tree

From: Pip Cet <[email-masked]>
Date: Sun, 7 Mar 2021 09:22:56 +0000

On Sat, Mar 6, 2021 at 12:16 PM Andy Moreton <[email-masked]> wrote:
> On Sat 06 Mar 2021, Pip Cet wrote:
> > On Sat, Mar 6, 2021 at 1:48 AM Andy Moreton <[email-masked]> wrote:
> >> Is the problem that dlopen resolves to use an unlinked file kept alive
> >> by having open handles, rather than a new file with the filename used
> >> by the old file before it was unlinked ?
> >
> > I believe so, and that's what I think we can work around.
> >
> > IIUC, we don't actually call dlclose() until we GC (and might not do
> > so even then, since GC is conservative).
>
> In that case keeping the handles open is the real bug here, and it would
> be better to focus on how to ensure that resources are released corectly.

I'm not sure I follow that argument. If I load subr.eln, hack on
subr.el, recompile subr.eln, and want to reload it, we can't dlclose()
the old subr.eln until long after we've dlopen()ed the new one. I
guess we could load subr.elc, then dlclose(), then dlopen() subr.eln?
Are you saying that's something we should do?

Pip