X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=module%2Fzpios%2Fpios.c;h=53cc77bd9762445f3029bc7ba7c5628e43c8503d;hb=bff32e0972bbc07ba5f2b9ce5b965813d8edcf78;hp=3edc16105fc02cb21e22d45fa822c69a256732bd;hpb=6283f55ea1b91e680386388c17d14b89e344fa8d;p=zfs.git diff --git a/module/zpios/pios.c b/module/zpios/pios.c index 3edc161..53cc77b 100644 --- a/module/zpios/pios.c +++ b/module/zpios/pios.c @@ -15,7 +15,7 @@ * Milind Dumbare * * This file is part of ZFS on Linux. - * For details, see . + * For details, see . * * ZPIOS is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the @@ -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 @@ -1104,11 +1104,10 @@ out_cmd: return rc; } -static int -zpios_ioctl(struct inode *inode, struct file *file, - unsigned int cmd, unsigned long arg) +static long +zpios_unlocked_ioctl(struct file *file, unsigned int cmd, unsigned long arg) { - unsigned int minor = iminor(inode); + unsigned int minor = iminor(file->f_dentry->d_inode); int rc = 0; /* Ignore tty ioctls */ @@ -1139,7 +1138,7 @@ zpios_ioctl(struct inode *inode, struct file *file, static long zpios_compat_ioctl(struct file *file, unsigned int cmd, unsigned long arg) { - return zpios_ioctl(file->f_dentry->d_inode, file, cmd, arg); + return zpios_unlocked_ioctl(file, cmd, arg); } #endif /* CONFIG_COMPAT */ @@ -1262,7 +1261,7 @@ static struct file_operations zpios_fops = { .owner = THIS_MODULE, .open = zpios_open, .release = zpios_release, - .ioctl = zpios_ioctl, + .unlocked_ioctl = zpios_unlocked_ioctl, #ifdef CONFIG_COMPAT .compat_ioctl = zpios_compat_ioctl, #endif