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/seg_dev.c
          +++ new/usr/src/uts/common/vm/seg_dev.c
↓ open down ↓ 180 lines elided ↑ open up ↑
 181  181  static void     segdev_dump(struct seg *);
 182  182  static int      segdev_pagelock(struct seg *, caddr_t, size_t,
 183  183                      struct page ***, enum lock_type, enum seg_rw);
 184  184  static int      segdev_getmemid(struct seg *, caddr_t, memid_t *);
 185  185  
 186  186  /*
 187  187   * XXX  this struct is used by rootnex_map_fault to identify
 188  188   *      the segment it has been passed. So if you make it
 189  189   *      "static" you'll need to fix rootnex_map_fault.
 190  190   */
 191      -struct seg_ops segdev_ops = {
      191 +const struct seg_ops segdev_ops = {
 192  192          .dup            = segdev_dup,
 193  193          .unmap          = segdev_unmap,
 194  194          .free           = segdev_free,
 195  195          .fault          = segdev_fault,
 196  196          .faulta         = segdev_faulta,
 197  197          .setprot        = segdev_setprot,
 198  198          .checkprot      = segdev_checkprot,
 199  199          .kluster        = (int (*)())segdev_badop,
 200  200          .sync           = segdev_sync,
 201  201          .incore         = segdev_incore,
↓ open down ↓ 3871 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX