all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Gerd Möllmann" <gerd.moellmann@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: eller.helmut@gmail.com,  emacs-devel@gnu.org
Subject: Re: Building the igc branch on MS-Windows
Date: Sat, 27 Apr 2024 10:38:02 +0200	[thread overview]
Message-ID: <m2mspfi4k5.fsf@pro2.fritz.box> (raw)
In-Reply-To: <8634r7xoil.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 27 Apr 2024 10:17:54 +0300")

Eli Zaretskii <eliz@gnu.org> writes:

>> Date: Sat, 27 Apr 2024 09:58:00 +0300
>> From: Eli Zaretskii <eliz@gnu.org>
>> Cc: eller.helmut@gmail.com, emacs-devel@gnu.org
>> 
>>   (gdb) p font
>>   $1 = (struct font *) 0xad2fce0
>>   (gdb) p *$
>>   Cannot access memory at address 0xad2fce0
>
> How do we protect the font objects we create in xfaces.c from being
> GC'ed?  AFAICT, the face's 'font' member is the 'struct font' part of
> a Lisp font object, which comes from Lisp.  But when the Lisp object
> is copied, does MPS update the 'font' pointer of a face?

I'm creating the MPS pools with support for interior pointers, i.e. a
pointer to somehwere inside of an object keeps the object alive. It's
not necessary that there exists a pointer to the object start.

Is that's what happening here?

(Not directly related, just to spread the info: This is necessary anyway
because I'm not using MPS in-band headers. With in-band headers, MPS
would itself do the calculations that I put into client_to_base, and
base_to_client. Base meaning the object start from the perspective of
MPS, and client meaning the object start from Emacs' POV. So, any
reference that Emacs holds is an interior pointer for MPS.

Also handy: a char * into string data keeps the data alive, and makes it
immovable if referenced ambigpusly (control stack). There is no need for
the pinning that is used for the old GC, which prevents string
compaction, or what I called it.)



  reply	other threads:[~2024-04-27  8:38 UTC|newest]

