Print this page
segop_getpolicy already checks for a NULL op

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/vm/seg_kp.c
          +++ new/usr/src/uts/common/vm/seg_kp.c
↓ open down ↓ 86 lines elided ↑ open up ↑
  87   87  static caddr_t  segkp_get_internal(struct seg *seg, size_t len, uint_t flags,
  88   88                          struct segkp_data **tkpd, struct anon_map *amp);
  89   89  static void     segkp_release_internal(struct seg *seg,
  90   90                          struct segkp_data *kpd, size_t len);
  91   91  static int      segkp_unlock(struct hat *hat, struct seg *seg, caddr_t vaddr,
  92   92                          size_t len, struct segkp_data *kpd, uint_t flags);
  93   93  static int      segkp_load(struct hat *hat, struct seg *seg, caddr_t vaddr,
  94   94                          size_t len, struct segkp_data *kpd, uint_t flags);
  95   95  static struct   segkp_data *segkp_find(struct seg *seg, caddr_t vaddr);
  96   96  static int      segkp_getmemid(struct seg *seg, caddr_t addr, memid_t *memidp);
  97      -static lgrp_mem_policy_info_t   *segkp_getpolicy(struct seg *seg,
  98      -    caddr_t addr);
  99   97  static int      segkp_capable(struct seg *seg, segcapability_t capability);
 100   98  
 101   99  /*
 102  100   * Lock used to protect the hash table(s) and caches.
 103  101   */
 104  102  static kmutex_t segkp_lock;
 105  103  
 106  104  /*
 107  105   * The segkp caches
 108  106   */
↓ open down ↓ 33 lines elided ↑ open up ↑
 142  140  pgcnt_t anon_segkp_pages_locked;        /* See vm/anon.h */
 143  141  pgcnt_t anon_segkp_pages_resv;          /* anon reserved by seg_kp */
 144  142  
 145  143  static struct   seg_ops segkp_ops = {
 146  144          .fault          = segkp_fault,
 147  145          .checkprot      = segkp_checkprot,
 148  146          .kluster        = segkp_kluster,
 149  147          .dump           = segkp_dump,
 150  148          .pagelock       = segkp_pagelock,
 151  149          .getmemid       = segkp_getmemid,
 152      -        .getpolicy      = segkp_getpolicy,
 153  150          .capable        = segkp_capable,
 154  151  };
 155  152  
 156  153  
 157  154  static void segkpinit_mem_config(struct seg *);
 158  155  
 159  156  static uint32_t segkp_indel;
 160  157  
 161  158  /*
 162  159   * Allocate the segment specific private data struct and fill it in
↓ open down ↓ 1201 lines elided ↑ open up ↑
1364 1361      struct page ***ppp, enum lock_type type, enum seg_rw rw)
1365 1362  {
1366 1363          return (ENOTSUP);
1367 1364  }
1368 1365  
1369 1366  /*ARGSUSED*/
1370 1367  static int
1371 1368  segkp_getmemid(struct seg *seg, caddr_t addr, memid_t *memidp)
1372 1369  {
1373 1370          return (ENODEV);
1374      -}
1375      -
1376      -/*ARGSUSED*/
1377      -static lgrp_mem_policy_info_t   *
1378      -segkp_getpolicy(struct seg *seg, caddr_t addr)
1379      -{
1380      -        return (NULL);
1381 1371  }
1382 1372  
1383 1373  /*ARGSUSED*/
1384 1374  static int
1385 1375  segkp_capable(struct seg *seg, segcapability_t capability)
1386 1376  {
1387 1377          return (0);
1388 1378  }
1389 1379  
1390 1380  #include <sys/mem_config.h>
↓ open down ↓ 43 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX