AF:
NF:0
PS:10
SRH:1
SFN:
DSR:
MID:<20090303173311.59648442@ripper.onstor.net>
CFG:
PT:0
S:andy.sharp@onstor.com
RQ:
SSV:exch1.onstor.net
NSV:
SSH:
R:<rendell.fong@onstor.com>,<bfisher@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: Tue, 3 Mar 2009 17:33:12 -0800
From: Andrew Sharp <andy.sharp@onstor.com>
To: Rendell Fong <rendell.fong@onstor.com>, Bill Fisher
 <bfisher@onstor.com>, Brian Stark <brian.stark@onstor.com>
Subject: please review 31788
Message-ID: <20090303173312.793edf41@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

Resending this because this seems to have gotten lost in the furlough
(although Rendell was kind enough to review his part before taking off
-- thanks again Rendell.)


==========================================

PROM changes and related since the last checkin, which was a while
ago.  The checkin comments should explain all the included changes.

==========================================

Bill: specifically have a look at the drivers/char/mem.c
changes to see if I screwed up anything there.

Rendell: specifically look at prom files like sm-loader/* and
sm-seep/* and load_vmlinux.c.

Brian: look at any file that catches your eye as suspicious.

As always, any comments or questions from anyone about any file are
welcome.

All can safely ignore the files in linux-mips-2.6/.git directory.

Thanks!

Cheers,

a




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 and vice-versa.

	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 extra value to 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 multi-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, but 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-cmd.c#3 edit
... //depot/dev/prom/cg/code/sm-tftp/tftp-rcv.c#2 edit

