Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 11 Jan 2023 12:05:55 +0000
From:      Andrew Turner <andrew@fubar.geek.nz>
To:        Konstantin Belousov <kostikbel@gmail.com>
Cc:        John Baldwin <jhb@freebsd.org>, Jessica Clarke <jrtc27@freebsd.org>, Cy Schubert <Cy.Schubert@cschubert.com>, "src-committers@freebsd.org" <src-committers@freebsd.org>, "dev-commits-src-all@freebsd.org" <dev-commits-src-all@freebsd.org>, "dev-commits-src-main@freebsd.org" <dev-commits-src-main@freebsd.org>
Subject:   Re: git: b069d3e01931 - main - rtld: Revert "When loading dso without PT_GNU_STACK phdr, only call"
Message-ID:  <F3B87C81-7A97-4BA4-8ADA-A75E53B14092@fubar.geek.nz>
In-Reply-To: <Y76Y0oUSqRj0sUD8@kib.kiev.ua>
References:  <202301042255.304MtY3G002415@gitrepo.freebsd.org> <20230105035046.A01DE62E@slippy.cwsent.com> <C41C83D5-9123-48C1-A3A2-7694556C8CE8@freebsd.org> <12b7ec5a-abf7-3b28-da80-ffedc1244c47@FreeBSD.org> <Y76Y0oUSqRj0sUD8@kib.kiev.ua>

next in thread | previous in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]


> On 11 Jan 2023, at 11:09, Konstantin Belousov <kostikbel@gmail.com> wrote:
> 
> On Tue, Jan 10, 2023 at 08:21:20PM -0500, John Baldwin wrote:
>> On 1/4/23 7:59 PM, Jessica Clarke wrote:
>>> On 5 Jan 2023, at 03:50, Cy Schubert <Cy.Schubert@cschubert.com> wrote:
>>>> 
>>>> In message <202301042255.304MtY3G002415@gitrepo.freebsd.org>, John Baldwin
>>>> writ
>>>> es:
>>>>> The branch main has been updated by jhb:
>>>>> 
>>>>> URL: https://cgit.FreeBSD.org/src/commit/?id=b069d3e0193121ff6de348f68c7ce93e
>>>>> e61e5e2f
>>>>> 
>>>>> commit b069d3e0193121ff6de348f68c7ce93ee61e5e2f
>>>>> Author:     John Baldwin <jhb@FreeBSD.org>
>>>>> AuthorDate: 2023-01-04 22:55:00 +0000
>>>>> Commit:     John Baldwin <jhb@FreeBSD.org>
>>>>> CommitDate: 2023-01-04 22:55:00 +0000
>>>>> 
>>>>>    rtld: Revert "When loading dso without PT_GNU_STACK phdr, only call"
>>>>> 
>>>>>    After the removal of ia64 and sparc64, all current architectures
>>>>>    support executable stacks at an architectural level.
>>>>> 
>>>>>    This reverts commit 1290d38ac50b3afa7e5781d9d97346a1042c736c.
>>>> 
>>>> I tried git log as follows in two independent repos, my "prod" repo and the
>>>> working repo I commit from:
>>>> 
>>>> slippy$ git log 1290d38ac50b3afa7e5781d9d97346a1042c736c
>>>> fatal: bad object 1290d38ac50b3afa7e5781d9d97346a1042c736c
>>>> slippy$
>>>> 
>>>> Could there be some corruption somewhere? Do other people have the same
>>>> result as I do when they run git log against that hash? Or are my repos
>>>> corrupted?
>>>> 
>>>> When I run git log and search for the string "When loading dso without
>>>> PT_GNU_STACK phdr, only call", I find the following, suggesting that the
>>>> svn2git process may have resulted in different hashes in different repos
>>>> used by  different people.
>>>> 
>>>> commit cb38d4941c45e3c72c4b5b3fad87d297d950cf53
>>>> Author:     Konstantin Belousov <kib@FreeBSD.org>
>>>> AuthorDate: Tue Jan 25 21:12:31 2011 +0000
>>>> Commit:     Konstantin Belousov <kib@FreeBSD.org>
>>>> CommitDate: Tue Jan 25 21:12:31 2011 +0000
>>>> 
>>>>    When loading dso without PT_GNU_STACK phdr, only call
>>>>    __pthread_map_stacks_exec() on architectures that allow executable
>>>>    stacks.
>>>> 
>>>>    Reported and tested by: marcel (ia64)
>>>> 
>>>> Notes:
>>>>    svn path=/head/; revision=217851
>>>> 
>>>> BTW, our GH read-only mirror has the same hash as above suggesting that
>>>> jhb's repo may not be in sync with others with regard to svn2git generated
>>>> commits?
>>>> 
>>>> Or, does this point to a deeper problem with inconsistent repos or some
>>>> other svn2git inconsistency somewhere?
>>> 
>>> It’s the hash from the old GitHub mirror that's now freebsd/freebsd-legacy.
>> 
>> Interesting, that is the hash I got from git blame for some reason.  I might
>> have done the blame in CheriBSD though which has a complicated history where
>> it merged commits from the old hashes up to a point when the new hashes
>> were published, then CheriBSD has a special merge commit to join the old and
>> new histories before merging the new hashes from that point forwards.
> 
> I have pristine clone of the official FreeBSD src repo, which I used when
> did the review and look up the referenced commit.  It worked for me.
> I suspect/believe that the svn->git conversion also imported old hashes.

