public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
From: Florian Weimer <fweimer@redhat.com>
To: Paul Eggert <eggert@cs.ucla.edu>, Andreas Schwab <schwab@suse.de>
Cc: Adhemerval Zanella <adhemerval.zanella@linaro.org>,
	GNU C Library <libc-alpha@sourceware.org>
Subject: Re: glibc 2.24 -- Release blockers
Date: Fri, 15 Jul 2016 11:32:00 -0000	[thread overview]
Message-ID: <c915916e-f4ec-6847-0894-608f00be29b6@redhat.com> (raw)
In-Reply-To: <5788B707.4050609@cs.ucla.edu>

On 07/15/2016 12:12 PM, Paul Eggert wrote:
> On 07/15/2016 10:35 AM, Florian Weimer wrote:
>>> I expect such an approach is too much to expect to fold into Emacs 25,
>>> which is close to release. We could try something along those lines for
>>> the next major Emacs release, but that won't be for a while.
>>
>> In this case, I suggest *not* to revert the __malloc_initialize_hook
>> removal because if we put it back in, Emacs will not use its internal
>> malloc, and we get no additional test coverage compared to we had
>> before the removal.
>
> By "test coverage" do you mean some testing by a buildbot that builds
> and runs Emacs with bleeding-edge glibc? If so, we shouldn't need to
> remove __malloc_initialize_hook to test this; all that should be needed
> is './configure emacs_cv_var_doug_lea_malloc=no', which causes Emacs
> 'configure' to pretend that __malloc_initialize_hook does not exist.

I meant testing by Emacs developers and users who use pre-release builds.

The build barely exercises all the libraries Emacs linked into the 
process image.

> How about the following more-conservative approach instead?
>
> 1. Restore __malloc_initialize_hook in glibc.
>
> 2. Try to get Emacs 25 to work even when configured with './configure
> emacs_cv_var_doug_lea_malloc=no'. I'm hoping that something like the
> patch I proposed in
> <https://sourceware.org/ml/libc-alpha/2016-07/msg00458.html> is enough
> to do this, and will be accepted by the Emacs maintainers this close to
> a release.
>
> 3. If (2) is too ambitious for Emacs 25, get it to work with Emacs 26.
> This should be quite doable, as essentially the same thing is already
> working with Cygwin.
>
> 4. Once a stable version of Emacs is published with either (2) or (3),
> then remove __malloc_initialize_hook from glibc.

What worries me is that your proposal still ignores the deprecation of 
__malloc_initialize_hook.  Deprecation means “stop using this 
interface”.  Yet you advocate to keep using it indefinitely, relying on 
glibc pulling trigger at some unspecified point in the future, rather 
than a new Emacs release (which would be much more predictable).  I 
don't see how this ensures progress towards a solution.

We already thought we were at step 4.

If Emacs does not actually exercises the gmalloc code before it is 
force-activated by a glibc change, we won't know which other bugs are 
lurking there.  For example, gmalloc does not interpose 
malloc_usable_size or __libc_memalign, which could cause issues for the 
libraries it links to.  Or the allocator behavior may trigger 
performance issues with some of the graphics libraries.

Florian

  reply	other threads:[~2016-07-15 11:17 UTC|newest]

