diff options
author | Fajar A. Nugraha <[email protected]> | 2011-02-22 17:58:44 +0700 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2011-02-25 09:43:19 -0800 |
commit | 4c0d8e50b99b4f3b4a9b7bc67ac7fc4e406f5755 (patch) | |
tree | 4d1baadba665aa9f15ac34d729f41440c1edf24c /include | |
parent | 61da501f9d93f305d21d5d61fa3ecd476bdbac93 (diff) |
Use udev to create /dev/zvol/[dataset_name] links
This commit allows zvols with names longer than 32 characters, which
fixes issue on https://github.com/behlendorf/zfs/issues/#issue/102.
Changes include:
- use /dev/zd* device names for zvol, where * is the device minor
(include/sys/fs/zfs.h, module/zfs/zvol.c).
- add BLKZNAME ioctl to get dataset name from userland
(include/sys/fs/zfs.h, module/zfs/zvol.c, cmd/zvol_id).
- add udev rule to create /dev/zvol/[dataset_name] and the legacy
/dev/[dataset_name] symlink. For partitions on zvol, it will create
/dev/zvol/[dataset_name]-part* (etc/udev/rules.d/60-zvol.rules,
cmd/zvol_id).
Signed-off-by: Brian Behlendorf <[email protected]>
Diffstat (limited to 'include')
-rw-r--r-- | include/sys/fs/zfs.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/sys/fs/zfs.h b/include/sys/fs/zfs.h index 25f256251..44aed1335 100644 --- a/include/sys/fs/zfs.h +++ b/include/sys/fs/zfs.h @@ -707,6 +707,7 @@ typedef struct ddt_histogram { #define ZVOL_MINOR_BITS 4 #define ZVOL_MINOR_MASK ((1U << ZVOL_MINOR_BITS) - 1) #define ZVOL_MINORS (1 << 4) +#define ZVOL_DEV_NAME "zd" #define ZVOL_PROP_NAME "name" #define ZVOL_DEFAULT_BLOCKSIZE 8192 @@ -782,6 +783,11 @@ typedef enum zfs_ioc { } zfs_ioc_t; /* + * zvol ioctl to get dataset name + */ +#define BLKZNAME _IO(0x12,125) + +/* * Internal SPA load state. Used by FMA diagnosis engine. */ typedef enum { |