git://git.camperquake.de
/
zfs.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix stack dbuf_hold_impl()
[zfs.git]
/
module
/
zfs
/
dnode.c
diff --git
a/module/zfs/dnode.c
b/module/zfs/dnode.c
index
535f540
..
1dd73cc
100644
(file)
--- a/
module/zfs/dnode.c
+++ b/
module/zfs/dnode.c
@@
-52,12
+52,14
@@
static kmem_cache_t *dnode_cache;
#define DNODE_STAT_ADD(stat) /* nothing */
#endif /* DNODE_STATS */
#define DNODE_STAT_ADD(stat) /* nothing */
#endif /* DNODE_STATS */
-
static dnode_phys_t dnode_phys_zero
;
+
ASSERTV(static dnode_phys_t dnode_phys_zero)
;
int zfs_default_bs = SPA_MINBLOCKSHIFT;
int zfs_default_ibs = DN_MAX_INDBLKSHIFT;
int zfs_default_bs = SPA_MINBLOCKSHIFT;
int zfs_default_ibs = DN_MAX_INDBLKSHIFT;
+#ifdef _KERNEL
static kmem_cbrc_t dnode_move(void *, void *, size_t, void *);
static kmem_cbrc_t dnode_move(void *, void *, size_t, void *);
+#endif /* _KERNEL */
/* ARGSUSED */
static int
/* ARGSUSED */
static int
@@
-625,6
+627,7
@@
dnode_reallocate(dnode_t *dn, dmu_object_type_t ot, int blocksize,
mutex_exit(&dn->dn_mtx);
}
mutex_exit(&dn->dn_mtx);
}
+#ifdef _KERNEL
#ifdef DNODE_STATS
static struct {
uint64_t dms_dnode_invalid;
#ifdef DNODE_STATS
static struct {
uint64_t dms_dnode_invalid;
@@
-775,7
+778,6
@@
dnode_move_impl(dnode_t *odn, dnode_t *ndn)
odn->dn_moved = (uint8_t)-1;
}
odn->dn_moved = (uint8_t)-1;
}
-#ifdef _KERNEL
/*ARGSUSED*/
static kmem_cbrc_t
dnode_move(void *buf, void *newbuf, size_t size, void *arg)
/*ARGSUSED*/
static kmem_cbrc_t
dnode_move(void *buf, void *newbuf, size_t size, void *arg)
@@
-1079,8
+1081,8
@@
dnode_hold_impl(objset_t *os, uint64_t object, int flag,
zrl_init(&dnh[i].dnh_zrlock);
dnh[i].dnh_dnode = NULL;
}
zrl_init(&dnh[i].dnh_zrlock);
dnh[i].dnh_dnode = NULL;
}
- if (winner = dmu_buf_set_user(&db->db, children_dnodes, NULL,
- dnode_buf_pageout)) {
+ if (
(
winner = dmu_buf_set_user(&db->db, children_dnodes, NULL,
+ dnode_buf_pageout))
)
{
kmem_free(children_dnodes, sizeof (dnode_children_t) +
(epb - 1) * sizeof (dnode_handle_t));
children_dnodes = winner;
kmem_free(children_dnodes, sizeof (dnode_children_t) +
(epb - 1) * sizeof (dnode_handle_t));
children_dnodes = winner;
@@
-1625,7
+1627,7
@@
dnode_free_range(dnode_t *dn, uint64_t off, uint64_t len, dmu_tx_t *tx)
int shift = epbs + dn->dn_datablkshift;
first = blkid >> epbs;
int shift = epbs + dn->dn_datablkshift;
first = blkid >> epbs;
- if (
db = dbuf_hold_level(dn, 1, first, FTAG
)) {
+ if (
(db = dbuf_hold_level(dn, 1, first, FTAG)
)) {
dbuf_will_dirty(db, tx);
dbuf_rele(db, FTAG);
}
dbuf_will_dirty(db, tx);
dbuf_rele(db, FTAG);
}