Thread overview: 116+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-24 15:06 Building the igc branch on MS-Windows Eli Zaretskii
2024-04-24 15:20 ` Gerd Möllmann
2024-04-24 16:07   ` Eli Zaretskii
2024-04-24 16:48     ` Gerd Möllmann
2024-04-24 16:59       ` Gerd Möllmann
2024-04-24 19:09       ` Eli Zaretskii
2024-04-24 19:44         ` Gerd Möllmann
2024-04-25  5:38           ` Eli Zaretskii
2024-04-25  6:17             ` Gerd Möllmann
2024-04-25  4:54 ` Helmut Eller
2024-04-25  5:30   ` Eli Zaretskii
2024-04-25  6:38     ` Helmut Eller
2024-04-25  7:39       ` Gerd Möllmann
2024-04-25 10:34         ` Eli Zaretskii
2024-04-25 11:09           ` Eli Zaretskii
2024-04-25 11:16             ` Eli Zaretskii
2024-04-25 11:59             ` Gerd Möllmann
2024-04-25 13:22               ` Eli Zaretskii
2024-04-25 13:29                 ` Gerd Möllmann
2024-04-25 11:55           ` Gerd Möllmann
2024-04-25 13:29             ` Eli Zaretskii
2024-04-25 14:00               ` Gerd Möllmann
2024-04-25 14:34                 ` Eli Zaretskii
2024-04-25 14:40                   ` Gerd Möllmann
2024-04-25 12:35           ` Helmut Eller
2024-04-25 12:40             ` Gerd Möllmann
2024-04-26  7:18               ` Helmut Eller
2024-04-26  7:38                 ` Gerd Möllmann
2024-04-26  7:41                 ` Eli Zaretskii
2024-04-26  8:11                   ` Gerd Möllmann
2024-04-26  9:13                     ` Helmut Eller
2024-04-26  9:31                       ` Gerd Möllmann
2024-04-26 10:55                       ` Eli Zaretskii
2024-04-26 11:27                         ` Po Lu
2024-04-26 13:04                           ` Gerd Möllmann
2024-04-26 13:42                             ` Po Lu
2024-04-26 13:46                               ` Gerd Möllmann
2024-04-26 14:35                               ` Gerd Möllmann
2024-04-26 10:35                     ` Eli Zaretskii
2024-04-26 10:56                       ` Gerd Möllmann
2024-04-26 11:25                         ` Eli Zaretskii
2024-04-26 11:38                           ` Po Lu
2024-04-26 12:58                             ` Gerd Möllmann
2024-04-26 14:49                             ` Eli Zaretskii
2024-04-26 14:53                               ` Gerd Möllmann
2024-04-27  0:21                               ` Po Lu
2024-04-27  6:13                                 ` Eli Zaretskii
2024-04-27  6:48                                   ` Gerd Möllmann
2024-04-27  7:13                                     ` Eli Zaretskii
2024-04-26 12:58                           ` Gerd Möllmann
2024-04-26 15:11                             ` Eli Zaretskii
2024-04-26 15:27                               ` Gerd Möllmann
2024-04-26 11:32                         ` Eli Zaretskii
2024-04-26 13:09                           ` Gerd Möllmann
2024-04-26 13:12                             ` Gerd Möllmann
2024-04-26 15:01                             ` Helmut Eller
2024-04-26 15:30                               ` Gerd Möllmann
2024-04-26 15:39                               ` Eli Zaretskii
2024-04-26 17:03                                 ` Gerd Möllmann
2024-04-26 18:24                                   ` Helmut Eller
2024-04-26 18:37                                     ` Gerd Möllmann
2024-04-26 16:57                               ` Gerd Möllmann
2024-04-26 18:11                                 ` Helmut Eller
2024-04-26 18:30                                   ` Gerd Möllmann
2024-04-26 20:45                                     ` Helmut Eller
2024-04-27  4:22                                       ` Gerd Möllmann
2024-04-27  5:18                                         ` Ihor Radchenko
2024-04-27  5:26                                           ` Gerd Möllmann
2024-04-27  5:54                                             ` Ihor Radchenko
2024-04-27  6:07                                               ` Gerd Möllmann
2024-04-27  6:31                                                 ` Gerd Möllmann
2024-04-27  6:22                                             ` Eli Zaretskii
2024-04-27  6:29                                               ` Ihor Radchenko
2024-04-27  7:11                                                 ` Eli Zaretskii
2024-04-27  7:40                                                   ` Ihor Radchenko
2024-04-27  6:45                                               ` Gerd Möllmann
2024-04-27  6:11                                       ` Eli Zaretskii
2024-04-27  6:58                                         ` Eli Zaretskii
2024-04-27  7:17                                           ` Eli Zaretskii
2024-04-27  8:38                                             ` Gerd Möllmann [this message]
2024-04-27 11:15                                               ` Eli Zaretskii
2024-04-27 12:09                                                 ` Gerd Möllmann
2024-04-27 12:33                                                   ` Eli Zaretskii
2024-04-27 12:37                                                   ` Eli Zaretskii
2024-04-27 13:26                                                     ` Gerd Möllmann
2024-04-27 14:54                                                       ` Eli Zaretskii
2024-04-27 15:25                                                         ` Gerd Möllmann
2024-04-27 15:40                                                           ` Eli Zaretskii
2024-04-27 15:47                                                             ` Helmut Eller
2024-04-27 15:48                                                             ` Gerd Möllmann
2024-04-27  7:23                                           ` Gerd Möllmann
2024-04-27  7:33                                             ` Eli Zaretskii
2024-04-27  9:04                                               ` Gerd Möllmann
2024-04-27 11:44                                                 ` Eli Zaretskii
2024-04-27 12:07                                                   ` Eli Zaretskii
2024-04-27 12:41                                                     ` Gerd Möllmann
2024-04-27 13:23                                                     ` Gerd Möllmann
2024-04-27 12:32                                                   ` Gerd Möllmann
2024-04-27 14:11                                                   ` Gerd Möllmann
2024-04-27 14:47                                                     ` Eli Zaretskii
2024-04-27 15:09                                                       ` Gerd Möllmann
2024-04-27 15:15                                                         ` Helmut Eller
2024-04-27 15:29                                                           ` Gerd Möllmann
2024-04-27 15:38                                                             ` Eli Zaretskii
2024-04-27 15:42                                                               ` Gerd Möllmann
2024-04-27 16:37                                                                 ` Gerd Möllmann
2024-04-27 15:23                                                         ` Gerd Möllmann
2024-04-28  6:31                                                 ` Eli Zaretskii
2024-04-28  6:44                                                   ` Gerd Möllmann
2024-04-27  7:17                                         ` Gerd Möllmann
2024-04-27 12:11                                         ` Helmut Eller
2024-04-27 12:32                                           ` Eli Zaretskii
2024-04-27 13:41                                             ` Helmut Eller
2024-04-26  8:12                   ` Helmut Eller
2024-04-26  8:57                     ` Gerd Möllmann
2024-04-26 10:39                     ` Eli Zaretskii

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=m2mspfi4k5.fsf@pro2.fritz.box \
    --to=gerd.moellmann@gmail.com \
    --cc=eliz@gnu.org \
    --cc=eller.helmut@gmail.com \
    --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.