AF:
NF:0
PS:10
SRH:1
SFN:
DSR:
MID:<20090313114635.1e278a24@ripper.onstor.net>
CFG:
PT:0
S:andy.sharp@onstor.com
RQ:
SSV:mail.onstor.net
NSV:
SSH:
R:<rendell.fong@onstor.com>,<bfisher@onstor.com>,<maxim.kozlovsky@onstor.com>,<brian.stark@onstor.com>
MAID:1
X-Sylpheed-Privacy-System:
X-Sylpheed-Sign:0
SCF:#mh/Mailbox/sent
X-Sylpheed-End-Special-Headers: 1
Date: Fri, 13 Mar 2009 11:48:09 -0700
From: Andrew Sharp <andy.sharp@onstor.com>
To: Rendell Fong <rendell.fong@onstor.com>
Cc: Bill Fisher <bfisher@onstor.com>, Maxim Kozlovsky
 <maxim.kozlovsky@onstor.com>, Brian Stark <brian.stark@onstor.com>
Subject: Attention PROM lovers: FREE SHIPPING! [Limited time offer]
Message-ID: <20090313114809.343d6f15@ripper.onstor.net>
Organization: Onstor
X-Mailer: Sylpheed-Claws 2.6.0 (GTK+ 2.8.20; x86_64-pc-linux-gnu)
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

Yes, I've been doing way too much online shopping for my own good.

Anyway, open invitation to use the latest PROM image that corresponds
to this pending checkin: 31788

tftp://ripper/var/local/tftpboot/andy_x-2.0.71.bin

That is the standard prom image.  It should work, even for Max!, this
time.  I know of only one bug, and I'm not sure if its new or old, but
if you boot the Linux kernel on the SSC by hand, ie., you use the 'g'
command, and you specify some kernel arguments on the command line,
those somehow get lost by the time the kernel gets to them, and the
compiled in arguments are used instead.  Only in this narrow case does
this happen.  I'm still working on that one.

TFTP loads are wicked fast now.

CF loads are not much faster, but contend less with other things
happening at boot time, so "system up time" is improved for those who
are loading the runtime images at a later point in the boot process,
which I know Max will appreciate.  "System up time" is pretty much the
same if you're loading the images at the default time.

A kernel built with the changes is also necessary if you're wanting to
use the new loading scheme.  You can get a prebuilt version of that
kernel here:

http://ripper/~andys/src/dev/linux/kernel/linux-mips-2.6/vmlinux.bin

If you try the prom, you're entitled to review the changes:

Change 31788 by andys@ripper on 2009/01/27 18:30:46 *pending*

	Shore up some of the image loading functionality with respect
	to the way it has been redesigned.

	Fix new bug where autoload command works, but just letting PROM
	autoload on boot up doesn't.

	Fix new bug where FP image isn't loaded when using the old
method. This also prevented the 'admenu' PROM command from working.

	Fix old bug where root device was set based on load_src
	environment variable rather than on boot_dev variable, so you
	couldn't tftp load a kernel and have it run with a root on the
CF or load kernel off the CF and run with NFS root.

	Fix old bug where the "magic route" set by the PROM code
	based on the IP address configured was not magical enough:
	it was 10.0/16, which means that you couldn't tftp load an
	image from a 10.1 address on a machine with a 10.2 IP address,
	and like that.	Changed it to be just a simple, normal
default route so everything works.  BTW, the magic route is only set
	for autoloading.  If you're doing a tftp load manually, or your
	IP address doesn't start with 10.1 or 10.2, then you still have
	to set your route explicitly.

	Add a new possible value to the PROM autoload environment
	variable. Old values of "off" and "on" are supplemented with
"old" which means do autoload in the old way.  "on" means do autoload
	in the new way.  The "old" value can be used for machines with
	new PROM but old runtime.

	Once and for all, the spinner is gone, now a few dots come out
	to show that yes, something is happening.  Log files everywhere
	rejoice.  Image load times are reduced by about 1 second.  May
not sound like a lot, but tftp loads are way fast because of it.

	Another reason tftp loads are fast is because an annoying and
	completely unnecessary many-second pause between loading the
	image and commencing execution of the image has been tracked
	down and eliminated.

	Mod the SSC kernel mipsphys device write method to accept
	sizes greater than 8 rather than just puking EINVAL.  But don't
	allocate some huge chunk of memory to do it, and -- oh yeah --
	still be a friend of fast.

	Change the load_vmlinux program to utilize this new feature of
	the mipsphys device.  Load times are very slightly reduced, but
	contention with other system activity is reduced significantly.

	Sync up the kernel git repository with recent changes in
perforce.

	reviewed by

Affected files ...