Thread overview: 88+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-07 19:51 Adhemerval Zanella
2016-07-07 20:22 ` Zack Weinberg
2016-07-07 20:39   ` Adhemerval Zanella
2016-07-08  7:20 ` Torvald Riegel
2016-07-08 16:35   ` Adhemerval Zanella
2016-07-08 20:48 ` Adhemerval Zanella
2016-07-13 12:31 ` Andreas Schwab
2016-07-13 12:41   ` Florian Weimer
2016-07-13 13:04     ` Andreas Schwab
2016-07-13 17:09       ` Florian Weimer
2016-07-13 17:16         ` Jeff Law
2016-07-13 17:18           ` Florian Weimer
2016-07-13 17:23         ` Dan Horák
2016-07-14 10:47           ` Sinny Kumari
2016-07-14 11:38             ` Florian Weimer
2016-07-14 12:23               ` Sinny Kumari
2016-07-14 13:19                 ` Richard Earnshaw (lists)
2016-07-14 13:55                 ` Florian Weimer
2016-07-15 11:07             ` Paul Eggert
2016-07-14  8:29         ` Andreas Schwab
2016-07-14  8:33           ` Torvald Riegel
2016-07-14  8:38             ` Andreas Schwab
2016-07-14  8:41               ` Torvald Riegel
2016-07-14  8:50                 ` Andreas Schwab
2016-07-14  8:54                   ` Florian Weimer
2016-07-14  8:59                     ` Andreas Schwab
2016-07-14  9:17                       ` Torvald Riegel
2016-07-14  9:53                         ` Andreas Schwab
2016-07-14  9:59                           ` Torvald Riegel
2016-07-14 10:10                             ` Andreas Schwab
2016-07-14 10:40                               ` Torvald Riegel
2016-07-14 10:45                                 ` Andreas Schwab
2016-07-14 10:50                                   ` Torvald Riegel
2016-07-14 10:58                                     ` Andreas Schwab
2016-07-14 11:00                                       ` Torvald Riegel
2016-07-14  9:09                     ` Torvald Riegel
2016-07-14  9:30                       ` Andreas Schwab
2016-07-14  9:54                         ` Torvald Riegel
2016-07-14 10:06                           ` Torvald Riegel
2016-07-14  8:57                   ` Torvald Riegel
2016-07-14  9:08                     ` Andreas Schwab
2016-07-14  9:15                       ` Torvald Riegel
2016-07-14  9:57                         ` Florian Weimer
2016-07-14 11:03         ` Paul Eggert
2016-07-14 11:30           ` Florian Weimer
2016-07-15  1:41             ` Paul Eggert
2016-07-15 11:00               ` Florian Weimer
2016-07-15 11:37                 ` Dmitry V. Levin
2016-07-15 11:51                   ` Florian Weimer
2016-07-15 12:23                     ` Dmitry V. Levin
2016-07-15 12:33                       ` Florian Weimer
2016-07-15 12:55                         ` Dmitry V. Levin
2016-07-15 13:24                 ` Paul Eggert
2016-07-15 14:29                   ` Sinny Kumari
2016-07-15 14:33                     ` Sinny Kumari
2016-07-15 16:00                       ` Florian Weimer
2016-07-15 21:20                         ` Paul Eggert
2016-07-16  0:21                           ` Zack Weinberg
2016-07-19 17:14                             ` Paul Eggert
2016-07-15 20:01                     ` Paul Eggert
2016-07-18  7:35                       ` Sinny Kumari
2016-07-19 16:13                         ` Paul Eggert
2016-07-20  7:33                           ` Sinny Kumari
2016-07-20  8:35                             ` Paul Eggert
2016-07-21 11:21                               ` Sinny Kumari
2016-07-21 11:33                                 ` Paul Eggert
2016-08-07 11:19                                   ` Aurelien Jarno
2016-08-07 12:19                                     ` Andreas Schwab
2016-08-07 21:47                                       ` Aurelien Jarno
2016-08-07 19:35                                     ` Paul Eggert
2016-08-07 21:48                                       ` Aurelien Jarno
2016-07-21 11:22                             ` Paul Eggert
2016-07-15 11:44             ` Dmitry V. Levin
2016-07-15 11:47               ` Florian Weimer
2016-07-14 13:14           ` Andreas Schwab
2016-07-14 13:22             ` Paul Eggert
2016-07-14 13:53               ` Florian Weimer
2016-07-15  0:46                 ` Paul Eggert
2016-07-15  8:47                   ` Florian Weimer
2016-07-15 10:52                     ` Paul Eggert
2016-07-15 11:32                       ` Florian Weimer [this message]
2016-07-15 14:20                         ` Paul Eggert
2016-07-15 16:30                           ` Torvald Riegel
2016-07-15 18:41                             ` Paul Eggert
2016-07-15 18:43                               ` Torvald Riegel
2016-07-15 19:57                                 ` Paul Eggert
2016-07-14 14:26               ` Andreas Schwab
2016-07-14 23:23                 ` Paul Eggert

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=c915916e-f4ec-6847-0894-608f00be29b6@redhat.com \
    --to=fweimer@redhat.com \
    --cc=adhemerval.zanella@linaro.org \
    --cc=eggert@cs.ucla.edu \
    --cc=libc-alpha@sourceware.org \
    --cc=schwab@suse.de \
    /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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).