GNU bug report logs -
#29170
Emacs freezes when doing a gui-get-selection on OpenBSD
Previous Next
Reported by: daimrod <at> omecha.info (Grégoire Jadi)
Date: Mon, 6 Nov 2017 14:22:02 UTC
Severity: normal
Tags: confirmed
Merged with 45544
Found in versions 26.0.90, 27.1.90
Fixed in version 28.1
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
Message #50 received at 29170 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Eli Zaretskii <eliz <at> gnu.org> writes:
>> From: Lars Ingebrigtsen <larsi <at> gnus.org>
>> Cc: daimrod <at> omecha.info, 29170 <at> debbugs.gnu.org
>> Date: Fri, 02 Oct 2020 16:30:45 +0200
>>
>> On OpenBSD, most of the time, the function
>> "xselect.c/x_get_foreign_selection" won't get a SelectNotify with
>> (SECONDARY, TEXT) as arguments (that I did not understand and it might
>> never happen on other oses).
>>
>> But then, while waiting at most 'x-selection-timeout' into
>> "process.c/wait_reading_process_output" the 'now' variable won't have a
>> chance of being invalidated or updated and that is what cause the
>> infinite loop.
>>
>> Someone more knowledgeable of "process.c/wait_reading_process_output"
>> might have a better solution to this problem.
>
> If this is an OpenBSD-only problem, maybe we should install that
> change #ifdef'ed by OpenBSD?
I'll have to test it, but I've been told that the issue doesn't occur
when the "junk" is disabled in the memory allocator (j = 0).
See MALLOC OPTIONS in malloc(3) https://man.openbsd.org/malloc
j “Less junking”. Decrease the junk level by one if it is larger
than 0. Junking writes some junk bytes into the area allocated.
Junk is bytes of 0xdb when allocating; freed chunks are filled
with 0xdf. By default the junk level is 1: after free, small
chunks are completely junked; for pages the first part is junked.
After a delay, the filling pattern is validated and the process
is aborted if the pattern was modified. For junk level 2,
junking is done on allocation as well and without size
restrictions. If the junk level is zero, no junking is
performed.
--
gjadi
PGP : AF26 E9C2 A1C8 8D32 A868 4386 1373 5477 2B65 1894
[signature.asc (application/pgp-signature, inline)]
This bug report was last modified 3 years and 338 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.