site  contact  subhomenews

Firmware loading at bootup, zdrv now unionfs layer

May 30, 2008 — BarryK
I don't recall if I already mentioned this. Kirk reported that the firmware did not load at bootup, only if module loaded later. That is now fixed.

Heh heh, I have come around in a circle. It was nice having the zdrv mounting directly on /lib/modules, but I thought for ages how to handle extra modules that someone might want to install. Couldn't really think of anything elegant. The whole idea of using the Unionfs layered f.s. is to get Puppy to look like a normal Linux system, and that should also be for /lib/modules ...so I have gone back to the original idea of mounting the 'zdrv' file as a Unionfs layer. There are some restrictions doing this, but it is a good compromise.

A clarification, kirk asked about modules all being in the initramfs, so why worry about a zdrv? It is a build choice in Unleashed. Basically, you can choose either to put all the modules into the initrd, or to build a separate 'zdrv' file.

The first choice, as used in 4.1alpha1, is very simple. All modules are present in the initrd, they get moved over to the main f.s. (and deleted only if free space gets low, which happens automatically in the background). It's nice I reckon. The downside is longer boot time, not much more booting from CD, USB2 or hd, but for USB1 there was feedback that it jumped from 1 minute to 8 minutes! Then there's Zip, where it becomes over 20 minutes!

So, Puppy can be built with a separate 'zdrv' file, as we have done with previous puppies. With this choice, I was looking for a way to have the modules "always present" is is the case with the first choice.

Comments

unionfs


Unionfs considerations
Username: dogone
"Here's an interesting exchange debating the gooodness of Unionfs vs Aufs and sound practices in general. http://lwn.net/Articles/217084/

LWN firmware article
Username: dffrey
"http://lwn.net/SubscriberLink/284104/50a850774dec0793/ above link to this weeks LWN article on firmware loading from kernel may be of interest

aufs vs unionfs
Username: jcoder24
"If I add a sfs module after puppy has booted with uinonfs the system freezes and requires a power cycle to get it going again. If I do the same thing with aufs, the system continues working. For this reason, every puppy I boot is booted with layerfs=aufs.

Unionfs2
Username: BarryK
"dogone, that lwn article requires a subscription to read. Regarding comparison of Unionfs and Aufs, yes you have to be careful what is being compared. Puppy4 is using Unionfs version 2.3.3. Some of those discussions may be referring to the Unionfs v1.x series. Note, I have not compiled the aufs module for Puppy4.

Re: SystemRescue
Username: BarryK
"Sage, there is no mention in their news page or forum about moving to aufs: http://www.sysresccd.org/news/

Re: SystemRescueCd
Username: coolpup
"new: http://www.sysresccd.org/Changes-x86 old: http://www.sysresccd.org/news/2008/03/16/systemrescuecd-is-now-based-on-unionfs/

there is no mention in their news page or forum about moving to aufs
Username: ANOSage
"I read it on DW, dated 2008-05-27 in their notation. i.e. v1.0.3. Of course, aufs is only 'another'ufs ! Seems to be a problem communicating with its Japanese originator.

re LWN.net article
Username: coolpup
"Barry, I have just visited: http://lwn.net/SubscriberLink/284104/50a850774dec0793/ "Using the firmware loader for static data", Jake Edge. The article is available to me, and the first paragraph states: "The following subscription-only content has been made available to you by an LWN subscriber". If it is still not available to you, I have uploaded a copy of the web page to these two servers here: http://www.zshare.net/download/12877939d49f2fbf/ http://www.uploading.com/files/AM51LK7S/Using_the_firmware_loader_for_static_dat...htm.html


Tags: puppy