*/
 static int
 xfs_btree_check_ptr(
-       struct xfs_btree_cur    *cur,
-       union xfs_btree_ptr     *ptr,
-       int                     index,
-       int                     level)
+       struct xfs_btree_cur            *cur,
+       const union xfs_btree_ptr       *ptr,
+       int                             index,
+       int                             level)
 {
        if (cur->bc_flags & XFS_BTREE_LONG_PTRS) {
                if (xfs_btree_check_lptr(cur, be64_to_cpu((&ptr->l)[index]),
 
 STATIC int
 xfs_btree_ptr_to_daddr(
-       struct xfs_btree_cur    *cur,
-       union xfs_btree_ptr     *ptr,
-       xfs_daddr_t             *daddr)
+       struct xfs_btree_cur            *cur,
+       const union xfs_btree_ptr       *ptr,
+       xfs_daddr_t                     *daddr)
 {
        xfs_fsblock_t           fsbno;
        xfs_agblock_t           agbno;
 
 bool
 xfs_btree_ptr_is_null(
-       struct xfs_btree_cur    *cur,
-       union xfs_btree_ptr     *ptr)
+       struct xfs_btree_cur            *cur,
+       const union xfs_btree_ptr       *ptr)
 {
        if (cur->bc_flags & XFS_BTREE_LONG_PTRS)
                return ptr->l == cpu_to_be64(NULLFSBLOCK);
 
 void
 xfs_btree_set_sibling(
-       struct xfs_btree_cur    *cur,
-       struct xfs_btree_block  *block,
-       union xfs_btree_ptr     *ptr,
-       int                     lr)
+       struct xfs_btree_cur            *cur,
+       struct xfs_btree_block          *block,
+       const union xfs_btree_ptr       *ptr,
+       int                             lr)
 {
        ASSERT(lr == XFS_BB_LEFTSIB || lr == XFS_BB_RIGHTSIB);
 
 
 int
 xfs_btree_get_buf_block(
-       struct xfs_btree_cur    *cur,
-       union xfs_btree_ptr     *ptr,
-       struct xfs_btree_block  **block,
-       struct xfs_buf          **bpp)
+       struct xfs_btree_cur            *cur,
+       const union xfs_btree_ptr       *ptr,
+       struct xfs_btree_block          **block,
+       struct xfs_buf                  **bpp)
 {
        struct xfs_mount        *mp = cur->bc_mp;
        xfs_daddr_t             d;
  */
 STATIC int
 xfs_btree_read_buf_block(
-       struct xfs_btree_cur    *cur,
-       union xfs_btree_ptr     *ptr,
-       int                     flags,
-       struct xfs_btree_block  **block,
-       struct xfs_buf          **bpp)
+       struct xfs_btree_cur            *cur,
+       const union xfs_btree_ptr       *ptr,
+       int                             flags,
+       struct xfs_btree_block          **block,
+       struct xfs_buf                  **bpp)
 {
        struct xfs_mount        *mp = cur->bc_mp;
        xfs_daddr_t             d;
  */
 void
 xfs_btree_copy_keys(
-       struct xfs_btree_cur    *cur,
-       union xfs_btree_key     *dst_key,
-       union xfs_btree_key     *src_key,
-       int                     numkeys)
+       struct xfs_btree_cur            *cur,
+       union xfs_btree_key             *dst_key,
+       const union xfs_btree_key       *src_key,
+       int                             numkeys)
 {
        ASSERT(numkeys >= 0);
        memcpy(dst_key, src_key, numkeys * cur->bc_ops->key_len);
 
 int
 xfs_btree_lookup_get_block(
-       struct xfs_btree_cur    *cur,   /* btree cursor */
-       int                     level,  /* level in the btree */
-       union xfs_btree_ptr     *pp,    /* ptr to btree block */
-       struct xfs_btree_block  **blkp) /* return btree block */
+       struct xfs_btree_cur            *cur,   /* btree cursor */
+       int                             level,  /* level in the btree */
+       const union xfs_btree_ptr       *pp,    /* ptr to btree block */
+       struct xfs_btree_block          **blkp) /* return btree block */
 {
        struct xfs_buf          *bp;    /* buffer pointer for btree block */
        xfs_daddr_t             daddr;
 /* Is there a record covering a given range of keys? */
 int
 xfs_btree_has_record(
-       struct xfs_btree_cur    *cur,
-       union xfs_btree_irec    *low,
-       union xfs_btree_irec    *high,
-       bool                    *exists)
+       struct xfs_btree_cur            *cur,
+       const union xfs_btree_irec      *low,
+       const union xfs_btree_irec      *high,
+       bool                            *exists)
 {
-       int                     error;
+       int                             error;
 
        error = xfs_btree_query_range(cur, low, high,
                        &xfs_btree_has_record_helper, NULL);
 
 union xfs_btree_ptr *xfs_btree_ptr_addr(struct xfs_btree_cur *cur, int n,
                struct xfs_btree_block *block);
 int xfs_btree_lookup_get_block(struct xfs_btree_cur *cur, int level,
-               union xfs_btree_ptr *pp, struct xfs_btree_block **blkp);
+               const union xfs_btree_ptr *pp, struct xfs_btree_block **blkp);
 struct xfs_btree_block *xfs_btree_get_block(struct xfs_btree_cur *cur,
                int level, struct xfs_buf **bpp);
-bool xfs_btree_ptr_is_null(struct xfs_btree_cur *cur, union xfs_btree_ptr *ptr);
+bool xfs_btree_ptr_is_null(struct xfs_btree_cur *cur,
+               const union xfs_btree_ptr *ptr);
 int64_t xfs_btree_diff_two_ptrs(struct xfs_btree_cur *cur,
                                const union xfs_btree_ptr *a,
                                const union xfs_btree_ptr *b);
                struct xfs_btree_block *block, union xfs_btree_key *key);
 union xfs_btree_key *xfs_btree_high_key_from_key(struct xfs_btree_cur *cur,
                union xfs_btree_key *key);
-int xfs_btree_has_record(struct xfs_btree_cur *cur, union xfs_btree_irec *low,
-               union xfs_btree_irec *high, bool *exists);
+int xfs_btree_has_record(struct xfs_btree_cur *cur,
+               const union xfs_btree_irec *low,
+               const union xfs_btree_irec *high, bool *exists);
 bool xfs_btree_has_more_records(struct xfs_btree_cur *cur);
 struct xfs_ifork *xfs_btree_ifork_ptr(struct xfs_btree_cur *cur);
 
 
 void xfs_btree_set_ptr_null(struct xfs_btree_cur *cur,
                union xfs_btree_ptr *ptr);
-int xfs_btree_get_buf_block(struct xfs_btree_cur *cur, union xfs_btree_ptr *ptr,
-               struct xfs_btree_block **block, struct xfs_buf **bpp);
+int xfs_btree_get_buf_block(struct xfs_btree_cur *cur,
+               const union xfs_btree_ptr *ptr, struct xfs_btree_block **block,
+               struct xfs_buf **bpp);
 void xfs_btree_set_sibling(struct xfs_btree_cur *cur,
-               struct xfs_btree_block *block, union xfs_btree_ptr *ptr,
+               struct xfs_btree_block *block, const union xfs_btree_ptr *ptr,
                int lr);
 void xfs_btree_init_block_cur(struct xfs_btree_cur *cur,
                struct xfs_buf *bp, int level, int numrecs);
                union xfs_btree_ptr *dst_ptr,
                const union xfs_btree_ptr *src_ptr, int numptrs);
 void xfs_btree_copy_keys(struct xfs_btree_cur *cur,
-               union xfs_btree_key *dst_key, union xfs_btree_key *src_key,
-               int numkeys);
+               union xfs_btree_key *dst_key,
+               const union xfs_btree_key *src_key, int numkeys);
 
 #endif /* __XFS_BTREE_H__ */