kern/167066: [zfs] ZVOLs not appearing in /dev/zvol
Andreas Nilsson
andrnils at gmail.com
Fri Nov 23 13:10:01 UTC 2012
The following reply was made to PR kern/167066; it has been noted by GNATS.
From: Andreas Nilsson <andrnils at gmail.com>
To: Andriy Gapon <avg at freebsd.org>
Cc: bug-followup at freebsd.org, rimbalza at gmail.com
Subject: Re: kern/167066: [zfs] ZVOLs not appearing in /dev/zvol
Date: Fri, 23 Nov 2012 14:04:16 +0100
--047d7b677c8e9376ea04cf2938a3
Content-Type: text/plain; charset=ISO-8859-1
On Fri, Nov 23, 2012 at 12:22 PM, Andriy Gapon <avg at freebsd.org> wrote:
>
> Please try the following patch:
>
> --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
> +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
> @@ -3824,6 +3824,11 @@ zfs_ioc_recv(zfs_cmd_t *zc)
> error = 1;
> }
> #endif
> +
> +#ifdef __FreeBSD__
> + if (error == 0)
> + zvol_create_minors(tofs);
> +#endif
> /*
> * On error, restore the original props.
> */
>
> --
> Andriy Gapon
>
Thanks :)
The patch did not apply on new checkout of 9-stable, but I added the code
via editor. Svn thinks this of my edit:
Index: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
===================================================================
--- sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c (revision
243443)
+++ sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c (working
copy)
@@ -3803,6 +3803,11 @@
error = 1;
}
#endif
+
+#ifdef __FreeBSD__
+ if (error == 0)
+ zvol_create_minors(tofs);
+#endif
/*
* On error, restore the original props.
*/
Before receive:
$ ls /dev/zvol/data/
usb usb at 2 usb at 2s1 usbs1
After receive:
$ ls /dev/zvol/data/
master master at 1p1 master at 1p3 masterp2 usb
usb at 2s1
master at 1 master at 1p2 masterp1 masterp3 usb at 2
usbs1
which is what I expected. Great work :)
Best regards
Andreas
--047d7b677c8e9376ea04cf2938a3
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
<br><div class=3D"gmail_extra"><div class=3D"gmail_quote">On Fri, Nov 23, 2=
012 at 12:22 PM, Andriy Gapon <span dir=3D"ltr"><<a href=3D"mailto:avg at f=
reebsd.org" target=3D"_blank">avg at freebsd.org</a>></span> wrote:<br><blo=
ckquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left=
-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;paddi=
ng-left:1ex">
<br>
Please try the following patch:<br>
<br>
--- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c<br>
+++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c<br>
@@ -3824,6 +3824,11 @@ zfs_ioc_recv(zfs_cmd_t *zc)<br>
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 error =3D 1;<br>
=A0 =A0 =A0 =A0 }<br>
=A0#endif<br>
+<br>
+#ifdef __FreeBSD__<br>
+ =A0 =A0 =A0 if (error =3D=3D 0)<br>
+ =A0 =A0 =A0 =A0 =A0 =A0 =A0 zvol_create_minors(tofs);<br>
+#endif<br>
=A0 =A0 =A0 =A0 /*<br>
=A0 =A0 =A0 =A0 =A0* On error, restore the original props.<br>
=A0 =A0 =A0 =A0 =A0*/<br>
<span><font color=3D"#888888"><br>
--<br>
Andriy Gapon<br>
</font></span></blockquote></div><br></div><div class=3D"gmail_extra">Thank=
s :)</div><div class=3D"gmail_extra"><br></div><div class=3D"gmail_extra">T=
he patch did not apply on new checkout of 9-stable, but I added the code vi=
a editor. Svn thinks this of my edit:</div>
<div class=3D"gmail_extra"><br></div><div class=3D"gmail_extra">Index: sys/=
cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c</div><div class=3D"g=
mail_extra">=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D</div>
<div class=3D"gmail_extra">--- sys/cddl/contrib/opensolaris/uts/common/fs/z=
fs/zfs_ioctl.c =A0(revision 243443)</div><div class=3D"gmail_extra">+++ sys=
/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c =A0(working copy)</=
div>
<div class=3D"gmail_extra">@@ -3803,6 +3803,11 @@</div><div class=3D"gmail_=
extra">=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 error =3D 1;</div><div class=3D"gmai=
l_extra">=A0 =A0 =A0 =A0 }</div><div class=3D"gmail_extra">=A0#endif</div><=
div class=3D"gmail_extra">+</div>
<div class=3D"gmail_extra">
+#ifdef __FreeBSD__</div><div class=3D"gmail_extra">+ =A0 =A0 =A0 if (error=
=3D=3D 0)</div><div class=3D"gmail_extra">+ =A0 =A0 =A0 =A0 =A0 =A0 =A0 zv=
ol_create_minors(tofs);</div><div class=3D"gmail_extra">+#endif</div><div c=
lass=3D"gmail_extra">=A0 =A0 =A0 =A0 /*</div>
<div class=3D"gmail_extra">=A0 =A0 =A0 =A0 =A0* On error, restore the origi=
nal props.</div><div class=3D"gmail_extra">=A0 =A0 =A0 =A0 =A0*/</div><div =
class=3D"gmail_extra"><br></div><div class=3D"gmail_extra">Before receive:<=
/div><div class=3D"gmail_extra">
<div class=3D"gmail_extra">$ ls /dev/zvol/data/</div><div class=3D"gmail_ex=
tra">usb =A0 =A0 usb at 2 =A0 usb at 2s1 usbs1</div><div><br></div><div>After rec=
eive:</div><div><div>$ ls /dev/zvol/data/</div><div>master =A0 =A0 =A0 =A0 =
=A0master at 1p1 =A0 =A0 =A0master at 1p3 =A0 =A0 =A0masterp2 =A0 =A0 =A0 =A0usb =
=A0 =A0 =A0 =A0 =A0 =A0 usb at 2s1</div>
<div>master at 1 =A0 =A0 =A0 =A0master at 1p2 =A0 =A0 =A0masterp1 =A0 =A0 =A0 =A0=
masterp3 =A0 =A0 =A0 =A0usb at 2 =A0 =A0 =A0 =A0 =A0 usbs1</div></div><div><br=
></div><div>which is what I expected. Great work :)</div><div><br></div><di=
v>Best regards</div><div>Andreas</div>
</div>
--047d7b677c8e9376ea04cf2938a3--
More information about the freebsd-fs
mailing list