site  contact  subhomenews

Kernel 3.12.11 with zram support

March 14, 2014 — BarryK
I was surprised that the 3.12.x kernel used in Quirky Tahr does not support zram. This is a compressed filesystem in RAM.
I had enabled it in some earlier kernels. It seems to have acquired a new dependency, that caused it to be de-selected when I compiled the 3.12.x kernels.

I have recompiled the 3.12.11 kernel, with these changes:

have added support for zram, builtin.

have changed aufs from module to builtin.

device drivers -->
staging drivers -->
[*] memory allocator for compressed images (CONFIG_ZSMALLOC)
<*> compressed ram block device support (CONFIG_ZRAM)

file systems -->
miscellaneous file systems -->
<*> aufs support

I want zram support, as I am playing with an idea for building Quirky as a live-CD. Don't know how far I will go with this, just thinking about a live-CD that boots up and runs totally in ram, using zram.

Note, not currently thinking about using aufs, even though have changed it to builtin.

The PET (25.2MB):


On unrelated advice"dionicio"I am using my Puppy Wary CD's
along with
to backup windows systems

Wishing the best of your semi-retiring.

(Souls really never retire).

CD-R (and DVD-R)
are firmware-free
are bios-free
are random-block-access-free
maybe really are burn-only-once.

Flash memory and Hard disks not.

So, maybe; (I wish)
they contribute to sacro sanctity of my PC booting...

pe_pplog cannot handle apostrophe or quotes in the comment title. Maybe not brackets either.

I haven't reported that bug to efia yet (the author of pe_pplog).

Regarding live-CD, I did that on a whim. Not trying to "attract" people. I am interested in the technique of using zram.

Bit more work needed on the blogsite?

Just see for yourself. Quirky has disappeared again from the DW PHR whilst the 'conventional' .iso mode for Slacko5.7 sits at No.4 (7days)

2. Can the iso be downloaded somewhere ?

Instead, download the .iso, burn to CD, bootup, then run an install program to install to a hard drive partition or usb stick.
vmlinuz loads, a small initramfs runs

That should read:

vmlinuz loads, a small init script (in the initramfs) runs

This is an experiment, using zram. I built what we used to call a "humongous puppy", with the entire filesystem .sfs inside the vmlinuz kernel.
Or rather, the .sfs is inside a initramfs, which is inside vmlinuz.

vmlinuz loads, a small initramfs runs, which creates a zram with ext2 f.s. inside it, then copies the content of the .sfs into the zram, then does a switch_root to the zram.
Bootup takes awhile, for loading vmlinuz, then copying the files into the zram. I have created a 1GB zram (my laptop has 4GB RAM), which will hold about 3GB files. Once booted, it is very fast.

But, there is no mechanism to save a session. This is only an experiment, I have not yet considered how to save the session.

One simple possibility would be to remaster the CD. Burn another CD, with all the setup choices in place, maybe some packages installed. But, there would still be no actual session-save. This option may suit those who want to boot a pristine-but-configured for their locale, etc., and don't want to save anything at end of session.
Interesting option, you could hide the internal hard drive, which I know all about how to do now, bootup your preconfigured CD, shutdown without anything getting saved -- ultimate safe web browsing. Except, you could plug in a USB stick to save files if you wish. "vmlinuz loads, a small initramfs runs, which creates a zram with ext2 f.s. inside it, then copies the content of the .sfs into the zram, then does a switch_root to the zram...." I have 2 thoughts here. I wonder if they make sense. 1. How about having a simple user-editable text file (called puppy.conf) for basic set up such as locale, language, network etc. initramfs will run a script to read puppy.conf and make these settings in the f.s. The first-time setup screen and 2-barks will not be required. 2. Since most people have Google Drive these days, how about making use of the Google-Drive to save the session? After puppy is booted up and is online (point 1 above), it can go to the user-specified Google Drive to download the session.

Tags: linux