Files
mirror_zfs/include/sys
Thomas Bertschinger f9a9aea126 Add mutex_enter_interruptible() for interruptible sleeping IOCTLs
Many long-running ZFS ioctls lock the spa_namespace_lock, forcing
concurrent ioctls to sleep for the mutex. Previously, the only
option is to call mutex_enter() which sleeps uninterruptibly. This
is a usability issue for sysadmins, for example, if the admin runs
`zpool status` while a slow `zpool import` is ongoing, the admin's
shell will be locked in uninterruptible sleep for a long time.

This patch resolves this admin usability issue by introducing
mutex_enter_interruptible() which sleeps interruptibly while waiting
to acquire a lock. It is implemented for both Linux and FreeBSD.

The ZFS_IOC_POOL_CONFIGS ioctl, used by `zpool status`, is changed to
use this new macro so that the command can be interrupted if it is
issued during a concurrent `zpool import` (or other long-running
operation).

Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Thomas Bertschinger <bertschinger@lanl.gov>
Closes #15360
2023-11-06 16:47:41 -08:00
..
2022-05-10 10:18:51 -07:00
2022-05-25 09:18:49 -07:00
2021-06-07 09:02:47 -07:00
2023-06-15 10:49:03 -07:00
2023-01-10 13:39:22 -08:00
2023-05-11 16:06:36 -07:00
2023-03-10 11:59:53 -08:00
2023-03-14 15:25:50 -07:00
2023-05-09 09:03:10 -07:00
2023-07-21 16:35:12 -07:00
2017-10-11 16:54:48 -04:00
2023-08-25 11:58:44 -07:00
2021-06-10 10:42:31 -06:00
2019-06-19 09:48:12 -07:00
2022-07-11 14:16:13 -07:00
2023-08-25 11:58:44 -07:00
2022-09-06 09:43:21 -07:00
2022-10-20 11:57:15 -07:00
2018-02-08 15:28:18 -08:00
2023-05-25 13:51:53 -07:00
2022-06-29 14:08:54 -07:00
2020-07-03 11:05:50 -07:00
2023-08-25 11:58:44 -07:00
2023-01-05 09:31:55 -08:00