diff --git a/module/zfs/vdev_disk.c b/module/zfs/vdev_disk.c index 3f9b624d8..cbf0a4d4f 100644 --- a/module/zfs/vdev_disk.c +++ b/module/zfs/vdev_disk.c @@ -159,7 +159,7 @@ vdev_elevator_switch(vdev_t *v, char *elevator) char *envp[] = { NULL }; argv[2] = kmem_asprintf(SET_SCHEDULER_CMD, device, elevator); - error = call_usermodehelper(argv[0], argv, envp, 1); + error = call_usermodehelper(argv[0], argv, envp, UMH_WAIT_PROC); strfree(argv[2]); } #endif /* HAVE_ELEVATOR_CHANGE */ diff --git a/module/zfs/zfs_ctldir.c b/module/zfs/zfs_ctldir.c index a667340c8..b5c4510fe 100644 --- a/module/zfs/zfs_ctldir.c +++ b/module/zfs/zfs_ctldir.c @@ -696,7 +696,7 @@ __zfsctl_unmount_snapshot(zfs_snapentry_t *sep, int flags) argv[2] = kmem_asprintf(SET_UNMOUNT_CMD, flags & MNT_FORCE ? "-f " : "", sep->se_path); - error = call_usermodehelper(argv[0], argv, envp, 1); + error = call_usermodehelper(argv[0], argv, envp, UMH_WAIT_PROC); strfree(argv[2]); /* @@ -822,7 +822,7 @@ zfsctl_mount_snapshot(struct path *path, int flags) * to safely abort the automount. This should be very rare. */ argv[2] = kmem_asprintf(SET_MOUNT_CMD, full_name, full_path); - error = call_usermodehelper(argv[0], argv, envp, 1); + error = call_usermodehelper(argv[0], argv, envp, UMH_WAIT_PROC); strfree(argv[2]); if (error) { printk("ZFS: Unable to automount %s at %s: %d\n", diff --git a/module/zpios/pios.c b/module/zpios/pios.c index 6af200570..aa1f2bbd3 100644 --- a/module/zpios/pios.c +++ b/module/zpios/pios.c @@ -92,7 +92,7 @@ int zpios_upcall(char *path, char *phase, run_args_t *run_args, int rc) envp[2] = "PATH=/sbin:/usr/sbin:/bin:/usr/bin"; envp[3] = NULL; - return call_usermodehelper(path, argv, envp, 1); + return call_usermodehelper(path, argv, envp, UMH_WAIT_PROC); } static uint64_t