All of lore.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Johannes Sixt <j6t@kdbg.org>
Cc: Stefan Beller <sbeller@google.com>,
	Johannes.Schindelin@gmx.de, git@vger.kernel.org,
	simon@ruderich.org, peff@peff.net
Subject: Re: [PATCH] compat: Allow static initializer for pthreads on Windows
Date: Wed, 26 Oct 2016 23:33:01 -0700	[thread overview]
Message-ID: <xmqqd1im8foi.fsf@gitster.mtv.corp.google.com> (raw)
In-Reply-To: <xmqqh97y8g74.fsf@gitster.mtv.corp.google.com> (Junio C. Hamano's message of "Wed, 26 Oct 2016 23:21:51 -0700")

Junio C Hamano <gitster@pobox.com> writes:

> Johannes Sixt <j6t@kdbg.org> writes:
>
>>> As many codepaths may not even need access to the attributes, I
>>> doubt that would be a very productive direction to go.
>>
>> So, what is productive then? Pessimizing one (not exactly minor) platform?
>
> Lazy on-demand initialization as needed, perhaps?  The on-demand
> initialization mechanism may become no-op on some platforms that can
> do static initialization.

Ah, I think I misunderstood your "please rewrite".  Did you mean to
add "void attr_start(void)" helper function to attr.c that does
series of pthread_mutex_init() calls as needed?  That function can
be called from main() of platforms that cannot statically initialize
mutices, while on other platforms it can be a no-op as long as the
variables are statically initialized?  If so, that would not pessimize
any platform, I would think.


    

  parent reply	other threads:[~2016-10-27  6:33 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-10-26 21:57 [PATCH] compat: Allow static initializer for pthreads on Windows Stefan Beller
2016-10-26 22:14 ` Stefan Beller
2016-10-27  5:49 ` Johannes Sixt
2016-10-27  6:02   ` Junio C Hamano
2016-10-27  6:10     ` Johannes Sixt
2016-10-27  6:21       ` Junio C Hamano
2016-10-27  6:29         ` Johannes Sixt
2016-10-27  6:33         ` Junio C Hamano [this message]
2016-10-27 17:01           ` Stefan Beller
2016-10-27 17:11             ` Jeff King
2016-10-27 18:22             ` Johannes Sixt
2016-10-27 18:49               ` Junio C Hamano
2016-10-27 19:08                 ` Stefan Beller
2016-10-27 20:05                   ` Johannes Sixt
2016-10-27 21:49                     ` Jacob Keller
2016-10-27 21:59                       ` Stefan Beller
2016-10-28  5:55                       ` Johannes Sixt
2016-10-28  6:11                         ` Jacob Keller
2016-10-28 13:01                         ` Philip Oakley
2016-10-28 18:49                           ` Jacob Keller
2016-10-28 11:58                       ` Johannes Schindelin
2016-10-28 18:48                         ` Jacob Keller
2016-10-28 20:26                           ` Johannes Sixt
2016-10-28 20:29                             ` Junio C Hamano
2016-10-28 20:36                               ` Stefan Beller
2016-10-28 20:38                                 ` Junio C Hamano
2016-10-28 20:49                               ` Johannes Sixt
2016-10-28 20:52                                 ` Junio C Hamano

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=xmqqd1im8foi.fsf@gitster.mtv.corp.google.com \
    --to=gitster@pobox.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=git@vger.kernel.org \
    --cc=j6t@kdbg.org \
    --cc=peff@peff.net \
    --cc=sbeller@google.com \
    --cc=simon@ruderich.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.
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.