Print this page
use C99 initializers in segment ops structures

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/vm/seg_kpm.c
          +++ new/usr/src/uts/common/vm/seg_kpm.c
↓ open down ↓ 103 lines elided ↑ open up ↑
 104  104                          size_t len, enum fault_type type, enum seg_rw rw);
 105  105  static void     segkpm_dump(struct seg *);
 106  106  static void     segkpm_badop(void);
 107  107  static int      segkpm_notsup(void);
 108  108  static int      segkpm_capable(struct seg *, segcapability_t);
 109  109  
 110  110  #define SEGKPM_BADOP(t) (t(*)())segkpm_badop
 111  111  #define SEGKPM_NOTSUP   (int(*)())segkpm_notsup
 112  112  
 113  113  static struct seg_ops segkpm_ops = {
 114      -        SEGKPM_BADOP(int),      /* dup */
 115      -        SEGKPM_BADOP(int),      /* unmap */
 116      -        SEGKPM_BADOP(void),     /* free */
 117      -        segkpm_fault,
 118      -        SEGKPM_BADOP(int),      /* faulta */
 119      -        SEGKPM_BADOP(int),      /* setprot */
 120      -        SEGKPM_BADOP(int),      /* checkprot */
 121      -        SEGKPM_BADOP(int),      /* kluster */
 122      -        SEGKPM_BADOP(int),      /* sync */
 123      -        SEGKPM_BADOP(size_t),   /* incore */
 124      -        SEGKPM_BADOP(int),      /* lockop */
 125      -        SEGKPM_BADOP(int),      /* getprot */
 126      -        SEGKPM_BADOP(u_offset_t), /* getoffset */
 127      -        SEGKPM_BADOP(int),      /* gettype */
 128      -        SEGKPM_BADOP(int),      /* getvp */
 129      -        SEGKPM_BADOP(int),      /* advise */
 130      -        segkpm_dump,            /* dump */
 131      -        SEGKPM_NOTSUP,          /* pagelock */
 132      -        SEGKPM_BADOP(int),      /* setpgsz */
 133      -        SEGKPM_BADOP(int),      /* getmemid */
 134      -        SEGKPM_BADOP(lgrp_mem_policy_info_t *), /* getpolicy */
 135      -        segkpm_capable,         /* capable */
 136      -        seg_inherit_notsup      /* inherit */
      114 +        .dup            = SEGKPM_BADOP(int),
      115 +        .unmap          = SEGKPM_BADOP(int),
      116 +        .free           = SEGKPM_BADOP(void),
      117 +        .fault          = segkpm_fault,
      118 +        .faulta         = SEGKPM_BADOP(int),
      119 +        .setprot        = SEGKPM_BADOP(int),
      120 +        .checkprot      = SEGKPM_BADOP(int),
      121 +        .kluster        = SEGKPM_BADOP(int),
      122 +        .sync           = SEGKPM_BADOP(int),
      123 +        .incore         = SEGKPM_BADOP(size_t),
      124 +        .lockop         = SEGKPM_BADOP(int),
      125 +        .getprot        = SEGKPM_BADOP(int),
      126 +        .getoffset      = SEGKPM_BADOP(u_offset_t),
      127 +        .gettype        = SEGKPM_BADOP(int),
      128 +        .getvp          = SEGKPM_BADOP(int),
      129 +        .advise         = SEGKPM_BADOP(int),
      130 +        .dump           = segkpm_dump,
      131 +        .pagelock       = SEGKPM_NOTSUP,
      132 +        .setpagesize    = SEGKPM_BADOP(int),
      133 +        .getmemid       = SEGKPM_BADOP(int),
      134 +        .getpolicy      = SEGKPM_BADOP(lgrp_mem_policy_info_t *),
      135 +        .capable        = segkpm_capable,
      136 +        .inherit        = seg_inherit_notsup,
 137  137  };
 138  138  
 139  139  /*
 140  140   * kpm_pgsz and kpm_pgshft are set by platform layer.
 141  141   */
 142  142  size_t          kpm_pgsz;       /* kpm page size */
 143  143  uint_t          kpm_pgshft;     /* kpm page shift */
 144  144  u_offset_t      kpm_pgoff;      /* kpm page offset mask */
 145  145  uint_t          kpmp2pshft;     /* kpm page to page shift */
 146  146  pgcnt_t         kpmpnpgs;       /* how many pages per kpm page */
↓ open down ↓ 194 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX