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
Verify the return value for warn_unused_result functions
[zfs.git]
/
module
/
zfs
/
dnode.c
diff --git
a/module/zfs/dnode.c
b/module/zfs/dnode.c
index
850dd58
..
99ac625
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
@@
-169,9
+171,8
@@
void
dnode_init(void)
{
ASSERT(dnode_cache == NULL);
dnode_init(void)
{
ASSERT(dnode_cache == NULL);
- dnode_cache = kmem_cache_create("dnode_t",
- sizeof (dnode_t),
- 0, dnode_cons, dnode_dest, NULL, NULL, NULL, 0);
+ dnode_cache = kmem_cache_create("dnode_t", sizeof (dnode_t),
+ 0, dnode_cons, dnode_dest, NULL, NULL, NULL, KMC_KMEM);
kmem_cache_set_move(dnode_cache, dnode_move);
}
kmem_cache_set_move(dnode_cache, dnode_move);
}
@@
-204,7
+205,6
@@
dnode_verify(dnode_t *dn)
}
if (dn->dn_phys->dn_type != DMU_OT_NONE || dn->dn_allocated_txg != 0) {
int i;
}
if (dn->dn_phys->dn_type != DMU_OT_NONE || dn->dn_allocated_txg != 0) {
int i;
- ASSERT3U(dn->dn_indblkshift, >=, 0);
ASSERT3U(dn->dn_indblkshift, <=, SPA_MAXBLOCKSHIFT);
if (dn->dn_datablkshift) {
ASSERT3U(dn->dn_datablkshift, >=, SPA_MINBLOCKSHIFT);
ASSERT3U(dn->dn_indblkshift, <=, SPA_MAXBLOCKSHIFT);
if (dn->dn_datablkshift) {
ASSERT3U(dn->dn_datablkshift, >=, SPA_MINBLOCKSHIFT);
@@
-372,7
+372,7
@@
static dnode_t *
dnode_create(objset_t *os, dnode_phys_t *dnp, dmu_buf_impl_t *db,
uint64_t object, dnode_handle_t *dnh)
{
dnode_create(objset_t *os, dnode_phys_t *dnp, dmu_buf_impl_t *db,
uint64_t object, dnode_handle_t *dnh)
{
- dnode_t *dn = kmem_cache_alloc(dnode_cache, KM_
SLEEP
);
+ dnode_t *dn = kmem_cache_alloc(dnode_cache, KM_
PUSHPAGE
);
ASSERT(!POINTER_IS_VALID(dn->dn_objset));
dn->dn_moved = 0;
ASSERT(!POINTER_IS_VALID(dn->dn_objset));
dn->dn_moved = 0;
@@
-626,6
+626,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;
@@
-776,7
+777,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)
@@
-1073,15
+1073,16
@@
dnode_hold_impl(objset_t *os, uint64_t object, int flag,
int i;
dnode_children_t *winner;
children_dnodes = kmem_alloc(sizeof (dnode_children_t) +
int i;
dnode_children_t *winner;
children_dnodes = kmem_alloc(sizeof (dnode_children_t) +
- (epb - 1) * sizeof (dnode_handle_t), KM_SLEEP);
+ (epb - 1) * sizeof (dnode_handle_t),
+ KM_PUSHPAGE | KM_NODEBUG);
children_dnodes->dnc_count = epb;
dnh = &children_dnodes->dnc_children[0];
for (i = 0; i < epb; i++) {
zrl_init(&dnh[i].dnh_zrlock);
dnh[i].dnh_dnode = NULL;
}
children_dnodes->dnc_count = epb;
dnh = &children_dnodes->dnc_children[0];
for (i = 0; i < epb; i++) {
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;
@@
-1490,7
+1491,7
@@
dnode_clear_range(dnode_t *dn, uint64_t blkid, uint64_t nblks, dmu_tx_t *tx)
} else if (blkid > rp->fr_blkid && endblk < fr_endblk) {
/* clear a chunk out of this range */
free_range_t *new_rp =
} else if (blkid > rp->fr_blkid && endblk < fr_endblk) {
/* clear a chunk out of this range */
free_range_t *new_rp =
- kmem_alloc(sizeof (free_range_t), KM_
SLEEP
);
+ kmem_alloc(sizeof (free_range_t), KM_
PUSHPAGE
);
new_rp->fr_blkid = endblk;
new_rp->fr_nblks = fr_endblk - endblk;
new_rp->fr_blkid = endblk;
new_rp->fr_nblks = fr_endblk - endblk;
@@
-1626,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);
}
@@
-1668,7
+1669,7
@@
done:
avl_tree_t *tree = &dn->dn_ranges[tx->tx_txg&TXG_MASK];
/* Add new range to dn_ranges */
avl_tree_t *tree = &dn->dn_ranges[tx->tx_txg&TXG_MASK];
/* Add new range to dn_ranges */
- rp = kmem_alloc(sizeof (free_range_t), KM_
SLEEP
);
+ rp = kmem_alloc(sizeof (free_range_t), KM_
PUSHPAGE
);
rp->fr_blkid = blkid;
rp->fr_nblks = nblks;
found = avl_find(tree, rp, &where);
rp->fr_blkid = blkid;
rp->fr_nblks = nblks;
found = avl_find(tree, rp, &where);