Print this page
segop_getpolicy already checks for a NULL op

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/sparc/v9/vm/seg_nf.c
          +++ new/usr/src/uts/sparc/v9/vm/seg_nf.c
↓ open down ↓ 70 lines elided ↑ open up ↑
  71   71                      size_t len, uint_t *protv);
  72   72  static u_offset_t segnf_getoffset(struct seg *seg, caddr_t addr);
  73   73  static int      segnf_gettype(struct seg *seg, caddr_t addr);
  74   74  static int      segnf_getvp(struct seg *seg, caddr_t addr, struct vnode **vpp);
  75   75  static void     segnf_dump(struct seg *seg);
  76   76  static int      segnf_pagelock(struct seg *seg, caddr_t addr, size_t len,
  77   77                      struct page ***ppp, enum lock_type type, enum seg_rw rw);
  78   78  static int      segnf_setpagesize(struct seg *seg, caddr_t addr, size_t len,
  79   79                      uint_t szc);
  80   80  static int      segnf_getmemid(struct seg *seg, caddr_t addr, memid_t *memidp);
  81      -static lgrp_mem_policy_info_t   *segnf_getpolicy(struct seg *seg,
  82      -    caddr_t addr);
  83   81  
  84   82  
  85   83  struct seg_ops segnf_ops = {
  86   84          .dup            = segnf_dup,
  87   85          .unmap          = segnf_unmap,
  88   86          .free           = segnf_free,
  89   87          .fault          = (faultcode_t (*)(struct hat *, struct seg *, caddr_t,
  90   88              size_t, enum fault_type, enum seg_rw))segnf_nomap,
  91   89          .faulta         = (faultcode_t (*)(struct seg *, caddr_t)) segnf_nomap,
  92   90          .setprot        = segnf_setprot,
↓ open down ↓ 7 lines elided ↑ open up ↑
 100   98          .getprot        = segnf_getprot,
 101   99          .getoffset      = segnf_getoffset,
 102  100          .gettype        = segnf_gettype,
 103  101          .getvp          = segnf_getvp,
 104  102          .advise         = (int (*)(struct seg *, caddr_t, size_t, uint_t))
 105  103                  segnf_nop,
 106  104          .dump           = segnf_dump,
 107  105          .pagelock       = segnf_pagelock,
 108  106          .setpagesize    = segnf_setpagesize,
 109  107          .getmemid       = segnf_getmemid,
 110      -        .getpolicy      = segnf_getpolicy,
 111  108  };
 112  109  
 113  110  /*
 114  111   * vnode and page for the page of zeros we use for the nf mappings.
 115  112   */
 116  113  static kmutex_t segnf_lock;
 117  114  static struct vnode nfvp;
 118  115  static struct page **nfpp;
 119  116  
 120  117  #define addr_to_vcolor(addr)                                            \
↓ open down ↓ 346 lines elided ↑ open up ↑
 467  464      uint_t szc)
 468  465  {
 469  466          return (ENOTSUP);
 470  467  }
 471  468  
 472  469  /*ARGSUSED*/
 473  470  static int
 474  471  segnf_getmemid(struct seg *seg, caddr_t addr, memid_t *memidp)
 475  472  {
 476  473          return (ENODEV);
 477      -}
 478      -
 479      -/*ARGSUSED*/
 480      -static lgrp_mem_policy_info_t *
 481      -segnf_getpolicy(struct seg *seg, caddr_t addr)
 482      -{
 483      -        return (NULL);
 484  474  }
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX