all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: David Kastrup <dak@gnu.org>
Cc: Emacs Devel <emacs-devel@gnu.org>
Subject: Re: Core dumps in redisplay.
Date: Mon, 28 Feb 2005 18:14:09 +0100	[thread overview]
Message-ID: <x5ekf0fvz2.fsf@lola.goethe.zz> (raw)
In-Reply-To: <49e5a9dfdc9abedb548ffb2ba94ee4bb@swipnet.se> (Jan D.'s message of "Mon, 28 Feb 2005 06:34:30 +0100")

"Jan D." <jan.h.d@swipnet.se> writes:

>>
>> This sounds like normally only the main thread should ever be touching
>> interrupt_input_blocked, unless we have a bug.  Correct?  So we need
>> not think about how to synchronize accesses to the variable, but
>> rather make sure that no thread except the main thread will ever run
>> code touching it.  Correct?
>>
>> A use of BLOCK_INPUT or UNBLOCK_INPUT outside of the main thread is a
>> bug.  Correct?
>
> Yes times three.

I have got the debugging working.  Clearly xmalloc is called in a
separate thread (its BLOCK/UNBLOCK calls which are placed just round
malloc are interspersed with that of other routines), and its
deallocation interferes with the deallocation from the main thread.
So we should probably add an xassert into BLOCK_INPUT and
UNBLOCK_INPUT that complains when we are in anything but the main
thread.  And then see whether we can get rid of all the resulting
aborts in a sane manner.

If we don't do this, I am afraid that we will be plagued with
occasional unreproduceable aborts and/or problems.

I also doubt that it is a good idea to have mallocs in parallel
threads at the same time.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum

  parent reply	other threads:[~2005-02-28 17:14 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-02-26 13:40 Core dumps in redisplay David Kastrup
2005-02-27 13:43 ` Richard Stallman
2005-02-27 18:56   ` David Kastrup
2005-02-27 20:08     ` Jan D.
2005-02-27 20:21       ` David Kastrup
2005-02-27 20:35         ` Jan D.
2005-02-27 21:28           ` David Kastrup
2005-02-27 22:08             ` Kim F. Storm
2005-02-28  5:34             ` Jan D.
2005-02-28 10:38               ` David Kastrup
2005-02-28 17:15                 ` Jan D.
2005-02-28 17:46                   ` David Kastrup
2005-02-28 19:09                     ` Jan D.
2005-02-28 19:38                       ` David Kastrup
2005-02-28 20:05                         ` Jan D.
2005-02-28 20:29                           ` David Kastrup
2005-02-28 17:14               ` David Kastrup [this message]
2005-02-28 14:49             ` Richard Stallman
2005-03-04 18:54               ` Jan D.
2005-02-27 21:51     ` Stefan Monnier
2005-02-27 22:36       ` David Kastrup

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=x5ekf0fvz2.fsf@lola.goethe.zz \
    --to=dak@gnu.org \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.