Print this page
patch SEGOP_SWAPOUT-delete

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/vm/seg_spt.c
          +++ new/usr/src/uts/common/vm/seg_spt.c
↓ open down ↓ 86 lines elided ↑ open up ↑
  87   87  
  88   88  struct seg_ops segspt_ops = {
  89   89          SEGSPT_BADOP(int),              /* dup */
  90   90          segspt_unmap,
  91   91          segspt_free,
  92   92          SEGSPT_BADOP(int),              /* fault */
  93   93          SEGSPT_BADOP(faultcode_t),      /* faulta */
  94   94          SEGSPT_BADOP(int),              /* setprot */
  95   95          SEGSPT_BADOP(int),              /* checkprot */
  96   96          SEGSPT_BADOP(int),              /* kluster */
  97      -        SEGSPT_BADOP(size_t),           /* swapout */
  98   97          SEGSPT_BADOP(int),              /* sync */
  99   98          SEGSPT_BADOP(size_t),           /* incore */
 100   99          SEGSPT_BADOP(int),              /* lockop */
 101  100          SEGSPT_BADOP(int),              /* getprot */
 102  101          SEGSPT_BADOP(u_offset_t),       /* getoffset */
 103  102          SEGSPT_BADOP(int),              /* gettype */
 104  103          SEGSPT_BADOP(int),              /* getvp */
 105  104          SEGSPT_BADOP(int),              /* advise */
 106  105          SEGSPT_BADOP(void),             /* dump */
 107  106          SEGSPT_BADOP(int),              /* pagelock */
↓ open down ↓ 7 lines elided ↑ open up ↑
 115  114  static int segspt_shmunmap(struct seg *seg, caddr_t raddr, size_t ssize);
 116  115  static void segspt_shmfree(struct seg *seg);
 117  116  static faultcode_t segspt_shmfault(struct hat *hat, struct seg *seg,
 118  117                  caddr_t addr, size_t len, enum fault_type type, enum seg_rw rw);
 119  118  static faultcode_t segspt_shmfaulta(struct seg *seg, caddr_t addr);
 120  119  static int segspt_shmsetprot(register struct seg *seg, register caddr_t addr,
 121  120                          register size_t len, register uint_t prot);
 122  121  static int segspt_shmcheckprot(struct seg *seg, caddr_t addr, size_t size,
 123  122                          uint_t prot);
 124  123  static int      segspt_shmkluster(struct seg *seg, caddr_t addr, ssize_t delta);
 125      -static size_t   segspt_shmswapout(struct seg *seg);
 126  124  static size_t segspt_shmincore(struct seg *seg, caddr_t addr, size_t len,
 127  125                          register char *vec);
 128  126  static int segspt_shmsync(struct seg *seg, register caddr_t addr, size_t len,
 129  127                          int attr, uint_t flags);
 130  128  static int segspt_shmlockop(struct seg *seg, caddr_t addr, size_t len,
 131  129                          int attr, int op, ulong_t *lockmap, size_t pos);
 132  130  static int segspt_shmgetprot(struct seg *seg, caddr_t addr, size_t len,
 133  131                          uint_t *protv);
 134  132  static u_offset_t segspt_shmgetoffset(struct seg *seg, caddr_t addr);
 135  133  static int segspt_shmgettype(struct seg *seg, caddr_t addr);
↓ open down ↓ 10 lines elided ↑ open up ↑
 146  144  
 147  145  struct seg_ops segspt_shmops = {
 148  146          segspt_shmdup,
 149  147          segspt_shmunmap,
 150  148          segspt_shmfree,
 151  149          segspt_shmfault,
 152  150          segspt_shmfaulta,
 153  151          segspt_shmsetprot,
 154  152          segspt_shmcheckprot,
 155  153          segspt_shmkluster,
 156      -        segspt_shmswapout,
 157  154          segspt_shmsync,
 158  155          segspt_shmincore,
 159  156          segspt_shmlockop,
 160  157          segspt_shmgetprot,
 161  158          segspt_shmgetoffset,
 162  159          segspt_shmgettype,
 163  160          segspt_shmgetvp,
 164  161          segspt_shmadvise,       /* advise */
 165  162          segspt_shmdump,
 166  163          segspt_shmpagelock,
↓ open down ↓ 2088 lines elided ↑ open up ↑
2255 2252          return (0);
2256 2253  }
2257 2254  
2258 2255  /*ARGSUSED*/
2259 2256  static int
2260 2257  segspt_shmkluster(struct seg *seg, caddr_t addr, ssize_t delta)
2261 2258  {
2262 2259          return (0);
2263 2260  }
2264 2261  
2265      -/*ARGSUSED*/
2266      -static size_t
2267      -segspt_shmswapout(struct seg *seg)
2268      -{
2269      -        return (0);
2270      -}
2271      -
2272 2262  /*
2273 2263   * duplicate the shared page tables
2274 2264   */
2275 2265  int
2276 2266  segspt_shmdup(struct seg *seg, struct seg *newseg)
2277 2267  {
2278 2268          struct shm_data         *shmd = (struct shm_data *)seg->s_data;
2279 2269          struct anon_map         *amp = shmd->shm_amp;
2280 2270          struct shm_data         *shmd_new;
2281 2271          struct seg              *spt_seg = shmd->shm_sptseg;
↓ open down ↓ 834 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX