Subject: Re: Problems booting from RAID1 raidframe on NetBSD/alpha
To: David Brownlee <abs@absd.org>
From: Simon Burge <simonb@wasabisystems.com>
List: port-alpha
Date: 06/27/2005 23:16:41
--+HP7ph2BbKc20aGI
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Mon, Jun 27, 2005 at 01:51:23PM +0100, David Brownlee wrote:

> 	The only two issues I can see would be:
> 
> 	- raid0a has a 32k/4k blocksize
> 	- raid0a is ffsv2

This is your problem.  Unlike say the i386 bootblocks, where there is
both a ffsv1 and ffsv2 first stage bootblock, alpha only has single ffs
(v1) bootblock.  Can you try the following out?

	cd sys/arch/alpha/stand
	mkdir bootxx_ffsv1 bootxx_ffsv2
	patch < diff
	make dependall

I've test built these bootblocks, but haven't actually tested them.

Cheers,
Simon.
--
Simon Burge                                   <simonb@wasabisystems.com>
NetBSD Development, Support and Service:   http://www.wasabisystems.com/

--+HP7ph2BbKc20aGI
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename=diff

Index: Makefile
===================================================================
RCS file: /cvsroot/src/sys/arch/alpha/stand/Makefile,v
retrieving revision 1.15
diff -d -p -u -r1.15 Makefile
--- Makefile	8 May 2002 04:09:46 -0000	1.15
+++ Makefile	27 Jun 2005 13:10:07 -0000
@@ -1,6 +1,7 @@
 # $NetBSD: Makefile,v 1.15 2002/05/08 04:09:46 lukem Exp $
 
 SUBDIR=		mkbootimage setnetbootinfo
-SUBDIR+=	boot bootxx_cd9660 bootxx_ffs bootxx_lfs netboot ustarboot
+SUBDIR+=	boot netboot ustarboot
+SUBDIR+=	bootxx_cd9660 bootxx_ffsv1 bootxx_ffsv2 bootxx_lfs
 
 .include <bsd.subdir.mk>
--- /dev/null	2005-06-27 23:10:19.000000000 +1000
+++ bootxx_ffsv1/Makefile	2005-06-27 23:06:39.000000000 +1000
@@ -0,0 +1,15 @@
+# $NetBSD: Makefile,v 1.4 2003/02/01 23:58:48 simonb Exp $
+
+PROG = bootxx_ffs
+CPPFLAGS += -DLIBSA_SINGLE_FILESYSTEM=ffsv1 \
+	    -DBOOTXX_FS_NAME='"FFSv1"' \
+	    -DBOOTXX_RAID1_SUPPORT \
+	    -DNO_GETCHAR
+# Use small daddr_t to avoid code bloat
+CPPFLAGS+=	-D__daddr_t=int32_t
+
+# not yet desired: -DBOOTXX_FS_TYPE=FS_BSDFFS
+
+PRIMARY_MAX_LOAD!=	expr 8192 - 512
+
+.include "../Makefile.bootxx"
--- /dev/null	2005-06-27 23:10:19.000000000 +1000
+++ bootxx_ffsv2/Makefile	2005-06-27 23:06:35.000000000 +1000
@@ -0,0 +1,15 @@
+# $NetBSD: Makefile,v 1.4 2003/02/01 23:58:48 simonb Exp $
+
+PROG = bootxx_ffs
+CPPFLAGS += -DLIBSA_SINGLE_FILESYSTEM=ffsv1 \
+	    -DBOOTXX_FS_NAME='"FFSv2"' \
+	    -DBOOTXX_RAID1_SUPPORT \
+	    -DNO_GETCHAR
+# Use small daddr_t to avoid code bloat
+CPPFLAGS+=	-D__daddr_t=int32_t
+
+# not yet desired: -DBOOTXX_FS_TYPE=FS_BSDFFS
+
+PRIMARY_MAX_LOAD!=	expr 8192 - 512
+
+.include "../Makefile.bootxx"

--+HP7ph2BbKc20aGI--