GNU bug report logs -
#58975
29.0.50; noverlay fails to build with --enable-checking=structs
Previous Next
Reported by: "Basil L. Contovounesios" <contovob <at> tcd.ie>
Date: Thu, 3 Nov 2022 00:18:02 UTC
Severity: normal
Tags: patch
Found in version 29.0.50
Fixed in version 29.1
Done: "Basil L. Contovounesios" <contovob <at> tcd.ie>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 58975 in the body.
You can then email your comments to 58975 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
matt <at> rfc20.org, monnier <at> iro.umontreal.ca, bug-gnu-emacs <at> gnu.org
:
bug#58975
; Package
emacs
.
(Thu, 03 Nov 2022 00:18:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
"Basil L. Contovounesios" <contovob <at> tcd.ie>
:
New bug report received and forwarded. Copy sent to
matt <at> rfc20.org, monnier <at> iro.umontreal.ca, bug-gnu-emacs <at> gnu.org
.
(Thu, 03 Nov 2022 00:18:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Tags: patch
With HEAD as commit 05f5d978ae of 2022-11-02
"Initialize child signal handling before posix_spawn too.":
$ git clean -fdx && ./autogen.sh all \
&& ./configure --enable-checking=structs && make
The last step fails with:
--8<---------------cut here---------------start------------->8---
CC pdumper.o
pdumper.c: In function ‘dump_interval_node’:
pdumper.c:2141:3: error: #error "interval_node changed. See CHECK_STRUCTS comment in config.h."
2141 | # error "interval_node changed. See CHECK_STRUCTS comment in config.h."
| ^~~~~
pdumper.c: In function ‘dump_overlay’:
pdumper.c:2183:3: error: #error "Lisp_Overlay changed. See CHECK_STRUCTS comment in config.h."
2183 | # error "Lisp_Overlay changed. See CHECK_STRUCTS comment in config.h."
| ^~~~~
pdumper.c: In function ‘dump_buffer’:
pdumper.c:2752:3: error: #error "buffer changed. See CHECK_STRUCTS comment in config.h."
2752 | # error "buffer changed. See CHECK_STRUCTS comment in config.h."
| ^~~~~
--8<---------------cut here---------------end--------------->8---
Is this the right fix?
[0001-Port-interval-trees-to-enable-checking-structs.patch (text/x-diff, attachment)]
[Message part 3 (text/plain, inline)]
BTW, every time itree_create is called via add_buffer_overlay, it in
turn calls itree_init, which calls itree_iterator_create, which xmallocs
a new itree_iterator, interval_stack, and itree_nodes. Is this memory
leak going to rust my computer? Should I open a ticket for this?
Thanks,
--
Basil
In GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, X toolkit, cairo
version 1.16.0, Xaw3d scroll bars) of 2022-10-31 built on tia
Repository revision: ea388b7f3ab995423aa90980f7c530884ea1c5a4
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12101004
System Description: Debian GNU/Linux bookworm/sid
Configured using:
'configure 'CFLAGS=-Og -ggdb3' -C --prefix=/home/blc/.local
--enable-checking=structs --with-file-notification=yes
--with-x-toolkit=lucid --with-x'
Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS WEBP X11 XAW3D XDBE XIM XINPUT2 XPM LUCID ZLIB
Important settings:
value of $LANG: en_IE.UTF-8
value of $XMODIFIERS: @im=ibus
locale-coding-system: utf-8-unix
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#58975
; Package
emacs
.
(Thu, 03 Nov 2022 01:56:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 58975 <at> debbugs.gnu.org (full text, mbox):
> Is this the right fix?
The patch looks good, thanks.
> BTW, every time itree_create is called via add_buffer_overlay, it in
> turn calls itree_init,
Oh, that's not right. `itree_init` should be called once only, from
`emacs.c`, like things like `init_lread`.
> which calls itree_iterator_create, which xmallocs a new
> itree_iterator, interval_stack, and itree_nodes. Is this memory leak
> going to rust my computer?
No, Emacs is pure C and ELisp, so it doesn't suffer from Rust.
Stefan
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#58975
; Package
emacs
.
(Thu, 03 Nov 2022 12:28:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 58975 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Stefan Monnier [2022-11-02 21:55 -0400] wrote:
>> Is this the right fix?
>
> The patch looks good, thanks.
>
>> BTW, every time itree_create is called via add_buffer_overlay, it in
>> turn calls itree_init,
>
> Oh, that's not right. `itree_init` should be called once only, from
> `emacs.c`, like things like `init_lread`.
Like this?
[0001-Port-interval-trees-to-enable-checking-structs.patch (text/x-diff, attachment)]
[Message part 3 (text/plain, inline)]
>> which calls itree_iterator_create, which xmallocs a new
>> itree_iterator, interval_stack, and itree_nodes. Is this memory leak
>> going to rust my computer?
>
> No, Emacs is pure C and ELisp,
But not pure enough to avoid side-effects such as headaches.
> so it doesn't suffer from Rust.
Not in this lifetime anyway ;).
Thanks,
--
Basil
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#58975
; Package
emacs
.
(Thu, 03 Nov 2022 14:26:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 58975 <at> debbugs.gnu.org (full text, mbox):
>> Oh, that's not right. `itree_init` should be called once only, from
>> `emacs.c`, like things like `init_lread`.
>
> Like this?
Yup, thanks,
Stefan
bug marked as fixed in version 29.1, send any further explanations to
58975 <at> debbugs.gnu.org and "Basil L. Contovounesios" <contovob <at> tcd.ie>
Request was from
"Basil L. Contovounesios" <contovob <at> tcd.ie>
to
control <at> debbugs.gnu.org
.
(Thu, 03 Nov 2022 14:58:02 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#58975
; Package
emacs
.
(Thu, 03 Nov 2022 14:58:03 GMT)
Full text and
rfc822 format available.
Message #19 received at 58975-done <at> debbugs.gnu.org (full text, mbox):
close 58975 29.1
quit
Stefan Monnier [2022-11-03 10:24 -0400] wrote:
>>> Oh, that's not right. `itree_init` should be called once only, from
>>> `emacs.c`, like things like `init_lread`.
>>
>> Like this?
>
> Yup, thanks,
Thanks, pushed, closing.
Port interval trees to --enable-checking=structs
a66280162f 2022-11-03 16:49:05 +0200
https://git.sv.gnu.org/cgit/emacs.git/commit/?id=a66280162f
--
Basil
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Fri, 02 Dec 2022 12:24:14 GMT)
Full text and
rfc822 format available.
This bug report was last modified 1 year and 169 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.