One of the most frustrating tasks in regard to OpenWRT is needing to
upgrade.  There are several factors that instigate it further.

Firstly, with any given router's traditional WAP/router firmware (as
well as OpenWRT's White Russian), configuration settings were stored in
NVRAM and survived up/downgrades.  This was comforting in that you knew
that no matter what you flashed (with caveats) you would not lose your
configuration.

This assurance is gone with Kamikaze.  Upgrading is much more of PITA,
ensuring that I've saved all my settings from /etc/[config] and having
to reload them back, but only after I've gone through the gyrations of
fixing up the default router address re-assignment [you all know the
rigmarole], etc., etc.

Along with all of this is the always uncertainty as to the stability of
the upgraded firmware.  Maybe it will be unsuitable for some reason, so
now you have to downgrade again and go through the whole process a
second time.  Maybe your downgrade also does not roll everything back
properly.  Now where do you go?

I mitigate some of this by keeping my / on USB storage.  That way, I can
to some degree, take comfort in upgrades by first duping my USB key to
another key (or just some other storage) so that know that I can get
back my previous / after I downgrade to my previous flashed image (IOW,
kernel).

But all this flashing to up/downgrade a kernel and essentially what is
an initrd (given that I mount USB storage on /) seems silly.

I wonder what the feasibility is of instead of putting a linux kernel in
the kernel portion of the flash image and essentially what's an initrd
in the filesystem portion (because remember, all the / in the flash
image does for me is mount USB storage on /), putting a simple boot
loader that can load the kernel from the USB storage based filesystem.
Given that model the kernel is coupled with the rest of the system on a
single USB storage device which you just plug in and boot.  Pull the
device and replace with another and get the kernel that goes along with
it.

It's worth recognizing and mentioning that perhaps this boot loader
could actually be a full linux kernel and a very small / that simply
"kexec"s a new kernel from the USB storage once it's mounted at /.  I
wonder how portable kexec is amongst the processors Linux runs on.

Being able to operate like this would take a lot of the fear (and work)
of upgrading away since you can upgrade simply by using a new USB
storage device (which you might even have prepared on some machine other
than the router) and keep the old one sitting around in case you need to
quickly back out to plan B.

FWIW, this is all in reference to my particular WAP which is an ASUS
WL-500g Premium, but portability where USB storage devices can be used
would be ideal.

Thots?

b.

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
openwrt-devel mailing list
[email protected]
http://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to