Print this page
3748 zfs headers should be C++ compatible
Submitted by:   Justin Gibbs <justing@spectralogic.com>
Submitted by:   Will Andrews <willa@spectralogic.com>
Reviewed by:    Matthew Ahrens <mahrens@delphix.com>

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/fs/zfs/sys/arc.h
          +++ new/usr/src/uts/common/fs/zfs/sys/arc.h
↓ open down ↓ 30 lines elided ↑ open up ↑
  31   31  #ifdef  __cplusplus
  32   32  extern "C" {
  33   33  #endif
  34   34  
  35   35  #include <sys/zio.h>
  36   36  #include <sys/dmu.h>
  37   37  #include <sys/spa.h>
  38   38  
  39   39  typedef struct arc_buf_hdr arc_buf_hdr_t;
  40   40  typedef struct arc_buf arc_buf_t;
  41      -typedef void arc_done_func_t(zio_t *zio, arc_buf_t *buf, void *private);
  42      -typedef int arc_evict_func_t(void *private);
       41 +typedef void arc_done_func_t(zio_t *zio, arc_buf_t *buf, void *cb_private);
       42 +typedef int arc_evict_func_t(void *cb_private);
  43   43  
  44   44  /* generic arc_done_func_t's which you can use */
  45   45  arc_done_func_t arc_bcopy_func;
  46   46  arc_done_func_t arc_getbuf_func;
  47   47  
  48   48  struct arc_buf {
  49   49          arc_buf_hdr_t           *b_hdr;
  50   50          arc_buf_t               *b_next;
  51   51          kmutex_t                b_evict_lock;
  52   52          void                    *b_data;
↓ open down ↓ 42 lines elided ↑ open up ↑
  95   95  int arc_released(arc_buf_t *buf);
  96   96  int arc_has_callback(arc_buf_t *buf);
  97   97  void arc_buf_freeze(arc_buf_t *buf);
  98   98  void arc_buf_thaw(arc_buf_t *buf);
  99   99  boolean_t arc_buf_eviction_needed(arc_buf_t *buf);
 100  100  #ifdef ZFS_DEBUG
 101  101  int arc_referenced(arc_buf_t *buf);
 102  102  #endif
 103  103  
 104  104  int arc_read(zio_t *pio, spa_t *spa, const blkptr_t *bp,
 105      -    arc_done_func_t *done, void *private, int priority, int flags,
      105 +    arc_done_func_t *done, void *cb_private, int priority, int flags,
 106  106      uint32_t *arc_flags, const zbookmark_t *zb);
 107  107  zio_t *arc_write(zio_t *pio, spa_t *spa, uint64_t txg,
 108  108      blkptr_t *bp, arc_buf_t *buf, boolean_t l2arc, const zio_prop_t *zp,
 109      -    arc_done_func_t *ready, arc_done_func_t *done, void *private,
      109 +    arc_done_func_t *ready, arc_done_func_t *done, void *cb_private,
 110  110      int priority, int zio_flags, const zbookmark_t *zb);
 111  111  
 112      -void arc_set_callback(arc_buf_t *buf, arc_evict_func_t *func, void *private);
      112 +void arc_set_callback(arc_buf_t *buf, arc_evict_func_t *func,
      113 +    void *cb_private);
 113  114  int arc_buf_evict(arc_buf_t *buf);
 114  115  
 115  116  void arc_flush(spa_t *spa);
 116  117  void arc_tempreserve_clear(uint64_t reserve);
 117  118  int arc_tempreserve_space(uint64_t reserve, uint64_t txg);
 118  119  
 119  120  void arc_init(void);
 120  121  void arc_fini(void);
 121  122  
 122  123  /*
↓ open down ↓ 21 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX