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>
Reviewed by: Eric Schrock <eric.schrock@delphix.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>
*** 176,192 ****
ddt_ops[type]->ddt_op_prefetch(ddt->ddt_os,
ddt->ddt_object[type][class], dde);
}
int
! ddt_object_update(ddt_t *ddt, enum ddt_type type, enum ddt_class class,
ddt_entry_t *dde, dmu_tx_t *tx)
{
! ASSERT(ddt_object_exists(ddt, type, class));
return (ddt_ops[type]->ddt_op_update(ddt->ddt_os,
! ddt->ddt_object[type][class], dde, tx));
}
static int
ddt_object_remove(ddt_t *ddt, enum ddt_type type, enum ddt_class class,
ddt_entry_t *dde, dmu_tx_t *tx)
--- 176,192 ----
ddt_ops[type]->ddt_op_prefetch(ddt->ddt_os,
ddt->ddt_object[type][class], dde);
}
int
! ddt_object_update(ddt_t *ddt, enum ddt_type type, enum ddt_class ddt_class,
ddt_entry_t *dde, dmu_tx_t *tx)
{
! ASSERT(ddt_object_exists(ddt, type, ddt_class));
return (ddt_ops[type]->ddt_op_update(ddt->ddt_os,
! ddt->ddt_object[type][ddt_class], dde, tx));
}
static int
ddt_object_remove(ddt_t *ddt, enum ddt_type type, enum ddt_class class,
ddt_entry_t *dde, dmu_tx_t *tx)
*** 196,247 ****
return (ddt_ops[type]->ddt_op_remove(ddt->ddt_os,
ddt->ddt_object[type][class], dde, tx));
}
int
! ddt_object_walk(ddt_t *ddt, enum ddt_type type, enum ddt_class class,
uint64_t *walk, ddt_entry_t *dde)
{
! ASSERT(ddt_object_exists(ddt, type, class));
return (ddt_ops[type]->ddt_op_walk(ddt->ddt_os,
! ddt->ddt_object[type][class], dde, walk));
}
uint64_t
! ddt_object_count(ddt_t *ddt, enum ddt_type type, enum ddt_class class)
{
! ASSERT(ddt_object_exists(ddt, type, class));
return (ddt_ops[type]->ddt_op_count(ddt->ddt_os,
! ddt->ddt_object[type][class]));
}
int
! ddt_object_info(ddt_t *ddt, enum ddt_type type, enum ddt_class class,
dmu_object_info_t *doi)
{
! if (!ddt_object_exists(ddt, type, class))
return (SET_ERROR(ENOENT));
! return (dmu_object_info(ddt->ddt_os, ddt->ddt_object[type][class],
doi));
}
boolean_t
! ddt_object_exists(ddt_t *ddt, enum ddt_type type, enum ddt_class class)
{
! return (!!ddt->ddt_object[type][class]);
}
void
! ddt_object_name(ddt_t *ddt, enum ddt_type type, enum ddt_class class,
char *name)
{
(void) sprintf(name, DMU_POOL_DDT,
zio_checksum_table[ddt->ddt_checksum].ci_name,
! ddt_ops[type]->ddt_op_name, ddt_class_name[class]);
}
void
ddt_bp_fill(const ddt_phys_t *ddp, blkptr_t *bp, uint64_t txg)
{
--- 196,247 ----
return (ddt_ops[type]->ddt_op_remove(ddt->ddt_os,
ddt->ddt_object[type][class], dde, tx));
}
int
! ddt_object_walk(ddt_t *ddt, enum ddt_type type, enum ddt_class ddt_class,
uint64_t *walk, ddt_entry_t *dde)
{
! ASSERT(ddt_object_exists(ddt, type, ddt_class));
return (ddt_ops[type]->ddt_op_walk(ddt->ddt_os,
! ddt->ddt_object[type][ddt_class], dde, walk));
}
uint64_t
! ddt_object_count(ddt_t *ddt, enum ddt_type type, enum ddt_class ddt_class)
{
! ASSERT(ddt_object_exists(ddt, type, ddt_class));
return (ddt_ops[type]->ddt_op_count(ddt->ddt_os,
! ddt->ddt_object[type][ddt_class]));
}
int
! ddt_object_info(ddt_t *ddt, enum ddt_type type, enum ddt_class ddt_class,
dmu_object_info_t *doi)
{
! if (!ddt_object_exists(ddt, type, ddt_class))
return (SET_ERROR(ENOENT));
! return (dmu_object_info(ddt->ddt_os, ddt->ddt_object[type][ddt_class],
doi));
}
boolean_t
! ddt_object_exists(ddt_t *ddt, enum ddt_type type, enum ddt_class ddt_class)
{
! return (!!ddt->ddt_object[type][ddt_class]);
}
void
! ddt_object_name(ddt_t *ddt, enum ddt_type type, enum ddt_class ddt_class,
char *name)
{
(void) sprintf(name, DMU_POOL_DDT,
zio_checksum_table[ddt->ddt_checksum].ci_name,
! ddt_ops[type]->ddt_op_name, ddt_class_name[ddt_class]);
}
void
ddt_bp_fill(const ddt_phys_t *ddp, blkptr_t *bp, uint64_t txg)
{