summaryrefslogtreecommitdiffstats
path: root/cddl/contrib/opensolaris/cmd/zinject
diff options
context:
space:
mode:
authormm <mm@FreeBSD.org>2012-08-28 12:25:37 +0000
committermm <mm@FreeBSD.org>2012-08-28 12:25:37 +0000
commitd9fa2f486ee98b2557e1d5ad5f1af418c663cfc8 (patch)
treede7860b2979788424d3d99e83f3eac4757202a08 /cddl/contrib/opensolaris/cmd/zinject
parentdc45fbdfb7bda54267530493482e960f5a622636 (diff)
downloadFreeBSD-src-d9fa2f486ee98b2557e1d5ad5f1af418c663cfc8.zip
FreeBSD-src-d9fa2f486ee98b2557e1d5ad5f1af418c663cfc8.tar.gz
Merge recent vendor changes:
3100 zvol rename fails with EBUSY when dirty 3104 eliminate empty bpobjs 3120 zinject hangs in zfsdev_ioctl() due to uninitialized zc References: https://www.illumos.org/issues/3100 https://www.illumos.org/issues/3104 https://www.illumos.org/issues/3120 Obtained from: illumos (vendor/illumos, vendor/illumos-sys) MFC after: 2 weeks
Diffstat (limited to 'cddl/contrib/opensolaris/cmd/zinject')
-rw-r--r--cddl/contrib/opensolaris/cmd/zinject/zinject.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/cddl/contrib/opensolaris/cmd/zinject/zinject.c b/cddl/contrib/opensolaris/cmd/zinject/zinject.c
index 51d2fc9..d17ed53 100644
--- a/cddl/contrib/opensolaris/cmd/zinject/zinject.c
+++ b/cddl/contrib/opensolaris/cmd/zinject/zinject.c
@@ -297,11 +297,9 @@ static int
iter_handlers(int (*func)(int, const char *, zinject_record_t *, void *),
void *data)
{
- zfs_cmd_t zc;
+ zfs_cmd_t zc = { 0 };
int ret;
- zc.zc_guid = 0;
-
while (ioctl(zfs_fd, ZFS_IOC_INJECT_LIST_NEXT, &zc) == 0)
if ((ret = func((int)zc.zc_guid, zc.zc_name,
&zc.zc_inject_record, data)) != 0)
@@ -424,7 +422,7 @@ static int
cancel_one_handler(int id, const char *pool, zinject_record_t *record,
void *data)
{
- zfs_cmd_t zc;
+ zfs_cmd_t zc = { 0 };
zc.zc_guid = (uint64_t)id;
@@ -457,7 +455,7 @@ cancel_all_handlers(void)
static int
cancel_handler(int id)
{
- zfs_cmd_t zc;
+ zfs_cmd_t zc = { 0 };
zc.zc_guid = (uint64_t)id;
@@ -479,7 +477,7 @@ static int
register_handler(const char *pool, int flags, zinject_record_t *record,
int quiet)
{
- zfs_cmd_t zc;
+ zfs_cmd_t zc = { 0 };
(void) strcpy(zc.zc_name, pool);
zc.zc_inject_record = *record;
@@ -536,7 +534,7 @@ register_handler(const char *pool, int flags, zinject_record_t *record,
int
perform_action(const char *pool, zinject_record_t *record, int cmd)
{
- zfs_cmd_t zc;
+ zfs_cmd_t zc = { 0 };
ASSERT(cmd == VDEV_STATE_DEGRADED || cmd == VDEV_STATE_FAULTED);
(void) strlcpy(zc.zc_name, pool, sizeof (zc.zc_name));
OpenPOWER on IntegriCloud