src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp

changeset 2418
36c186bcc085
parent 2322
828eafbd85cc
child 2507
d70fe6ab4436
equal deleted inserted replaced
2398:06e4b9c9db76 2418:36c186bcc085
740 sigset_t newset; 740 sigset_t newset;
741 sigemptyset(&newset); 741 sigemptyset(&newset);
742 sigaddset(&newset, sig); 742 sigaddset(&newset, sig);
743 sigprocmask(SIG_UNBLOCK, &newset, NULL); 743 sigprocmask(SIG_UNBLOCK, &newset, NULL);
744 744
745 // Determine which sort of error to throw. Out of swap may signal
746 // on the thread stack, which could get a mapping error when touched.
747 address addr = (address) info->si_addr;
748 if (sig == SIGBUS && info->si_code == BUS_OBJERR && info->si_errno == ENOMEM) {
749 vm_exit_out_of_memory(0, "Out of swap space to map in thread stack.");
750 }
751
745 VMError err(t, sig, pc, info, ucVoid); 752 VMError err(t, sig, pc, info, ucVoid);
746 err.report_and_die(); 753 err.report_and_die();
747 754
748 ShouldNotReachHere(); 755 ShouldNotReachHere();
749 } 756 }

mercurial