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

Joseph D. Darcy Joe.Darcy at Sun.COM
Mon Sep 28 09:50:07 PDT 2009


Andrew John Hughes wrote:
> 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?
>   

Yes, please push these changes.

Thanks,

-Joe



More information about the jdk6-dev mailing list