< prev index next >

src/hotspot/os/solaris/os_solaris.hpp

Print this page




  88   typedef int (*lgrp_cookie_stale_func_t)(lgrp_cookie_t cookie);
  89 
  90   static lgrp_home_func_t _lgrp_home;
  91   static lgrp_init_func_t _lgrp_init;
  92   static lgrp_fini_func_t _lgrp_fini;
  93   static lgrp_root_func_t _lgrp_root;
  94   static lgrp_children_func_t _lgrp_children;
  95   static lgrp_resources_func_t _lgrp_resources;
  96   static lgrp_nlgrps_func_t _lgrp_nlgrps;
  97   static lgrp_cookie_stale_func_t _lgrp_cookie_stale;
  98   static lgrp_cookie_t _lgrp_cookie;
  99 
 100   // Large Page Support
 101   static bool is_valid_page_size(size_t bytes);
 102   static size_t page_size_for_alignment(size_t alignment);
 103   static bool setup_large_pages(caddr_t start, size_t bytes, size_t align);
 104 
 105   static void try_enable_extended_io();
 106 
 107   static struct sigaction *(*get_signal_action)(int);
 108   static struct sigaction *get_preinstalled_handler(int);
 109   static int (*get_libjsig_version)();
 110   static void save_preinstalled_handler(int, struct sigaction&);
 111   static void check_signal_handler(int sig);
 112 
 113   typedef int (*pthread_setname_np_func_t)(pthread_t, const char*);
 114   static pthread_setname_np_func_t _pthread_setname_np;
 115 
 116  public:
 117   // Large Page Support--ISM.
 118   static bool largepage_range(char* addr, size_t size);
 119 
 120   static address handler_start, handler_end; // start and end pc of thr_sighndlrinfo
 121 
 122   static bool valid_stack_address(Thread* thread, address sp);
 123   static bool valid_ucontext(Thread* thread, const ucontext_t* valid, const ucontext_t* suspect);
 124   static const ucontext_t* get_valid_uc_in_signal_handler(Thread* thread,
 125                                                     const ucontext_t* uc);
 126 
 127   static ExtendedPC  ucontext_get_ExtendedPC(const ucontext_t* uc);
 128   static intptr_t*   ucontext_get_sp(const ucontext_t* uc);
 129   // ucontext_get_fp() is only used by Solaris X86 (see note below)
 130   static intptr_t*   ucontext_get_fp(const ucontext_t* uc);




  88   typedef int (*lgrp_cookie_stale_func_t)(lgrp_cookie_t cookie);
  89 
  90   static lgrp_home_func_t _lgrp_home;
  91   static lgrp_init_func_t _lgrp_init;
  92   static lgrp_fini_func_t _lgrp_fini;
  93   static lgrp_root_func_t _lgrp_root;
  94   static lgrp_children_func_t _lgrp_children;
  95   static lgrp_resources_func_t _lgrp_resources;
  96   static lgrp_nlgrps_func_t _lgrp_nlgrps;
  97   static lgrp_cookie_stale_func_t _lgrp_cookie_stale;
  98   static lgrp_cookie_t _lgrp_cookie;
  99 
 100   // Large Page Support
 101   static bool is_valid_page_size(size_t bytes);
 102   static size_t page_size_for_alignment(size_t alignment);
 103   static bool setup_large_pages(caddr_t start, size_t bytes, size_t align);
 104 
 105   static void try_enable_extended_io();
 106 
 107   static struct sigaction *(*get_signal_action)(int);

 108   static int (*get_libjsig_version)();

 109   static void check_signal_handler(int sig);
 110 
 111   typedef int (*pthread_setname_np_func_t)(pthread_t, const char*);
 112   static pthread_setname_np_func_t _pthread_setname_np;
 113 
 114  public:
 115   // Large Page Support--ISM.
 116   static bool largepage_range(char* addr, size_t size);
 117 
 118   static address handler_start, handler_end; // start and end pc of thr_sighndlrinfo
 119 
 120   static bool valid_stack_address(Thread* thread, address sp);
 121   static bool valid_ucontext(Thread* thread, const ucontext_t* valid, const ucontext_t* suspect);
 122   static const ucontext_t* get_valid_uc_in_signal_handler(Thread* thread,
 123                                                     const ucontext_t* uc);
 124 
 125   static ExtendedPC  ucontext_get_ExtendedPC(const ucontext_t* uc);
 126   static intptr_t*   ucontext_get_sp(const ucontext_t* uc);
 127   // ucontext_get_fp() is only used by Solaris X86 (see note below)
 128   static intptr_t*   ucontext_get_fp(const ucontext_t* uc);


< prev index next >