Print this page
6154 const-ify segment ops structures


  80 static int      segmap_kluster(struct seg *seg, caddr_t addr, ssize_t);
  81 static int      segmap_getprot(struct seg *seg, caddr_t addr, size_t len,
  82                         uint_t *protv);
  83 static u_offset_t       segmap_getoffset(struct seg *seg, caddr_t addr);
  84 static int      segmap_gettype(struct seg *seg, caddr_t addr);
  85 static int      segmap_getvp(struct seg *seg, caddr_t addr, struct vnode **vpp);
  86 static void     segmap_dump(struct seg *seg);
  87 static int      segmap_pagelock(struct seg *seg, caddr_t addr, size_t len,
  88                         struct page ***ppp, enum lock_type type,
  89                         enum seg_rw rw);
  90 static void     segmap_badop(void);
  91 static int      segmap_getmemid(struct seg *seg, caddr_t addr, memid_t *memidp);
  92 
  93 /* segkpm support */
  94 static caddr_t  segmap_pagecreate_kpm(struct seg *, vnode_t *, u_offset_t,
  95                         struct smap *, enum seg_rw);
  96 struct smap     *get_smap_kpm(caddr_t, page_t **);
  97 
  98 #define SEGMAP_BADOP(t) (t(*)())segmap_badop
  99 
 100 static struct seg_ops segmap_ops = {
 101         .dup            = SEGMAP_BADOP(int),
 102         .unmap          = SEGMAP_BADOP(int),
 103         .free           = segmap_free,
 104         .fault          = segmap_fault,
 105         .faulta         = segmap_faulta,
 106         .setprot        = SEGMAP_BADOP(int),
 107         .checkprot      = segmap_checkprot,
 108         .kluster        = segmap_kluster,
 109         .swapout        = SEGMAP_BADOP(size_t),
 110         .sync           = SEGMAP_BADOP(int),
 111         .incore         = SEGMAP_BADOP(size_t),
 112         .lockop         = SEGMAP_BADOP(int),
 113         .getprot        = segmap_getprot,
 114         .getoffset      = segmap_getoffset,
 115         .gettype        = segmap_gettype,
 116         .getvp          = segmap_getvp,
 117         .advise         = SEGMAP_BADOP(int),
 118         .dump           = segmap_dump,
 119         .pagelock       = segmap_pagelock,
 120         .setpagesize    = SEGMAP_BADOP(int),




  80 static int      segmap_kluster(struct seg *seg, caddr_t addr, ssize_t);
  81 static int      segmap_getprot(struct seg *seg, caddr_t addr, size_t len,
  82                         uint_t *protv);
  83 static u_offset_t       segmap_getoffset(struct seg *seg, caddr_t addr);
  84 static int      segmap_gettype(struct seg *seg, caddr_t addr);
  85 static int      segmap_getvp(struct seg *seg, caddr_t addr, struct vnode **vpp);
  86 static void     segmap_dump(struct seg *seg);
  87 static int      segmap_pagelock(struct seg *seg, caddr_t addr, size_t len,
  88                         struct page ***ppp, enum lock_type type,
  89                         enum seg_rw rw);
  90 static void     segmap_badop(void);
  91 static int      segmap_getmemid(struct seg *seg, caddr_t addr, memid_t *memidp);
  92 
  93 /* segkpm support */
  94 static caddr_t  segmap_pagecreate_kpm(struct seg *, vnode_t *, u_offset_t,
  95                         struct smap *, enum seg_rw);
  96 struct smap     *get_smap_kpm(caddr_t, page_t **);
  97 
  98 #define SEGMAP_BADOP(t) (t(*)())segmap_badop
  99 
 100 static const struct seg_ops segmap_ops = {
 101         .dup            = SEGMAP_BADOP(int),
 102         .unmap          = SEGMAP_BADOP(int),
 103         .free           = segmap_free,
 104         .fault          = segmap_fault,
 105         .faulta         = segmap_faulta,
 106         .setprot        = SEGMAP_BADOP(int),
 107         .checkprot      = segmap_checkprot,
 108         .kluster        = segmap_kluster,
 109         .swapout        = SEGMAP_BADOP(size_t),
 110         .sync           = SEGMAP_BADOP(int),
 111         .incore         = SEGMAP_BADOP(size_t),
 112         .lockop         = SEGMAP_BADOP(int),
 113         .getprot        = segmap_getprot,
 114         .getoffset      = segmap_getoffset,
 115         .gettype        = segmap_gettype,
 116         .getvp          = segmap_getvp,
 117         .advise         = SEGMAP_BADOP(int),
 118         .dump           = segmap_dump,
 119         .pagelock       = segmap_pagelock,
 120         .setpagesize    = SEGMAP_BADOP(int),