On Tue, 5 May 2026 13:06:52 GMT, Kevin Walls <[email protected]> wrote:

>> src/hotspot/share/runtime/os.hpp line 274:
>> 
>>> 272:                                                // and VM ergonomics 
>>> processing
>>> 273: 
>>> 274:   static void revive_init();                   // Process revival
>> 
>> To me it looks like this is only implemented on AIX/BSD, as no-ops. Windows 
>> and Linux doesn't implement this function, but `os::win32::revive_init` and 
>> `os::Linux::revive_init` respectively instead. Should they all implement the 
>> global, shared, one instead?
>> 
>> Then we could change the code in `threads.cpp` to something like the 
>> following, maybe with a fatal @YaSuenag suggests:
>> 
>> #if defined(LINUX) || defined(_WINDOWS)
>>   os::revive_init();
>> #else
>>   // maybe a fatal
>> #endif
>
> Yes, thanks for both comments, I was meaning to tidy this up...

Yes, I was previously thinking there would always be some generic OS init 
required, but so far it's only Linux.
I can remove those no-op methods in other OS classes, and just call the Linux 
one ifdef LINUX.  The revival code does not need to intrude on every OS class.

There should be nothing that calls Thread::process_revival() on other platforms 
at the moment, but could add a fatal error in case somebody tries.  Adding 
further platforms will require more work generally, and updating the 
process_revival() method will be a small part of that.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/31011#discussion_r3207622313

Reply via email to