summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authoreeh <eeh@NetBSD.org>2010-06-24 00:54:12 +0000
committereeh <eeh@NetBSD.org>2010-06-24 00:54:12 +0000
commit605be4ce9bac455cf43da8a7595ca3cb262eeb09 (patch)
treeccc87205c7d35c35f2fd91f14d3b65ed5709fbbf /sys
parente012a9fa389ea719649d4219dadaea587f13d99f (diff)
indir-block needs to be the size of a filesystem block or bad things can happen.
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/sparc/stand/bootblk/bootblk.fth10
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/arch/sparc/stand/bootblk/bootblk.fth b/sys/arch/sparc/stand/bootblk/bootblk.fth
index bac37b2cc57..ecaadd296de 100644
--- a/sys/arch/sparc/stand/bootblk/bootblk.fth
+++ b/sys/arch/sparc/stand/bootblk/bootblk.fth
@@ -1,4 +1,4 @@
-\ $NetBSD: bootblk.fth,v 1.12 2010/03/11 19:28:55 eeh Exp $
+\ $NetBSD: bootblk.fth,v 1.13 2010/06/24 00:54:12 eeh Exp $
\
\ IEEE 1275 Open Firmware Boot Block
\
@@ -343,7 +343,7 @@ niaddr /w* constant narraysize
\ Assume UFS2 dinodes are always biger than UFS1
ufs2_dinode_SIZEOF buffer: cur-inode
-h# 2000 buffer: indir-block
+0 value indir-block
create indir-addr -1 , -1 ,
\
@@ -747,6 +747,7 @@ create cur-blockno -1 l, -1 l, \ Current disk block.
abort
then
dup to cur-blocksize alloc-mem to cur-block \ Allocate cur-block
+ cur-blocksize alloc-mem to indir-block
boot-debug? if ." ufs-open complete" cr then
;
@@ -755,7 +756,8 @@ create cur-blockno -1 l, -1 l, \ Current disk block.
cif-close -1 to boot-ihandle
then
cur-block 0<> if
- cur-block cur-blocksize free-mem
+ cur-block cur-blocksize free-mem
+ indir-block cur-blocksize free-mem
then
;
@@ -888,7 +890,7 @@ create cur-blockno -1 l, -1 l, \ Current disk block.
: do-boot ( bootfile -- )
." NetBSD IEEE 1275 Multi-FS Bootblock" cr
- ." Version $NetBSD: bootblk.fth,v 1.12 2010/03/11 19:28:55 eeh Exp $" cr
+ ." Version $NetBSD: bootblk.fth,v 1.13 2010/06/24 00:54:12 eeh Exp $" cr
boot-path load-file ( -- load-base )
dup 0<> if " init-program " evaluate then
;