Which branches does "git branch -a --contains 1290d38ac50b3afa7e5781d9d97346a1042c736c” list? For me I only see it on branches that have been migrated from the old hashes.

Andrew


[-- Attachment #2 --]
<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On 11 Jan 2023, at 11:09, Konstantin Belousov &lt;<a href="mailto:kostikbel@gmail.com" class="">kostikbel@gmail.com</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><meta charset="UTF-8" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">On Tue, Jan 10, 2023 at 08:21:20PM -0500, John Baldwin wrote:</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">On 1/4/23 7:59 PM, Jessica Clarke wrote:<br class=""><blockquote type="cite" class="">On 5 Jan 2023, at 03:50, Cy Schubert &lt;<a href="mailto:Cy.Schubert@cschubert.com" class="">Cy.Schubert@cschubert.com</a>&gt; wrote:<br class=""><blockquote type="cite" class=""><br class="">In message &lt;<a href="mailto:202301042255.304MtY3G002415@gitrepo.freebsd.org" class="">202301042255.304MtY3G002415@gitrepo.freebsd.org</a>&gt;, John Baldwin<br class="">writ<br class="">es:<br class=""><blockquote type="cite" class="">The branch main has been updated by jhb:<br class=""><br class="">URL: <a href="https://cgit.FreeBSD.org/src/commit/?id=b069d3e0193121ff6de348f68c7ce93e" class="">https://cgit.FreeBSD.org/src/commit/?id=b069d3e0193121ff6de348f68c7ce93e</a><br class="">e61e5e2f<br class=""><br class="">commit b069d3e0193121ff6de348f68c7ce93ee61e5e2f<br class="">Author: &nbsp;&nbsp;&nbsp;&nbsp;John Baldwin &lt;<a href="mailto:jhb@FreeBSD.org" class="">jhb@FreeBSD.org</a>&gt;<br class="">AuthorDate: 2023-01-04 22:55:00 +0000<br class="">Commit: &nbsp;&nbsp;&nbsp;&nbsp;John Baldwin &lt;<a href="mailto:jhb@FreeBSD.org" class="">jhb@FreeBSD.org</a>&gt;<br class="">CommitDate: 2023-01-04 22:55:00 +0000<br class=""><br class="">&nbsp;&nbsp;&nbsp;rtld: Revert "When loading dso without PT_GNU_STACK phdr, only call"<br class=""><br class="">&nbsp;&nbsp;&nbsp;After the removal of ia64 and sparc64, all current architectures<br class="">&nbsp;&nbsp;&nbsp;support executable stacks at an architectural level.<br class=""><br class="">&nbsp;&nbsp;&nbsp;This reverts commit 1290d38ac50b3afa7e5781d9d97346a1042c736c.<br class=""></blockquote><br class="">I tried git log as follows in two independent repos, my "prod" repo and the<br class="">working repo I commit from:<br class=""><br class="">slippy$ git log 1290d38ac50b3afa7e5781d9d97346a1042c736c<br class="">fatal: bad object 1290d38ac50b3afa7e5781d9d97346a1042c736c<br class="">slippy$<br class=""><br class="">Could there be some corruption somewhere? Do other people have the same<br class="">result as I do when they run git log against that hash? Or are my repos<br class="">corrupted?<br class=""><br class="">When I run git log and search for the string "When loading dso without<br class="">PT_GNU_STACK phdr, only call", I find the following, suggesting that the<br class="">svn2git process may have resulted in different hashes in different repos<br class="">used by &nbsp;different people.<br class=""><br class="">commit cb38d4941c45e3c72c4b5b3fad87d297d950cf53<br class="">Author: &nbsp;&nbsp;&nbsp;&nbsp;Konstantin Belousov &lt;<a href="mailto:kib@FreeBSD.org" class="">kib@FreeBSD.org</a>&gt;<br class="">AuthorDate: Tue Jan 25 21:12:31 2011 +0000<br class="">Commit: &nbsp;&nbsp;&nbsp;&nbsp;Konstantin Belousov &lt;<a href="mailto:kib@FreeBSD.org" class="">kib@FreeBSD.org</a>&gt;<br class="">CommitDate: Tue Jan 25 21:12:31 2011 +0000<br class=""><br class="">&nbsp;&nbsp;&nbsp;When loading dso without PT_GNU_STACK phdr, only call<br class="">&nbsp;&nbsp;&nbsp;__pthread_map_stacks_exec() on architectures that allow executable<br class="">&nbsp;&nbsp;&nbsp;stacks.<br class=""><br class="">&nbsp;&nbsp;&nbsp;Reported and tested by: marcel (ia64)<br class=""><br class="">Notes:<br class="">&nbsp;&nbsp;&nbsp;svn path=/head/; revision=217851<br class=""><br class="">BTW, our GH read-only mirror has the same hash as above suggesting that<br class="">jhb's repo may not be in sync with others with regard to svn2git generated<br class="">commits?<br class=""><br class="">Or, does this point to a deeper problem with inconsistent repos or some<br class="">other svn2git inconsistency somewhere?<br class=""></blockquote><br class="">It’s the hash from the old GitHub mirror that's now freebsd/freebsd-legacy.<br class=""></blockquote><br class="">Interesting, that is the hash I got from git blame for some reason. &nbsp;I might<br class="">have done the blame in CheriBSD though which has a complicated history where<br class="">it merged commits from the old hashes up to a point when the new hashes<br class="">were published, then CheriBSD has a special merge commit to join the old and<br class="">new histories before merging the new hashes from that point forwards.<br class=""></blockquote><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">I have pristine clone of the official FreeBSD src repo, which I used when</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">did the review and look up the referenced commit. &nbsp;It worked for me.</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">I suspect/believe that the svn-&gt;git conversion also imported old hashes.</span></div></blockquote><br class=""></div><div>Which branches does "git branch -a --contains 1290d38ac50b3afa7e5781d9d97346a1042c736c” list? For me I only see it on branches that have been migrated from the old hashes.</div><div><br class=""></div><div>Andrew</div><br class=""></body></html>

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?F3B87C81-7A97-4BA4-8ADA-A75E53B14092>