git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "René Scharfe" <l.s.r@web.de>
To: David Turner <dturner@twopensource.com>
Cc: "\"Øyvind \\\"A. Holm\\\"\"" <sunny@sunbase.org>,
	"git@vger.kernel.org" <git@vger.kernel.org>
Subject: Re: t5150-request-pull.sh fails on newest master in Debian
Date: Wed, 09 Jul 2014 16:52:00 +0200	[thread overview]
Message-ID: <53BD5710.7040409@web.de> (raw)
In-Reply-To: <1404868702.3775.2.camel@stross>

Am 09.07.2014 03:18, schrieb David Turner:
> On Wed, 2014-07-09 at 02:52 +0200, Øyvind A. Holm wrote:
>> On 3 July 2014 23:55, Øyvind A. Holm <sunny@sunbase.org> wrote:
>>> When compiling newest master (v2.0.1-472-g6f92e5f) on Debian 7.5
>>> (64-bit), t5150-request-pull.sh fails when compiling with
>>>
>>> $ make configure
>>> $ ./configure --prefix=/usr/local/varprg/git.master.v2.0.1-472-g6f92e5f
>>> $ make prefix=/usr/local/varprg/git.master.v2.0.1-472-g6f92e5f
>>> $ cd t
>>> $ ./t5150-request-pull.sh
>>
>> FYI, t5150-request-pull.sh passes all tests now on newest master
>> (v2.0.1-474-g72c7794) in Debian. There are two new commits on master
>> since I wrote this, and the commit that makes things work again is
>> 4602f1a ("diff-tree: call free_commit_list() instead of duplicating
>> its code"). Reverting this commit brings the failure back.
>>
>> The whole thing is still a mystery to me, though. I can't see why this
>> should have anything to do with the use of ./configure --prefix.
>
> The problem only happens when a ref with an allowed wildcard winds up on
> a page boundary (with the wildcard before the page boundary).  This
> depends intricately on the details of memory allocation, so pretty much
> anything could make it come and go.
>
> Does the fix I posted work for you?  If not, let me know and I'll look
> into it more.

Sounds fragile overall.  How could a test program look like?  All I can 
think of is a brute force check of all combinations of three characters 
(is that enough?), PAGE_SIZE offsets, three flags, with and without 
".lock" appended (and embedded?) against the old implementation, which 
must be quite expensive.

Some callers of check_refname_format() know the length of the string or 
can determine it cheaply because they copy the whole string anyway. 
Would it make sense to do away with the page boundary magic and require 
the callers of the fast version to pass that length?  The tailing bytes 
(up to 15) would have to be loaded carefully, though.  Not sure.

René

      parent reply	other threads:[~2014-07-09 14:52 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-03 21:55 t5150-request-pull.sh fails on newest master in Debian Øyvind A. Holm
2014-07-03 22:16 ` David Turner
     [not found]   ` <CAA787rmroFsjk9=ar0e_4o3hUpfDBi+9J4nrNyHHMZq-5q4skw@mail.gmail.com>
2014-07-03 23:02     ` Øyvind A. Holm
2014-07-03 22:19 ` Øyvind A. Holm
2014-07-04 20:22 ` David Turner
2014-07-05  0:09   ` Øyvind A. Holm
2014-07-05  1:58     ` David Turner
2014-07-05 14:24       ` Øyvind A. Holm
2014-07-05 19:00         ` [PATCH] refs.c: handle REFNAME_REFSPEC_PATTERN at end of page David Turner
     [not found]           ` <xmqq7g3pdoy7.fsf@gitster.dls.corp.google.com>
2014-07-09 11:48             ` Øyvind A. Holm
2014-07-09  0:52         ` t5150-request-pull.sh fails on newest master in Debian Øyvind A. Holm
2014-07-09  1:18           ` David Turner
2014-07-09 11:44             ` Øyvind A. Holm
2014-07-09 14:52             ` René Scharfe [this message]

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=53BD5710.7040409@web.de \
    --to=l.s.r@web.de \
    --cc=dturner@twopensource.com \
    --cc=git@vger.kernel.org \
    --cc=sunny@sunbase.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 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 NNTP newsgroup(s).