From 264822db52b8d1ed1df129d88c0fc94555fb0878 Mon Sep 17 00:00:00 2001 From: mav Date: Tue, 1 Apr 2014 12:08:58 +0000 Subject: [PATCH] MFC r263118: Report ZVOL block size as GEOM stripesize. git-svn-id: svn://svn.freebsd.org/base/stable/9@263988 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f --- .../contrib/opensolaris/uts/common/fs/zfs/zvol.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c index ce623ce10..77f7fbdb2 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c @@ -931,12 +931,16 @@ zvol_open(struct g_provider *pp, int flag, int count) return (SET_ERROR(ENXIO)); } - if (zv->zv_total_opens == 0) + if (zv->zv_total_opens == 0) { err = zvol_first_open(zv); - if (err) { - if (locked) - mutex_exit(&spa_namespace_lock); - return (err); + if (err) { + if (locked) + mutex_exit(&spa_namespace_lock); + return (err); + } + pp->mediasize = zv->zv_volsize; + pp->stripeoffset = 0; + pp->stripesize = zv->zv_volblocksize; } if ((flag & FWRITE) && (zv->zv_flags & ZVOL_RDONLY)) { err = SET_ERROR(EROFS); -- 2.45.0