Re: ZFS patches.

From: Norikatsu Shigemura <nork_at_FreeBSD.org>
Date: Mon, 28 Jul 2008 03:11:15 +0900
On Sun, 27 Jul 2008 14:54:13 +0200
Pawel Jakub Dawidek <pjd_at_freebsd.org> wrote:
> Please test, test, test. If I get enough positive feedback, I may be
> able to squeeze it into 7.1-RELEASE, but this might be hard.

	I read your patch.  So I don't test, yet.  But I noticed a minor
	issue of your patch.

* NO NEED FOLLOWING PATCH *
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
--- sys/cddl/contrib/opensolaris/common/atomic/ia64/atomic.S.orig	2008-03-29 07:16:08.000000000 +0900
+++ sys/cddl/contrib/opensolaris/common/atomic/ia64/atomic.S	2008-07-28 01:54:52.314417185 +0900
_at__at_ -23,7 +23,7 _at__at_
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/cddl/contrib/opensolaris/common/atomic/ia64/atomic.S,v 1.3 2008/03/28 22:16:08 jb Exp $
+ * $FreeBSD: src/sys/contrib/opensolaris/common/atomic/ia64/atomic.S,v 1.2 2007/06/08 16:20:03 marcel Exp $
  */
 
 #include <machine/asm.h>
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -


	I'm using following patch:
	1. To support zpool for lsdev.
	2. To support case of "slice has only zpool and no bsd partition".
	I don't test on new zfs, yet.  I'll try to test it, too.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
--- sys/boot/i386/libi386/biosdisk.c~	2008-02-29 02:49:23.000000000 +0900
+++ sys/boot/i386/libi386/biosdisk.c	2008-03-18 09:15:34.209096127 +0900
_at__at_ -469,6 +469,7 _at__at_
 	 * unused.
 	 */
 	if ((lp->d_partitions[i].p_fstype == FS_BSDFFS) ||
+            (lp->d_partitions[i].p_fstype == FS_ZFS) ||
             (lp->d_partitions[i].p_fstype == FS_SWAP) ||
             (lp->d_partitions[i].p_fstype == FS_VINUM) ||
 	    ((lp->d_partitions[i].p_fstype == FS_UNUSED) && 
_at__at_ -477,6 +478,7 _at__at_
 	    /* Only print out statistics in verbose mode */
 	    if (verbose)
 	        sprintf(line, "  %s%c: %s %s (%d - %d)\n", prefix, 'a' + i,
+		    (lp->d_partitions[i].p_fstype == FS_ZFS) ? "ZFS " : 
 		    (lp->d_partitions[i].p_fstype == FS_SWAP) ? "swap " : 
 		    (lp->d_partitions[i].p_fstype == FS_VINUM) ? "vinum" :
 		    "FFS  ",
_at__at_ -485,6 +487,7 _at__at_
 		    lp->d_partitions[i].p_offset + lp->d_partitions[i].p_size);
 	    else
 	        sprintf(line, "  %s%c: %s\n", prefix, 'a' + i,
+		    (lp->d_partitions[i].p_fstype == FS_ZFS) ? "ZFS" :
 		    (lp->d_partitions[i].p_fstype == FS_SWAP) ? "swap" : 
 		    (lp->d_partitions[i].p_fstype == FS_VINUM) ? "vinum" :
 		    "FFS");
_at__at_ -696,7 +699,12 _at__at_
 
 	if (lp->d_magic != DISKMAGIC) {
 	    DEBUG("no disklabel");
+#if 0
 	    return (ENOENT);
+#else
+	    od->od_flags &= ~BD_LABELOK;
+	    od->od_boff = sector;	/* no partition, must be after the slice */
+#endif
 	}
 	if (dev->d_kind.biosdisk.partition >= lp->d_npartitions) {
 	    DEBUG("partition '%c' exceeds partitions in table (a-'%c')",
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Received on Sun Jul 27 2008 - 16:11:18 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:33 UTC