123 static bool signal_handlers_are_installed;
124
125 static int get_our_sigflags(int);
126 static void set_our_sigflags(int, int);
127 static void signal_sets_init();
128 static void install_signal_handlers();
129 static void set_signal_handler(int, bool);
130 static bool is_sig_ignored(int sig);
131
132 static sigset_t* unblocked_signals();
133 static sigset_t* vm_signals();
134 static sigset_t* allowdebug_blocked_signals();
135
136 // For signal-chaining
137 static struct sigaction *get_chained_signal_action(int sig);
138 static bool chained_handler(int sig, siginfo_t* siginfo, void* context);
139
140 // libpthread version string
141 static void libpthread_init();
142
143 // Function returns true if we run on OS/400 (pase), false if we run
144 // on AIX.
145 static bool on_pase() {
146 assert(_on_pase != -1, "not initialized");
147 return _on_pase ? true : false;
148 }
149
150 // Function returns true if we run on AIX, false if we run on OS/400
151 // (pase).
152 static bool on_aix() {
153 assert(_on_pase != -1, "not initialized");
154 return _on_pase ? false : true;
155 }
156
157 // Get 4 byte AIX kernel version number:
158 // highest 2 bytes: Version, Release
159 // if available: lowest 2 bytes: Tech Level, Service Pack.
160 static uint32_t os_version() {
161 assert(_os_version != 0, "not initialized");
162 return _os_version;
|
123 static bool signal_handlers_are_installed;
124
125 static int get_our_sigflags(int);
126 static void set_our_sigflags(int, int);
127 static void signal_sets_init();
128 static void install_signal_handlers();
129 static void set_signal_handler(int, bool);
130 static bool is_sig_ignored(int sig);
131
132 static sigset_t* unblocked_signals();
133 static sigset_t* vm_signals();
134 static sigset_t* allowdebug_blocked_signals();
135
136 // For signal-chaining
137 static struct sigaction *get_chained_signal_action(int sig);
138 static bool chained_handler(int sig, siginfo_t* siginfo, void* context);
139
140 // libpthread version string
141 static void libpthread_init();
142
143 // Return default libc guard size for the specified thread type.
144 static size_t default_guard_size(os::ThreadType thr_type);
145
146 // Function returns true if we run on OS/400 (pase), false if we run
147 // on AIX.
148 static bool on_pase() {
149 assert(_on_pase != -1, "not initialized");
150 return _on_pase ? true : false;
151 }
152
153 // Function returns true if we run on AIX, false if we run on OS/400
154 // (pase).
155 static bool on_aix() {
156 assert(_on_pase != -1, "not initialized");
157 return _on_pase ? false : true;
158 }
159
160 // Get 4 byte AIX kernel version number:
161 // highest 2 bytes: Version, Release
162 // if available: lowest 2 bytes: Tech Level, Service Pack.
163 static uint32_t os_version() {
164 assert(_os_version != 0, "not initialized");
165 return _os_version;
|