mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-11-17 10:01:01 +03:00
Remove dead code
Delete unused functions. Reviewed-by: Ryan Moeller <ryan@iXsystems.com> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Arvind Sankar <nivedita@alum.mit.edu> Closes #10470
This commit is contained in:
parent
65c7cc49bf
commit
c3fe42aabd
@ -101,13 +101,3 @@ check_sector_size_database(char *path, int *sector_size)
|
|||||||
{
|
{
|
||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
zpool_vdev_enable_file(struct stat64 *statbuf, boolean_t *wholedisk)
|
|
||||||
{
|
|
||||||
if (S_ISCHR(statbuf->st_mode)) {
|
|
||||||
statbuf->st_mode &= ~S_IFCHR;
|
|
||||||
statbuf->st_mode |= S_IFBLK;
|
|
||||||
*wholedisk = B_FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
@ -46,7 +46,6 @@ typedef struct trivial_acl {
|
|||||||
extern int acltrivial(const char *);
|
extern int acltrivial(const char *);
|
||||||
extern void adjust_ace_pair(ace_t *pair, mode_t mode);
|
extern void adjust_ace_pair(ace_t *pair, mode_t mode);
|
||||||
extern void adjust_ace_pair_common(void *, size_t, size_t, mode_t);
|
extern void adjust_ace_pair_common(void *, size_t, size_t, mode_t);
|
||||||
extern int ace_trivial(ace_t *acep, int aclcnt);
|
|
||||||
extern int ace_trivial_common(void *, int,
|
extern int ace_trivial_common(void *, int,
|
||||||
uint64_t (*walk)(void *, uint64_t, int aclcnt, uint16_t *, uint16_t *,
|
uint64_t (*walk)(void *, uint64_t, int aclcnt, uint16_t *, uint16_t *,
|
||||||
uint32_t *mask));
|
uint32_t *mask));
|
||||||
|
@ -341,7 +341,6 @@ extern void cv_broadcast(kcondvar_t *cv);
|
|||||||
*/
|
*/
|
||||||
extern kstat_t *kstat_create(const char *, int,
|
extern kstat_t *kstat_create(const char *, int,
|
||||||
const char *, const char *, uchar_t, ulong_t, uchar_t);
|
const char *, const char *, uchar_t, ulong_t, uchar_t);
|
||||||
extern void kstat_named_init(kstat_named_t *, const char *, uchar_t);
|
|
||||||
extern void kstat_install(kstat_t *);
|
extern void kstat_install(kstat_t *);
|
||||||
extern void kstat_delete(kstat_t *);
|
extern void kstat_delete(kstat_t *);
|
||||||
extern void kstat_waitq_enter(kstat_io_t *);
|
extern void kstat_waitq_enter(kstat_io_t *);
|
||||||
|
@ -767,11 +767,3 @@ sa_zfs_process_share(sa_handle_t handle, sa_group_t group, sa_share_t share,
|
|||||||
return (process_share(impl_handle, impl_share, mountpoint, NULL,
|
return (process_share(impl_handle, impl_share, mountpoint, NULL,
|
||||||
proto, shareopts, NULL, dataset, B_FALSE));
|
proto, shareopts, NULL, dataset, B_FALSE));
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
sa_update_sharetab_ts(sa_handle_t handle)
|
|
||||||
{
|
|
||||||
sa_handle_impl_t impl_handle = (sa_handle_impl_t)handle;
|
|
||||||
|
|
||||||
update_sharetab(impl_handle);
|
|
||||||
}
|
|
||||||
|
@ -48,7 +48,6 @@ pthread_mutex_t atomic_lock = PTHREAD_MUTEX_INITIALIZER;
|
|||||||
VERIFY3S(pthread_mutex_unlock(&atomic_lock), ==, 0); \
|
VERIFY3S(pthread_mutex_unlock(&atomic_lock), ==, 0); \
|
||||||
}
|
}
|
||||||
|
|
||||||
ATOMIC_INC(long, unsigned long)
|
|
||||||
ATOMIC_INC(8, uint8_t)
|
ATOMIC_INC(8, uint8_t)
|
||||||
ATOMIC_INC(uchar, uchar_t)
|
ATOMIC_INC(uchar, uchar_t)
|
||||||
ATOMIC_INC(16, uint16_t)
|
ATOMIC_INC(16, uint16_t)
|
||||||
@ -67,7 +66,6 @@ ATOMIC_INC(64, uint64_t)
|
|||||||
VERIFY3S(pthread_mutex_unlock(&atomic_lock), ==, 0); \
|
VERIFY3S(pthread_mutex_unlock(&atomic_lock), ==, 0); \
|
||||||
}
|
}
|
||||||
|
|
||||||
ATOMIC_DEC(long, unsigned long)
|
|
||||||
ATOMIC_DEC(8, uint8_t)
|
ATOMIC_DEC(8, uint8_t)
|
||||||
ATOMIC_DEC(uchar, uchar_t)
|
ATOMIC_DEC(uchar, uchar_t)
|
||||||
ATOMIC_DEC(16, uint16_t)
|
ATOMIC_DEC(16, uint16_t)
|
||||||
@ -180,7 +178,6 @@ ATOMIC_AND(64, uint64_t)
|
|||||||
return (rc); \
|
return (rc); \
|
||||||
}
|
}
|
||||||
|
|
||||||
ATOMIC_INC_NV(long, unsigned long)
|
|
||||||
ATOMIC_INC_NV(8, uint8_t)
|
ATOMIC_INC_NV(8, uint8_t)
|
||||||
ATOMIC_INC_NV(uchar, uchar_t)
|
ATOMIC_INC_NV(uchar, uchar_t)
|
||||||
ATOMIC_INC_NV(16, uint16_t)
|
ATOMIC_INC_NV(16, uint16_t)
|
||||||
@ -201,7 +198,6 @@ ATOMIC_INC_NV(64, uint64_t)
|
|||||||
return (rc); \
|
return (rc); \
|
||||||
}
|
}
|
||||||
|
|
||||||
ATOMIC_DEC_NV(long, unsigned long)
|
|
||||||
ATOMIC_DEC_NV(8, uint8_t)
|
ATOMIC_DEC_NV(8, uint8_t)
|
||||||
ATOMIC_DEC_NV(uchar, uchar_t)
|
ATOMIC_DEC_NV(uchar, uchar_t)
|
||||||
ATOMIC_DEC_NV(16, uint16_t)
|
ATOMIC_DEC_NV(16, uint16_t)
|
||||||
@ -286,7 +282,6 @@ atomic_sub_ptr_nv(volatile void *target, ssize_t bits)
|
|||||||
return (rc); \
|
return (rc); \
|
||||||
}
|
}
|
||||||
|
|
||||||
ATOMIC_OR_NV(long, unsigned long)
|
|
||||||
ATOMIC_OR_NV(8, uint8_t)
|
ATOMIC_OR_NV(8, uint8_t)
|
||||||
ATOMIC_OR_NV(uchar, uchar_t)
|
ATOMIC_OR_NV(uchar, uchar_t)
|
||||||
ATOMIC_OR_NV(16, uint16_t)
|
ATOMIC_OR_NV(16, uint16_t)
|
||||||
@ -307,7 +302,6 @@ ATOMIC_OR_NV(64, uint64_t)
|
|||||||
return (rc); \
|
return (rc); \
|
||||||
}
|
}
|
||||||
|
|
||||||
ATOMIC_AND_NV(long, unsigned long)
|
|
||||||
ATOMIC_AND_NV(8, uint8_t)
|
ATOMIC_AND_NV(8, uint8_t)
|
||||||
ATOMIC_AND_NV(uchar, uchar_t)
|
ATOMIC_AND_NV(uchar, uchar_t)
|
||||||
ATOMIC_AND_NV(16, uint16_t)
|
ATOMIC_AND_NV(16, uint16_t)
|
||||||
@ -454,47 +448,3 @@ membar_consumer(void)
|
|||||||
{
|
{
|
||||||
/* XXX - Implement me */
|
/* XXX - Implement me */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Legacy kernel interfaces; they will go away (eventually). */
|
|
||||||
|
|
||||||
uint8_t
|
|
||||||
cas8(uint8_t *target, uint8_t arg1, uint8_t arg2)
|
|
||||||
{
|
|
||||||
return (atomic_cas_8(target, arg1, arg2));
|
|
||||||
}
|
|
||||||
|
|
||||||
uint32_t
|
|
||||||
cas32(uint32_t *target, uint32_t arg1, uint32_t arg2)
|
|
||||||
{
|
|
||||||
return (atomic_cas_32(target, arg1, arg2));
|
|
||||||
}
|
|
||||||
|
|
||||||
uint64_t
|
|
||||||
cas64(uint64_t *target, uint64_t arg1, uint64_t arg2)
|
|
||||||
{
|
|
||||||
return (atomic_cas_64(target, arg1, arg2));
|
|
||||||
}
|
|
||||||
|
|
||||||
ulong_t
|
|
||||||
caslong(ulong_t *target, ulong_t arg1, ulong_t arg2)
|
|
||||||
{
|
|
||||||
return (atomic_cas_ulong(target, arg1, arg2));
|
|
||||||
}
|
|
||||||
|
|
||||||
void *
|
|
||||||
casptr(void *target, void *arg1, void *arg2)
|
|
||||||
{
|
|
||||||
return (atomic_cas_ptr(target, arg1, arg2));
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
atomic_and_long(ulong_t *target, ulong_t bits)
|
|
||||||
{
|
|
||||||
return (atomic_and_ulong(target, bits));
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
atomic_or_long(ulong_t *target, ulong_t bits)
|
|
||||||
{
|
|
||||||
return (atomic_or_ulong(target, bits));
|
|
||||||
}
|
|
||||||
|
@ -597,56 +597,3 @@ tpool_member(tpool_t *tpool)
|
|||||||
pthread_mutex_unlock(&tpool->tp_mutex);
|
pthread_mutex_unlock(&tpool->tp_mutex);
|
||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
postfork1_child_tpool(void)
|
|
||||||
{
|
|
||||||
pthread_t my_tid = pthread_self();
|
|
||||||
tpool_t *tpool;
|
|
||||||
tpool_job_t *job;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* All of the thread pool workers are gone, except possibly
|
|
||||||
* for the current thread, if it is a thread pool worker thread.
|
|
||||||
* Retain the thread pools, but make them all empty. Whatever
|
|
||||||
* jobs were queued or running belong to the parent process.
|
|
||||||
*/
|
|
||||||
top:
|
|
||||||
if ((tpool = thread_pools) == NULL)
|
|
||||||
return;
|
|
||||||
|
|
||||||
do {
|
|
||||||
tpool_active_t *activep;
|
|
||||||
|
|
||||||
(void) pthread_mutex_init(&tpool->tp_mutex, NULL);
|
|
||||||
(void) pthread_cond_init(&tpool->tp_busycv, NULL);
|
|
||||||
(void) pthread_cond_init(&tpool->tp_workcv, NULL);
|
|
||||||
(void) pthread_cond_init(&tpool->tp_waitcv, NULL);
|
|
||||||
for (job = tpool->tp_head; job; job = tpool->tp_head) {
|
|
||||||
tpool->tp_head = job->tpj_next;
|
|
||||||
free(job);
|
|
||||||
}
|
|
||||||
tpool->tp_tail = NULL;
|
|
||||||
tpool->tp_njobs = 0;
|
|
||||||
for (activep = tpool->tp_active; activep;
|
|
||||||
activep = activep->tpa_next) {
|
|
||||||
if (activep->tpa_tid == my_tid) {
|
|
||||||
activep->tpa_next = NULL;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
tpool->tp_idle = 0;
|
|
||||||
tpool->tp_current = 0;
|
|
||||||
if ((tpool->tp_active = activep) != NULL)
|
|
||||||
tpool->tp_current = 1;
|
|
||||||
tpool->tp_flags &= ~TP_WAIT;
|
|
||||||
if (tpool->tp_flags & (TP_DESTROY | TP_ABANDON)) {
|
|
||||||
tpool->tp_flags &= ~TP_DESTROY;
|
|
||||||
tpool->tp_flags |= TP_ABANDON;
|
|
||||||
if (tpool->tp_current == 0) {
|
|
||||||
delete_pool(tpool);
|
|
||||||
goto top; /* start over */
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} while ((tpool = tpool->tp_forw) != thread_pools);
|
|
||||||
}
|
|
||||||
|
@ -33,9 +33,6 @@
|
|||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
|
|
||||||
int zfs_ioctl_version = ZFS_IOCVER_UNDEF;
|
|
||||||
// static int zfs_spa_version = -1;
|
|
||||||
|
|
||||||
void
|
void
|
||||||
libzfs_set_pipe_max(int infd)
|
libzfs_set_pipe_max(int infd)
|
||||||
{
|
{
|
||||||
@ -173,38 +170,6 @@ execvpe(const char *name, char * const argv[], char * const envp[])
|
|||||||
return (execvPe(name, path, argv, envp));
|
return (execvPe(name, path, argv, envp));
|
||||||
}
|
}
|
||||||
|
|
||||||
#if 0
|
|
||||||
/*
|
|
||||||
* Get the SPA version
|
|
||||||
*/
|
|
||||||
static int
|
|
||||||
get_zfs_spa_version(void)
|
|
||||||
{
|
|
||||||
size_t ver_size;
|
|
||||||
int ver = 0;
|
|
||||||
|
|
||||||
ver_size = sizeof (ver);
|
|
||||||
sysctlbyname("vfs.zfs.version.spa", &ver, &ver_size, NULL, 0);
|
|
||||||
|
|
||||||
return (ver);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Get zfs_ioctl_version
|
|
||||||
*/
|
|
||||||
int
|
|
||||||
get_zfs_ioctl_version(void)
|
|
||||||
{
|
|
||||||
size_t ver_size;
|
|
||||||
int ver = ZFS_IOCVER_NONE;
|
|
||||||
|
|
||||||
ver_size = sizeof (ver);
|
|
||||||
sysctlbyname("vfs.zfs.version.ioctl", &ver, &ver_size, NULL, 0);
|
|
||||||
|
|
||||||
return (ver);
|
|
||||||
}
|
|
||||||
|
|
||||||
const char *
|
const char *
|
||||||
libzfs_error_init(int error)
|
libzfs_error_init(int error)
|
||||||
{
|
{
|
||||||
|
@ -135,14 +135,3 @@ zfs_mount_delegation_check(void)
|
|||||||
{
|
{
|
||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* Check if we are doing an overlay mount.
|
|
||||||
* Returns B_TRUE if the mount would overlay, otherwise B_FALSE.
|
|
||||||
*/
|
|
||||||
boolean_t
|
|
||||||
zfs_mount_overlay_check(const char *mountpoint)
|
|
||||||
{
|
|
||||||
/* FreeBSD always allows overlay mounts. */
|
|
||||||
return (B_FALSE);
|
|
||||||
}
|
|
||||||
|
@ -157,9 +157,9 @@ extern int odd_parity(ulong_t);
|
|||||||
* to 0 otherwise.
|
* to 0 otherwise.
|
||||||
*/
|
*/
|
||||||
#define BT_ATOMIC_SET(bitmap, bitindex) \
|
#define BT_ATOMIC_SET(bitmap, bitindex) \
|
||||||
{ atomic_or_long(&(BT_WIM(bitmap, bitindex)), BT_BIW(bitindex)); }
|
{ atomic_or_ulong(&(BT_WIM(bitmap, bitindex)), BT_BIW(bitindex)); }
|
||||||
#define BT_ATOMIC_CLEAR(bitmap, bitindex) \
|
#define BT_ATOMIC_CLEAR(bitmap, bitindex) \
|
||||||
{ atomic_and_long(&(BT_WIM(bitmap, bitindex)), ~BT_BIW(bitindex)); }
|
{ atomic_and_ulong(&(BT_WIM(bitmap, bitindex)), ~BT_BIW(bitindex)); }
|
||||||
|
|
||||||
#define BT_ATOMIC_SET_EXCL(bitmap, bitindex, result) \
|
#define BT_ATOMIC_SET_EXCL(bitmap, bitindex, result) \
|
||||||
{ result = atomic_set_long_excl(&(BT_WIM(bitmap, bitindex)), \
|
{ result = atomic_set_long_excl(&(BT_WIM(bitmap, bitindex)), \
|
||||||
|
@ -1707,25 +1707,3 @@ ace_trivial_common(void *acep, int aclcnt,
|
|||||||
}
|
}
|
||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint64_t
|
|
||||||
ace_walk(void *datap, uint64_t cookie, int aclcnt, uint16_t *flags,
|
|
||||||
uint16_t *type, uint32_t *mask)
|
|
||||||
{
|
|
||||||
ace_t *acep = datap;
|
|
||||||
|
|
||||||
if (cookie >= aclcnt)
|
|
||||||
return (0);
|
|
||||||
|
|
||||||
*flags = acep[cookie].a_flags;
|
|
||||||
*type = acep[cookie].a_type;
|
|
||||||
*mask = acep[cookie++].a_access_mask;
|
|
||||||
|
|
||||||
return (cookie);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
ace_trivial(ace_t *acep, int aclcnt)
|
|
||||||
{
|
|
||||||
return (ace_trivial_common(acep, aclcnt, ace_walk));
|
|
||||||
}
|
|
||||||
|
@ -287,22 +287,6 @@ kstat_delete(kstat_t *ksp)
|
|||||||
free(ksp, M_KSTAT);
|
free(ksp, M_KSTAT);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
kstat_set_string(char *dst, const char *src)
|
|
||||||
{
|
|
||||||
|
|
||||||
bzero(dst, KSTAT_STRLEN);
|
|
||||||
(void) strncpy(dst, src, KSTAT_STRLEN - 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
kstat_named_init(kstat_named_t *knp, const char *name, uchar_t data_type)
|
|
||||||
{
|
|
||||||
|
|
||||||
kstat_set_string(knp->name, name);
|
|
||||||
knp->data_type = data_type;
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
kstat_waitq_enter(kstat_io_t *kiop)
|
kstat_waitq_enter(kstat_io_t *kiop)
|
||||||
{
|
{
|
||||||
|
@ -4562,25 +4562,6 @@ zfs_inactive(struct inode *ip)
|
|||||||
rw_exit(&zfsvfs->z_teardown_inactive_lock);
|
rw_exit(&zfsvfs->z_teardown_inactive_lock);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* Bounds-check the seek operation.
|
|
||||||
*
|
|
||||||
* IN: ip - inode seeking within
|
|
||||||
* ooff - old file offset
|
|
||||||
* noffp - pointer to new file offset
|
|
||||||
*
|
|
||||||
* RETURN: 0 if success
|
|
||||||
* EINVAL if new offset invalid
|
|
||||||
*/
|
|
||||||
/* ARGSUSED */
|
|
||||||
int
|
|
||||||
zfs_seek(struct inode *ip, offset_t ooff, offset_t *noffp)
|
|
||||||
{
|
|
||||||
if (S_ISDIR(ip->i_mode))
|
|
||||||
return (0);
|
|
||||||
return ((*noffp < 0 || *noffp > MAXOFFSET_T) ? EINVAL : 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Fill pages with data from the disk.
|
* Fill pages with data from the disk.
|
||||||
*/
|
*/
|
||||||
|
@ -713,12 +713,6 @@ zvol_find_by_dev(dev_t dev)
|
|||||||
return (NULL);
|
return (NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
zvol_validate_dev(zvol_state_t *zv)
|
|
||||||
{
|
|
||||||
ASSERT3U(MINOR(zv->zv_zso->zvo_dev) & ZVOL_MINOR_MASK, ==, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
static struct kobject *
|
static struct kobject *
|
||||||
zvol_probe(dev_t dev, int *part, void *arg)
|
zvol_probe(dev_t dev, int *part, void *arg)
|
||||||
{
|
{
|
||||||
|
@ -594,12 +594,6 @@ ddt_decompress(uchar_t *src, void *dst, size_t s_len, size_t d_len)
|
|||||||
byteswap_uint64_array(dst, d_len);
|
byteswap_uint64_array(dst, d_len);
|
||||||
}
|
}
|
||||||
|
|
||||||
ddt_t *
|
|
||||||
ddt_select_by_checksum(spa_t *spa, enum zio_checksum c)
|
|
||||||
{
|
|
||||||
return (spa->spa_ddt[c]);
|
|
||||||
}
|
|
||||||
|
|
||||||
ddt_t *
|
ddt_t *
|
||||||
ddt_select(spa_t *spa, const blkptr_t *bp)
|
ddt_select(spa_t *spa, const blkptr_t *bp)
|
||||||
{
|
{
|
||||||
|
@ -156,15 +156,6 @@ zrl_exit(zrlock_t *zrl)
|
|||||||
mutex_exit(&zrl->zr_mtx);
|
mutex_exit(&zrl->zr_mtx);
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
|
||||||
zrl_refcount(zrlock_t *zrl)
|
|
||||||
{
|
|
||||||
ASSERT3S(zrl->zr_refcount, >, ZRL_DESTROYED);
|
|
||||||
|
|
||||||
int n = (int)zrl->zr_refcount;
|
|
||||||
return (n <= 0 ? 0 : n);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
int
|
||||||
zrl_is_zero(zrlock_t *zrl)
|
zrl_is_zero(zrlock_t *zrl)
|
||||||
{
|
{
|
||||||
|
@ -172,20 +172,6 @@ const uint8_t sha512_256_test_digests[][32] = {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
|
||||||
* Local reimplementation of cmn_err, since it's used in sha2.c.
|
|
||||||
*/
|
|
||||||
/*ARGSUSED*/
|
|
||||||
void
|
|
||||||
cmn_err(int level, char *format, ...)
|
|
||||||
{
|
|
||||||
va_list ap;
|
|
||||||
va_start(ap, format);
|
|
||||||
/* LINTED: E_SEC_PRINTF_VAR_FMT */
|
|
||||||
(void) vfprintf(stderr, format, ap);
|
|
||||||
va_end(ap);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
int
|
||||||
main(int argc, char *argv[])
|
main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user