Differences between OpenJDK 6 hotspot tip and hsx14/master tip (Was: hg: jdk6/jdk6/hotspot: 557 new changesets)

Andrew John Hughes gnu_andrew at member.fsf.org
Fri Sep 25 09:22:34 PDT 2009


2009/9/23 Andrew John Hughes <gnu_andrew at member.fsf.org>:
> 2009/9/23 Andrew John Hughes <gnu_andrew at member.fsf.org>:
>> 2009/9/23 Joe Darcy <Joe.Darcy at sun.com>:
>>> Andrew John Hughes wrote:
>>>>
>>>> 2009/9/22 Andrew John Hughes <gnu_andrew at member.fsf.org>:
>>>>
>>>>>
>>>>> 2009/9/22 Joseph D. Darcy <Joe.Darcy at sun.com>:
>>>>>
>>>>>>
>>>>>> Andrew John Hughes wrote:
>>>>>>
>>>>>>>
>>>>>>> 2009/9/15 Andrew John Hughes <gnu_andrew at member.fsf.org>:
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> 2009/9/15 Dalibor Topic <Dalibor.Topic at sun.com>:
>>>>>>>>
>>>>>>>>
>>>>>>>>>
>>>>>>>>> Andrew John Hughes wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> I guess it was inevitable a change of this size wouldn't go through
>>>>>>>>>> without problems, even though both myself and Joe have been through
>>>>>>>>>> it.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Stuff happens. ;)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> I verified the GNU/Linux build but, being unable to do either a
>>>>>>>>>> Solaris or Windows build with Free tools, I haven't been able to
>>>>>>>>>> verify those.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> From what I could see in the history, the reason why your
>>>>>>>>> build worked on Linux is this 'Merge' changeset:
>>>>>>>>>
>>>>>>>>> http://hg.openjdk.java.net/jdk6/jdk6/hotspot/rev/327aeae2236a
>>>>>>>>>
>>>>>>>>> It's hard to say where it was merged from, though the 'minimal
>>>>>>>>> tweak to makefile' idea was something I tried with OpenSolaris
>>>>>>>>> first, too, before I wrote to the list.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> Ah ok, I was thinking of the earlier big merge changeset.  This one is
>>>>>>>> a number of merge artefacts I found when building the resulting merged
>>>>>>>> copy.  The 'Merge' comment reflects that it should have been part of
>>>>>>>> the original merge, and also avoids having to obtain a bug ID for this
>>>>>>>> fix (though I believe that's disabled on 6 anyway).  I guess I didn't
>>>>>>>> spot the Solaris one.
>>>>>>>>
>>>>>>>> Due to the whitespace changes, pretty much every file from the merge
>>>>>>>> had conflicts.  In some cases, where it was obvious the conflicts were
>>>>>>>> just whitespace I copied over the file from hs14 as a cleaner
>>>>>>>> alternative, but some had to be merged manually.  I guess this is why
>>>>>>>> there is still some whitespace oddities and other strange changes.  To
>>>>>>>> say that notionally the two versions are meant to be pretty close, it
>>>>>>>> seems the whitespace cleanup of the HotSpot sources in 7 has fouled
>>>>>>>> things up.
>>>>>>>>
>>>>>>>> In the proposed patch,
>>>>>>>>
>>>>>>>>
>>>>>>>>>
>>>>>>>>> I picked the 'just drop unused lines' approach Erik suggested,
>>>>>>>>> though, which removes the differences between the merged and
>>>>>>>>> original makefiles in this case.
>>>>>>>>>
>>>>>>>>> There is a bunch of other small differences between the original hsx
>>>>>>>>> 14
>>>>>>>>> code and the merged code beside the whitespace changes. I'd prefer to
>>>>>>>>> see a whitespace cleanup patch first, before we go into the remaining
>>>>>>>>> deltas - like Martin, I'd like to see the OpenJDK 6 hotspot code as
>>>>>>>>> close as possible to the 'upstream' repository, so that any
>>>>>>>>> additional
>>>>>>>>> deltas stand out easily.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> Ok, I'll look at fixing that when I'm back at work next week, unless
>>>>>>>> anyone wants to doing it in the meantime.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>
>>>>>>>>> cheers,
>>>>>>>>> dalibor topic
>>>>>>>>> --
>>>>>>>>> *******************************************************************
>>>>>>>>> Dalibor Topic                   Tel: (+49 40) 23 646 738
>>>>>>>>> Java F/OSS Ambassador           AIM: robiladonaim
>>>>>>>>> Sun Microsystems GmbH           Mobile: (+49 177) 2664 192
>>>>>>>>> Nagelsweg 55                    http://openjdk.java.net
>>>>>>>>> D-20097 Hamburg                 mailto:Dalibor.Topic at sun.com
>>>>>>>>> Sitz der Gesellschaft: Sonnenallee 1, D-85551 Kirchheim-Heimstetten
>>>>>>>>> Amtsgericht München: HRB 161028
>>>>>>>>> Geschäftsführer: Thomas Schröder, Wolfgang Engels, Wolf Frenkel
>>>>>>>>> Vorsitzender des Aufsichtsrates: Martin Häring
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> --
>>>>>>>> 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
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> Right, here's the webrev with the whitespace fixups, thanks to the
>>>>>>> normalizer script Kelly posted:
>>>>>>>
>>>>>>> http://cr.openjdk.java.net/~andrew/jdk6-hs14-merge/webrev.02
>>>>>>>
>>>>>>> If someone can give this the ok and a bug ID, I'll push it.
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> 6884267 Fix hotspot whitespace issues in OpenJDK 6 HS 14 port
>>>>>>
>>>>>> I approve this going back if all the changes were from the normalized
>>>>>> script.
>>>>>>
>>>>>>
>>>>>
>>>>> They were; duly pushed:
>>>>> http://hg.openjdk.java.net/jdk6/jdk6/hotspot/rev/1d0aa63a42c0
>>>>>
>>>>>
>>>>>>>
>>>>>>> The other difference between the two seems to be some versioning cruft
>>>>>>> that's still in OpenJDK6 which I'll remove with a further webrev.  I
>>>>>>> don't want things to get lost in this huge whitespace patch.
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> Yes, the whitespace should be done by itself!
>>>>>>
>>>>>>
>>>>>
>>>>> Ok, next webrev coming up shortly.
>>>>>
>>>>>
>>>>>>>
>>>>>>> There will remain some differences from hs14; aph's debug fix,
>>>>>>> Daniel's fixes and the fix for building with newer GCCs are all local
>>>>>>> to this branch.  I still don't understand the bizarre logic behind not
>>>>>>> taking patches to the branch, but c'est la vie...
>>>>>>>
>>>>>>> Interestingly, the normalizer script did spot that some whitespace
>>>>>>> issues have crept back into HotSpot 14so I check with the latest from
>>>>>>> OpenJDK7 and post a patch there too, if necessary.
>>>>>>>
>>>>>>> Thanks,
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>> -Joe
>>>>>>
>>>>>>
>>>>>
>>>>> Thanks,
>>>>> --
>>>>> 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
>>>>>
>>>>>
>>>>
>>>> Next part:
>>>>
>>>> http://cr.openjdk.java.net/~andrew/jdk6-hs14-merge/webrev.03/
>>>>
>>>> This removes the versioning cruft present in many files, in order to match
>>>> hs14.
>>>>
>>>
>>> I've filed bug
>>> 6884685 Remove versioning cruft from HS14 in OpenJDK 6
>>> for this work.
>>>
>>> By what process was the cruft identified for removal?
>>>
>>
>> Just a simple diff between the two HotSpot trees in this case.
>> I was able to automate a lot of it by just removing the first three
>> lines of files that contained the IDENT pragma:
>>
>>  for files in `find -type f`;
>> do
>>  if head $files | grep USE_PRAGMA_IDENT; then
>>    tail -n+4 $files > $files.tmp;
>>    mv -f $files.tmp $files
>>  fi;
>> done
>>
>>  and then rechecking against the diff.
>>
>>> In
>>>
>>> --- old/agent/test/jdi/sagtest.java     2009-09-22 16:17:02.085940339 +0100
>>> +++ new/agent/test/jdi/sagtest.java     2009-09-22 16:17:02.005542781 +0100
>>> @@ -23,8 +23,7 @@
>>>  */
>>>
>>> /**
>>> - *  @test @(#)sagtest.java      1.10 07/05/05
>>> - *  @bug 0000000
>>> + *  @test *  @bug 0000000
>>>  *  @summary This is just an exercise of various JDI elements for use in
>>>  *           testing the SA/JDI client
>>>  *
>>>
>>>
>>> this change doesn't look right, but I see the same code is in JDK 7 so c'est
>>> la vie.
>>>
>>
>> The @bug should still be on the line below, right?
>> I think the removal of these was also automated and the newline was
>> accidentally removed.
>> I'll correct our version before pushing.
>>
>>> Approved to go back.
>>>
>>
>> Thanks.
>>
>>> -Joe
>>>
>>>
>>
>>
>>
>> --
>> 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
>>
>
> Pushed: http://hg.openjdk.java.net/jdk6/jdk6/hotspot/rev/b5b3a7fbcf67
> --
> 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
>

Here's the final one:

http://cr.openjdk.java.net/~andrew/jdk6-hs14-merge/webrev.04/

agent/make/Makefile: Readd a change which seems to have occurred
between b20 and b24.
make/windows/platform_i486: Cruft cleanup that was missed
src/os/solaris/dtrace/generateJvmOffsets.cpp: Match version to hs14.
src/os/solaris/dtrace/generateJvmOffsetsMain.c: Again more cruft that
was missed.
new/test/jprt.config: And again.

The rest of the differences are from either aph's debug changeset, the
gcc 4.3 build fix changeset
(http://hg.openjdk.java.net/jdk6/jdk6/hotspot/rev/94f5d9fbe70d) or the
GC patches push by Daniel
(http://hg.openjdk.java.net/jdk6/jdk6/hotspot/rev/9601152ccfc1)

I think we can go for b17 once this is pushed.

Does this look ok?

Thanks,
-- 
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