diff options
author | Brian Behlendorf <[email protected]> | 2011-02-16 09:40:29 -0800 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2011-02-16 09:50:06 -0800 |
commit | d5674448094cec6eb3563afb63cc1e096bc5b280 (patch) | |
tree | 3ffc16f3644ec8843841372c050d71afa2febb27 | |
parent | 2c395def2763ccc7a549d297f7f11bd304caaeae (diff) |
Create minors for all zvols
It was noticed that when you have zvols in multiple datasets
not all of the zvol devices are created at module load time.
Fajarnugraha did the leg work to identify that the root cause of
this bug is a non-zero return value from zvol_create_minors_cb().
Returning a non-zero value from the dmu_objset_find_spa() callback
function results in aborting processing the remaining children in
a dataset. Since we want to ensure that the callback in run on
all children regardless of error simply unconditionally return
zero from the zvol_create_minors_cb(). This callback function
is solely used for this purpose so surpressing the error is safe.
Closes #96
-rw-r--r-- | module/zfs/zvol.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/module/zfs/zvol.c b/module/zfs/zvol.c index 3d829a3d4..04c885f68 100644 --- a/module/zfs/zvol.c +++ b/module/zfs/zvol.c @@ -1230,7 +1230,8 @@ zvol_create_minors_cb(spa_t *spa, uint64_t dsobj, if (strchr(dsname, '/') == NULL) return 0; - return __zvol_create_minor(dsname); + (void) __zvol_create_minor(dsname); + return (0); } /* |