RFR: 8214077: test java/io/File/SetLastModified.java fails on ARM32 (original) (raw)
Magnus Ihse Bursie magnus.ihse.bursie at oracle.com
Mon Dec 10 11:05:54 UTC 2018
- Previous message (by thread): RFR: 8214077: test java/io/File/SetLastModified.java fails on ARM32
- Next message (by thread): RFR: 8214077: test java/io/File/SetLastModified.java fails on ARM32
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 2018-12-10 11:56, Nick Gasson (Arm Technology China) wrote:
Hi,
Any update on this one? Or do we want to give up on it until JDK-8165620 is implemented? I think Alan reviewed it as OK with just a minor fix, and offered to sponsor it for you.
Then the discussion started about some major changes, rewriting configure to provide individual support for every possible system function... I recommend that you go with the fix that solves your problem.
In fact, I disagree with the premise of JDK-8165620. I think it's better to do what you're doing here, to update the source code, so that it is clear that we know that we're handing 64-bit data.
/Magnus
Thanks, Nick
On 28/11/2018 11:33, Martin Buchholz wrote:
On Tue, Nov 27, 2018 at 7:25 PM, Nick Gasson <Nick.Gasson at arm.com_ _<mailto:Nick.Gasson at arm.com>> wrote: > I missed one thing then looking at this. In TimeZonemd.c it should be > #ifdef MACOSX rather than #ifndef. I can sponsor the change for you but > I need to change this one line before pushing. Hi Alan, Yes feel free to modify it. I think looking at the at other files with these #defines more closely, is it the case that the #ifndef MACOSX check is only required for statvfs64? As in e.g. UnixNativeDispatcher.c. So TimeZonemd.c should look like this: #if defined(ALLBSDSOURCE) #define stat64 stat #define lstat64 lstat #define fstat64 fstat #endif I don't have access to any OS X machines to test unfortunately. But I wonder if a better way to handle this is to check for the presence of the stat64 functions in the configure script, and then we could just write something like this, which would be a lot clearer: #if !defined(HAVESTAT64) #define stat64 stat #endif
The best way is to implement https://bugs.openjdk.java.net/browse/JDK-8165620 <https://bugs.openjdk.java.net/browse/JDK-8165620> "Entire JDK should be built with -DFILEOFFSETBITS=64" but yes, another good way is to do as you suggest, have configure define HAVEXXXX for all known functions with a 64-bit variant and then put them into a header file with proper ifdefs for platforms that don't have them. You could also "simply" add #define FILEOFFSETBITS 64 but you have to do it for cliques of files that share ambiguously sized data simultaneously.
- Previous message (by thread): RFR: 8214077: test java/io/File/SetLastModified.java fails on ARM32
- Next message (by thread): RFR: 8214077: test java/io/File/SetLastModified.java fails on ARM32
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]