Print this page
const-ify make segment ops structures
There is no reason to keep the segment ops structures writable.

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/vm/vm_seg.c
          +++ new/usr/src/uts/common/vm/vm_seg.c
↓ open down ↓ 197 lines elided ↑ open up ↑
 198  198  #define seg_pathr_full_ahb              pctrl3.p_athr_full_ahb
 199  199  #define seg_pshrink_shift               pctrl3.p_shrink_shft
 200  200  #define seg_pmaxapurge_npages           pctrl3.p_maxapurge_npages
 201  201  
 202  202  #define P_HASHWIN_MASK                  (seg_phashsize_win - 1)
 203  203  #define P_HASHWIRED_MASK                (seg_phashsize_wired - 1)
 204  204  #define P_BASESHIFT                     (6)
 205  205  
 206  206  kthread_t *seg_pasync_thr;
 207  207  
 208      -extern struct seg_ops segvn_ops;
 209      -extern struct seg_ops segspt_shmops;
      208 +extern const struct seg_ops segvn_ops;
      209 +extern const struct seg_ops segspt_shmops;
 210  210  
 211  211  #define IS_PFLAGS_WIRED(flags) ((flags) & SEGP_FORCE_WIRED)
 212  212  #define IS_PCP_WIRED(pcp) IS_PFLAGS_WIRED((pcp)->p_flags)
 213  213  
 214  214  #define LBOLT_DELTA(t)  ((ulong_t)(ddi_get_lbolt() - (t)))
 215  215  
 216  216  #define PCP_AGE(pcp)    LBOLT_DELTA((pcp)->p_lbolt)
 217  217  
 218  218  /*
 219  219   * htag0 argument can be a seg or amp pointer.
↓ open down ↓ 1830 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX