HotSpot 16 on OpenJDK6 build failure (was hg: jdk6/jdk6/hotspot: 3 new changesets)

Andrew John Hughes gnu_andrew at member.fsf.org
Thu Feb 25 13:10:05 PST 2010


On 25 February 2010 21:01, Daniel D. Daugherty <Daniel.Daugherty at sun.com> wrote:
> Andrew John Hughes wrote:
>
> <snip>
>
>>>
>>>>> I'll be pushing the ported changeset to HSX-16 baseline once I
>>>>> get back to Colorado. Right now I'm in New Mexico and expect to
>>>>> get home in 9-10 hours depending on the snow...
>>>>>
>>>>>
>>>>
>>>> Ok, I'll be surprised if that builds as that's effectively how it's
>>>> being applied to cause this failure -- the patch you made for OpenJDK6
>>>> is already there and the repository has been updated to the level of
>>>> hs16 master.
>>>>
>>>>
>>>
>>> But it did build and now I'm troubled about why this merge didn't
>>> work for you. Here's the merge that I did:
>>>
>>> # the '-r ...' is just to create the merge_test repo at the
>>> # previous tip:
>>> % hg clone -r b9408ac1b596 \
>>>    http://hg.openjdk.java.net/hsx/hsx16/baseline merge_test
>>> requesting all changes
>>> adding changesets
>>> adding manifests
>>> adding file changes
>>> added 999 changesets with 9169 changes to 3765 files
>>> updating working directory
>>> 3568 files updated, 0 files merged, 0 files removed, 0 files unresolved
>>>
>>>
>>> # make sure I'm getting the two changesets I expect:
>>> % hg inc -r 98cd9901c161 http://hg.openjdk.java.net/jdk6/jdk6/hotspot
>>> comparing with http://hg.openjdk.java.net/jdk6/jdk6/hotspot
>>> searching for changes
>>> changeset:   999:9127aa69352e
>>> parent:      921:9601152ccfc1
>>> user:        dcubed
>>> date:        Mon Dec 14 09:51:09 2009 -0700
>>> summary:     6648438: 4/4 src/share/vm/prims/jvmtiEnv.cpp:457
>>> assert(phase
>>> == JVMTI_PHASE_LIVE,"sanity check")
>>>
>>> changeset:   1000:98cd9901c161
>>> tag:         tip
>>> user:        dcubed
>>> date:        Mon Dec 14 10:05:36 2009 -0700
>>> summary:     6849968: 3/2 JVMTI tests fails on jdk5.0 with hs14
>>>
>>>
>>> # get the changesets:
>>> % hg pull -u -r 98cd9901c161 http://hg.openjdk.java.net/jdk6/jdk6/hotspot
>>> pulling from http://hg.openjdk.java.net/jdk6/jdk6/hotspot
>>> searching for changes
>>> adding changesets
>>> adding manifests
>>> adding file changes
>>> added 2 changesets with 7 changes to 6 files (+1 heads)
>>> abort: crosses branches (use 'hg merge' or 'hg update -C')
>>>
>>>
>>> # merge the conflicts:
>>> hg merge
>>> merging src/share/vm/prims/jvmtiEnv.cpp
>>> merging src/share/vm/prims/jvmtiEnvBase.cpp
>>> attempting automatic merge:
>>> merge: warning: conflicts during merge
>>> There are conflicts. attempting manual merge.
>>> calling filemerge for src/share/vm/prims/jvmtiEnvBase.cpp...
>>>
>>> # At this point, I had to manually merge two of the changes in
>>> # jvmtiEnvBase.cpp. The Mercurial auto merge couldn't handle it
>>> # and the automerge in the "filemerge" program couldn't handle
>>> # it either. Since one of the conflicted merges had to do with
>>> # the JvmtiEnvBase constructor, I'm guessing that might be what
>>> # happened in your situation. I don't know what merge tool you
>>> # use when Mercurial's automerge doesn't work, but that might
>>> # be what messed things up.
>>>
>>>
>>> # Make sure that all expected files are "modified" as part of
>>> # the hg merge:
>>> % hg status
>>> M src/share/vm/prims/jvmtiEnv.cpp
>>> M src/share/vm/prims/jvmtiEnvBase.cpp
>>> M src/share/vm/prims/jvmtiEnvBase.hpp
>>> M src/share/vm/prims/jvmtiExport.cpp
>>> M src/share/vm/prims/jvmtiExport.hpp
>>> M src/share/vm/prims/jvmtiHpp.xsl
>>>
>>>
>>> # Compare with the bits that I sent through JPRT for the
>>> # push last weekend:
>>>
>>> % diff
>>> {../../../../../bug_hunt/hsx16/exp/,}src/share/vm/prims/jvmtiEnv.cpp
>>>
>>> % diff
>>> {../../../../../bug_hunt/hsx16/exp/,}src/share/vm/prims/jvmtiEnvBase.cpp
>>>
>>> % diff
>>> {../../../../../bug_hunt/hsx16/exp/,}src/share/vm/prims/jvmtiEnvBase.hpp
>>>
>>> % diff
>>> {../../../../../bug_hunt/hsx16/exp/,}src/share/vm/prims/jvmtiExport.cpp
>>>
>>> % diff
>>> {../../../../../bug_hunt/hsx16/exp/,}src/share/vm/prims/jvmtiExport.hpp
>>>
>>> % diff
>>> {../../../../../bug_hunt/hsx16/exp/,}src/share/vm/prims/jvmtiHpp.xsl
>>>
>>>
>>> # At this point, all that is left is the "hg commit".
>>>
>>> Please let me know if you concur that "automerge" is what caused
>>> this problem.
>>>
>>> Dan
>>>
>>>
>>>
>>
>> I can confirm there was no merging of
>> hotspot/src/share/vm/prims/jvmtiEnv.cpp.
>
> Ummmm. The file that I had to manually merge was
> jvmtiEnvBase.cpp not jvmtiEnv.cpp... I think you
> checked the wrong file.
>

Ah my mistake.  That one is involved in the merge set, though it
doesn't appear to actually have any changes :-S

>
>> The problem is not from my
>> merge, but because the source of HotSpot 14 to which your original
>> OpenJDK6 patch was applied is different to the sources of HotSpot 14.
>>
>
> I'm having trouble parsing that last sentence. Can you
> clarify?
>

The last figure should be 16.  What I was saying is that I thought the
issue was because your original patch to OpenJDK6 was against hs14 and
then, with the source being updated to hs16, the original patch broke.
 But it could be a merge issue.

Either way, fixed now.

> Dan
>
>



-- 
Andrew :-)

Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)

Support Free Java!
Contribute to GNU Classpath and the OpenJDK
http://www.gnu.org/software/classpath
http://openjdk.java.net

PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint: F8EF F1EA 401E 2E60 15FA  7927 142C 2591 94EF D9D8


More information about the jdk6-dev mailing list