From owner-freebsd-fs@FreeBSD.ORG Fri Nov 23 13:10:01 2012 Return-Path: Delivered-To: freebsd-fs@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 521521D5 for ; Fri, 23 Nov 2012 13:10:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 361418FC0C for ; Fri, 23 Nov 2012 13:10:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id qANDA1DH064201 for ; Fri, 23 Nov 2012 13:10:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id qANDA1EE064197; Fri, 23 Nov 2012 13:10:01 GMT (envelope-from gnats) Date: Fri, 23 Nov 2012 13:10:01 GMT Message-Id: <201211231310.qANDA1EE064197@freefall.freebsd.org> To: freebsd-fs@FreeBSD.org Cc: From: Andreas Nilsson Subject: Re: kern/167066: [zfs] ZVOLs not appearing in /dev/zvol X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: Andreas Nilsson List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Nov 2012 13:10:01 -0000 The following reply was made to PR kern/167066; it has been noted by GNATS. From: Andreas Nilsson To: Andriy Gapon Cc: bug-followup@freebsd.org, rimbalza@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 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@2 usb@2s1 usbs1 After receive: $ ls /dev/zvol/data/ master master@1p1 master@1p3 masterp2 usb usb@2s1 master@1 master@1p2 masterp1 masterp3 usb@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
On Fri, Nov 23, 2= 012 at 12:22 PM, Andriy Gapon <avg@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)
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 error =3D 1;
=A0 =A0 =A0 =A0 }
=A0#endif
+
+#ifdef __FreeBSD__
+ =A0 =A0 =A0 if (error =3D=3D 0)
+ =A0 =A0 =A0 =A0 =A0 =A0 =A0 zvol_create_minors(tofs);
+#endif
=A0 =A0 =A0 =A0 /*
=A0 =A0 =A0 =A0 =A0* On error, restore the original props.
=A0 =A0 =A0 =A0 =A0*/

--
Andriy Gapon

Thank= s :)

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:

Index: sys/= cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
=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
--- sys/cddl/contrib/opensolaris/uts/common/fs/z= fs/zfs_ioctl.c =A0(revision 243443)
+++ sys= /cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c =A0(working copy)
@@ -3803,6 +3803,11 @@
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 error =3D 1;
=A0 =A0 =A0 =A0 }
=A0#endif
<= div class=3D"gmail_extra">+
+#ifdef __FreeBSD__
+ =A0 =A0 =A0 if (error= =3D=3D 0)
+ =A0 =A0 =A0 =A0 =A0 =A0 =A0 zv= ol_create_minors(tofs);
+#endif
=A0 =A0 =A0 =A0 /*
=A0 =A0 =A0 =A0 =A0* On error, restore the origi= nal props.
=A0 =A0 =A0 =A0 =A0*/

Before receive:<= /div>
$ ls /dev/zvol/data/
usb =A0 =A0 usb@2 =A0 usb@2s1 usbs1

After rec= eive:
$ ls /dev/zvol/data/
master =A0 =A0 =A0 =A0 = =A0master@1p1 =A0 =A0 =A0master@1p3 =A0 =A0 =A0masterp2 =A0 =A0 =A0 =A0usb = =A0 =A0 =A0 =A0 =A0 =A0 usb@2s1
master@1 =A0 =A0 =A0 =A0master@1p2 =A0 =A0 =A0masterp1 =A0 =A0 =A0 =A0= masterp3 =A0 =A0 =A0 =A0usb@2 =A0 =A0 =A0 =A0 =A0 usbs1
which is what I expected. Great work :)

Best regards
Andreas
--047d7b677c8e9376ea04cf2938a3--