Print this page
6154 const-ify segment ops structures


  89  * segmap_kpm -- separate on/off switch for segmap using segkpm:
  90  * . Set by default.
  91  * . Will be disabled when kpm_enable is zero.
  92  * . Will be disabled when MAXBSIZE != PAGESIZE.
  93  * . Can be disabled via /etc/system.
  94  *
  95  */
  96 int kpm_enable = 1;
  97 int kpm_smallpages = 0;
  98 int segmap_kpm = 1;
  99 
 100 /*
 101  * Private seg op routines.
 102  */
 103 faultcode_t segkpm_fault(struct hat *hat, struct seg *seg, caddr_t addr,
 104                         size_t len, enum fault_type type, enum seg_rw rw);
 105 static void     segkpm_badop(void);
 106 
 107 #define SEGKPM_BADOP(t) (t(*)())segkpm_badop
 108 
 109 static struct seg_ops segkpm_ops = {
 110         .dup            = SEGKPM_BADOP(int),
 111         .unmap          = SEGKPM_BADOP(int),
 112         .free           = SEGKPM_BADOP(void),
 113         .fault          = segkpm_fault,
 114         .faulta         = SEGKPM_BADOP(int),
 115         .setprot        = SEGKPM_BADOP(int),
 116         .checkprot      = SEGKPM_BADOP(int),
 117         .kluster        = SEGKPM_BADOP(int),
 118         .swapout        = SEGKPM_BADOP(size_t),
 119         .sync           = SEGKPM_BADOP(int),
 120         .incore         = SEGKPM_BADOP(size_t),
 121         .lockop         = SEGKPM_BADOP(int),
 122         .getprot        = SEGKPM_BADOP(int),
 123         .getoffset      = SEGKPM_BADOP(u_offset_t),
 124         .gettype        = SEGKPM_BADOP(int),
 125         .getvp          = SEGKPM_BADOP(int),
 126         .advise         = SEGKPM_BADOP(int),
 127         .setpagesize    = SEGKPM_BADOP(int),
 128         .getmemid       = SEGKPM_BADOP(int),
 129         .getpolicy      = SEGKPM_BADOP(lgrp_mem_policy_info_t *),




  89  * segmap_kpm -- separate on/off switch for segmap using segkpm:
  90  * . Set by default.
  91  * . Will be disabled when kpm_enable is zero.
  92  * . Will be disabled when MAXBSIZE != PAGESIZE.
  93  * . Can be disabled via /etc/system.
  94  *
  95  */
  96 int kpm_enable = 1;
  97 int kpm_smallpages = 0;
  98 int segmap_kpm = 1;
  99 
 100 /*
 101  * Private seg op routines.
 102  */
 103 faultcode_t segkpm_fault(struct hat *hat, struct seg *seg, caddr_t addr,
 104                         size_t len, enum fault_type type, enum seg_rw rw);
 105 static void     segkpm_badop(void);
 106 
 107 #define SEGKPM_BADOP(t) (t(*)())segkpm_badop
 108 
 109 static const struct seg_ops segkpm_ops = {
 110         .dup            = SEGKPM_BADOP(int),
 111         .unmap          = SEGKPM_BADOP(int),
 112         .free           = SEGKPM_BADOP(void),
 113         .fault          = segkpm_fault,
 114         .faulta         = SEGKPM_BADOP(int),
 115         .setprot        = SEGKPM_BADOP(int),
 116         .checkprot      = SEGKPM_BADOP(int),
 117         .kluster        = SEGKPM_BADOP(int),
 118         .swapout        = SEGKPM_BADOP(size_t),
 119         .sync           = SEGKPM_BADOP(int),
 120         .incore         = SEGKPM_BADOP(size_t),
 121         .lockop         = SEGKPM_BADOP(int),
 122         .getprot        = SEGKPM_BADOP(int),
 123         .getoffset      = SEGKPM_BADOP(u_offset_t),
 124         .gettype        = SEGKPM_BADOP(int),
 125         .getvp          = SEGKPM_BADOP(int),
 126         .advise         = SEGKPM_BADOP(int),
 127         .setpagesize    = SEGKPM_BADOP(int),
 128         .getmemid       = SEGKPM_BADOP(int),
 129         .getpolicy      = SEGKPM_BADOP(lgrp_mem_policy_info_t *),