NetBSD Problem Report #36639
From rthille@thille.org Thu Jul 12 20:14:25 2007
Return-Path: <rthille@thille.org>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
by narn.NetBSD.org (Postfix) with ESMTP id 10A0463B8E6
for <gnats-bugs@gnats.NetBSD.org>; Thu, 12 Jul 2007 20:14:25 +0000 (UTC)
Message-Id: <20070712194834.6907.qmail@bluesky.thille.org>
Date: 12 Jul 2007 19:48:34 -0000
From: rthille@rangat.org
Reply-To: rthille@rangat.org
To: gnats-bugs@NetBSD.org
Subject: Cobalt bootloader will not boot from RAIDFrame Mirror
X-Send-Pr-Version: 3.95
>Number: 36639
>Category: port-cobalt
>Synopsis: Cobalt bootloader fails to load kernel from RAIDFrame Mirror
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: tsutsui
>State: closed
>Class: change-request
>Submitter-Id: net
>Arrival-Date: Thu Jul 12 20:15:00 +0000 2007
>Closed-Date: Sat Dec 08 10:12:32 +0000 2007
>Last-Modified: Sat Dec 08 10:12:32 +0000 2007
>Originator: Robert P Thille
>Release: NetBSD 3.99.20
>Organization:
None
>Environment:
System: NetBSD bluesky.thille.org 3.99.20 NetBSD 3.99.20 (RThille_2006-06-02) #0: Fri Jun 2 18:29:42 PDT 2006 rthille@:/home/system/NetBSD/current/cobalt/obj/sys/arch/cobalt/compile/RThille_2006-06-02 cobalt
Architecture: mipsel
Machine: cobalt
>Description:
The port-cobalt bootloader does not understand RAIDFrame Mirrors
and so is unable to load a kernel from said mirrors.
>How-To-Repeat:
create a root which lives on a RAIDFrame Mirror.
>Fix:
Patch to enhance the port-cobalt bootloader:
cvs diff: Diffing .
Index: wd.c
===================================================================
RCS file: /cvsroot/src/sys/arch/cobalt/stand/boot/wd.c,v
retrieving revision 1.5
diff -u -b -p -r1.5 wd.c
--- wd.c 11 Dec 2005 12:17:06 -0000 1.5
+++ wd.c 5 May 2006 22:00:58 -0000
@@ -43,6 +43,7 @@
#include <machine/param.h>
#include <machine/stdarg.h>
+#include <dev/raidframe/raidframevar.h> /* For RF_PROTECTED_SECTORS */
#include "boot.h"
#include "wdvar.h"
@@ -179,6 +180,10 @@ wdgetdisklabel(wd)
DPRINTF(("illegal partition\n"));
return (EPART);
}
+ if (lp->d_partitions[wd->sc_part].p_fstype == FS_RAID) {
+ DPRINTF(("USING RAID OFFSET\n"));
+ lp->d_partitions[wd->sc_part].p_offset += RF_PROTECTED_SECTORS;
+ }
DPRINTF(("label info: d_secsize %d, d_nsectors %d, d_ncylinders %d,"
"d_ntracks %d, d_secpercyl %d\n",
>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: port-cobalt-maintainer->tsutsui
Responsible-Changed-By: tsutsui@netbsd.org
Responsible-Changed-When: Thu, 19 Jul 2007 22:31:12 +0900
Responsible-Changed-Why:
I provided alternative patch.
State-Changed-From-To: open->feedback
State-Changed-By: tsutsui@netbsd.org
State-Changed-When: Thu, 19 Jul 2007 22:31:12 +0900
State-Changed-Why:
Could you check the following patch?
http://mail-index.netbsd.org/port-cobalt/2007/07/18/0002.html
From: Izumi Tsutsui <tsutsui@netbsd.org>
To: gnats-bugs@NetBSD.org
Cc:
Subject: PR/36639 CVS commit: src/sys/arch/cobalt/stand/boot
Date: Fri, 3 Aug 2007 12:57:39 +0000 (UTC)
Module Name: src
Committed By: tsutsui
Date: Fri Aug 3 12:57:39 UTC 2007
Modified Files:
src/sys/arch/cobalt/stand/boot: wd.c
Log Message:
Add support for booting off raidframe RAID1 mirrors.
Should close PR port-cobalt/36639, but with a different way
(which is similar with pmax) from a patch in the PR.
To generate a diff of this commit:
cvs rdiff -r1.5 -r1.6 src/sys/arch/cobalt/stand/boot/wd.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
State-Changed-From-To: feedback->closed
State-Changed-By: tsutsui@netbsd.org
State-Changed-When: Sat, 08 Dec 2007 19:12:32 +0900
State-Changed-Why:
Fix committed a while ago.
>Unformatted:
(Contact us)
$NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.