diff options
author | Jorgen Lundman <[email protected]> | 2012-12-17 10:33:57 +0900 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2012-12-18 11:02:28 -0800 |
commit | 6c2856726fbae681649930d9620d9087080e58fc (patch) | |
tree | 8221f09d650f39d29569c82c8d50fb19bdea370f /include | |
parent | 5e6320cd1262de6eada39751807c31c059517d01 (diff) |
Fix using zvol as slog device
During the original ZoL port the vdev_uses_zvols() function was
disabled until it could be properly implemented. This prevented
a zpool from use a zvol for its slog device.
This patch implements that missing functionality by adding a
zvol_is_zvol() function to zvol.c. Given the full path to a
device it will lookup the device and verify its major number
against the registered zvol major number for the system. If
they match we know the device is a zvol.
Signed-off-by: Brian Behlendorf <[email protected]>
Closes #1131
Diffstat (limited to 'include')
-rw-r--r-- | include/sys/vdev.h | 1 | ||||
-rw-r--r-- | include/sys/zvol.h | 1 |
2 files changed, 1 insertions, 1 deletions
diff --git a/include/sys/vdev.h b/include/sys/vdev.h index 50dbe695c..005578398 100644 --- a/include/sys/vdev.h +++ b/include/sys/vdev.h @@ -48,7 +48,6 @@ extern int zfs_nocacheflush; extern int vdev_open(vdev_t *); extern void vdev_open_children(vdev_t *); -extern boolean_t vdev_uses_zvols(vdev_t *); extern int vdev_validate(vdev_t *, boolean_t); extern void vdev_close(vdev_t *); extern int vdev_create(vdev_t *, uint64_t txg, boolean_t isreplace); diff --git a/include/sys/zvol.h b/include/sys/zvol.h index 815b186e0..185d64523 100644 --- a/include/sys/zvol.h +++ b/include/sys/zvol.h @@ -36,6 +36,7 @@ extern int zvol_check_volsize(uint64_t volsize, uint64_t blocksize); extern int zvol_check_volblocksize(uint64_t volblocksize); extern int zvol_get_stats(objset_t *os, nvlist_t *nv); +extern boolean_t zvol_is_zvol(const char *); extern void zvol_create_cb(objset_t *os, void *arg, cred_t *cr, dmu_tx_t *tx); extern int zvol_create_minor(const char *); extern int zvol_create_minors(const char *); |