... //depot/dev/linux/kernel/linux-mips-2.6/.git/description#1 edit
... //depot/dev/linux/kernel/linux-mips-2.6/.git/index#11 edit
... //depot/dev/linux/kernel/linux-mips-2.6/.git/info/refs#7 edit
... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/11/f48dfd728319a24e2ce183eb01d0cf82b6f2e2#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/2d/fc378cb8b992c092efa9e53dc16493d73e8c58#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/40/88cf8b57eaa173db0dce5372d056deb5d3ea71#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/44/7152078cf5590155ca72dfb59f470957da3c4b#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/57/7e95d0ec2a5738bb704ecfeba46e749b415f7f#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/5e/1b29938cfa4f93c3d15ed3bce2a5b25d45f744#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/72/1d2c1936fe44644157e2078e4a35122e69c2ad#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/7c/dd0f6bebe25ebcc683b8144c92b846b81bb711#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/8a/d1691ac68fd8b2c529b3a87aff47855816b53a#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/8b/8fa9659a18dd04d63cbf9d59ce2fc9fcf5efb9#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/93/1f5229334bf3d3d2574eec66c65678a3a7c66e#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/99/b5c636d51e26b1fe73f4b953e8a2a958e1bc3c#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/b3/eeed739b95a28f81a2f148113c0c181e02fb64#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/b7/c3656ce2a13a10c1b0fa2bf41745b5e37789a9#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/bb/0173cd15f830c553a928e49d4e3e4203e791da#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/c8/74fdeeb4c24f6de9978d7c7a8f98391fbbf9e4#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/cc/922468c3f2e3854e1604592148c7d5530212ef#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/dd/df3ae09d019fc25721ab128eebee049fd781e8#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/f0/3f40c4e684c7913121768eb0463de4532a1cbf#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/f2/002d3b73ffa4b14c13f57e93bb93ff4f24439e#1
add ... //depot/dev/linux/kernel/linux-mips-2.6/.git/objects/info/packs#7
edit ... //depot/dev/linux/kernel/linux-mips-2.6/.git/refs/heads/onstor-2.6.22#7
edit ... //depot/dev/linux/kernel/linux-mips-2.6/drivers/char/mem.c#3
edit ... //depot/dev/linux/tools/load_vmlinux.c#1 edit
... //depot/dev/prom/cg/code/prom-pmon/cmdtable.c#14 edit
... //depot/dev/prom/cg/code/prom-pmon/go.c#7 edit
... //depot/dev/prom/cg/code/prom-pmon/main.c#14 edit
... //depot/dev/prom/cg/code/prom-pmon/memtst.c#11 edit
... //depot/dev/prom/cg/code/sm-loader/load-auto.c#8 edit
... //depot/dev/prom/cg/code/sm-loader/load-cougar-diag-menu.c#6 edit
... //depot/dev/prom/cg/code/sm-loader/load-cougar-diag-tests.c#10 edit
... //depot/dev/prom/cg/code/sm-loader/load-cougar-diag-util.c#14 edit
... //depot/dev/prom/cg/code/sm-loader/load-cougar-diag.c#4 edit
... //depot/dev/prom/cg/code/sm-loader/load-cougar-diag.h#6 edit
... //depot/dev/prom/cg/code/sm-loader/load-cougar.c#13 edit
... //depot/dev/prom/cg/code/sm-loader/load-cougar.h#3 edit
... //depot/dev/prom/cg/code/sm-loader/load-flash.c#2 edit
... //depot/dev/prom/cg/code/sm-loader/load.c#3 edit
... //depot/dev/prom/cg/code/sm-pci/pci-nfp.c#3 edit
... //depot/dev/prom/cg/code/sm-pmonext2fs/ext2fs.c#3 edit
... //depot/dev/prom/cg/code/sm-pmonext2fs/fileio.c#1 edit
... //depot/dev/prom/cg/code/sm-pmonext2fs/openfs.c#2 edit
... //depot/dev/prom/cg/code/sm-pmonext2fs/rw_bitmaps.c#1 edit
... //depot/dev/prom/cg/code/sm-prom-upgrade/from-ui.c#3 edit
... //depot/dev/prom/cg/code/sm-prom-upgrade/from-upgrade.c#5 edit
... //depot/dev/prom/cg/code/sm-seep/env-api.h#2 edit
... //depot/dev/prom/cg/code/sm-seep/env.c#6 edit
... //depot/dev/prom/cg/code/sm-serio/serio-api.c#6 edit
... //depot/dev/prom/cg/code/sm-tftp/tftp-api.c#3 edit
... //depot/dev/prom/cg/code/sm-tftp/tftp-cmd.c#3 edit
... //depot/dev/prom/cg/code/sm-tftp/tftp-rcv.c#2 edit

