[oe] [meta-oe][PATCH][V2] zram: Integrate an init script
Andrei Gherzan
andrei at gherzan.ro
Thu Sep 20 08:17:34 UTC 2012
On Thu, Sep 20, 2012 at 11:04 AM, Koen Kooi <koen at dominion.thruhere.net>wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Op 18-09-12 21:35, Andrei Gherzan schreef:
> > Signed-off-by: Andrei Gherzan <andrei at gherzan.ro> ---
> > meta-oe/recipes-extended/zram/zram/init | 28 +++++++++++++++++
> > meta-oe/recipes-extended/zram/zram/zram-load.sh | 37
> > +++++++++++++++++++++++ meta-oe/recipes-extended/zram/zram_0.1.bb
> |
> > 24 +++++++++++++++ 3 files changed, 89 insertions(+) create mode 100644
> > meta-oe/recipes-extended/zram/zram/init create mode 100644
> > meta-oe/recipes-extended/zram/zram/zram-load.sh create mode 100644
> > meta-oe/recipes-extended/zram/zram_0.1.bb
> >
> > diff --git a/meta-oe/recipes-extended/zram/zram/init
> > b/meta-oe/recipes-extended/zram/zram/init new file mode 100644 index
> > 0000000..7bd8bcc --- /dev/null +++
> > b/meta-oe/recipes-extended/zram/zram/init @@ -0,0 +1,28 @@ +#!/bin/bash
> > +### BEGIN INIT INFO +# Provides: zram +# Required-Start: +#
> > Required-Stop: +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +#
> > Short-Description: Increased Performance In Linux With zRam (Virtual Swap
> > Compressed in RAM) +### END INIT INFO +set -e + +case "$1" in +
> > start) + zram-load.sh --load + ;; + stop) +
> > zram-load.sh --unload + ;; + restart) + zram-load.sh
> > --unload + sleep 3 + zram-load.sh --load + ;; +
> > *) + echo "Usage: $0 {start|stop|restart}" + RETVAL=1
> > +esac +exit $RETVAL diff --git
> > a/meta-oe/recipes-extended/zram/zram/zram-load.sh
> > b/meta-oe/recipes-extended/zram/zram/zram-load.sh new file mode 100644
> > index 0000000..786cd0c --- /dev/null +++
> > b/meta-oe/recipes-extended/zram/zram/zram-load.sh @@ -0,0 +1,37 @@
> > +#!/bin/sh + +num_cpus=$(grep -c processor /proc/cpuinfo) +[ "$num_cpus"
> > != 0 ] || num_cpus=1 + +last_cpu=$((num_cpus - 1)) + +mem_by_cpu=$(awk -v
> > cpus=$num_cpus '/MemTotal/ { print (($2 * 1024) / cpus) }'
> > /proc/meminfo) + +if [ "$1" = "--load" ] ; then + echo zram: Trying
> to
> > load kernel module. + + # Linux 3.2 workaround - value name
> changed :o. +
> > modprobe -q zram zram_num_devices=$num_cpus + + # Linux < 3.2. +
> > #modprobe -q zram num_devices=$num_cpus + + echo zram: Enable in-memory
> > compressed swap of $mem_by_cpu bytes. + for i in $(seq 0
> $last_cpu); do +
> > echo 1 > /sys/block/zram$i/reset + echo $mem_by_cpu >
> > /sys/block/zram$i/disksize + mkswap /dev/zram$i +
> swapon -p 100
> > /dev/zram$i + done +fi + +if [ "$1" = "--unload" ] ; then + echo zram:
> > Disable in-memory compressed swap. + for i in $(seq 0 $last_cpu); do +
> > grep -q "/dev/zram$i" /proc/swaps && swapoff /dev/zram$i + done + +
> sleep
> > 1 + echo zram: Unload kernel module. + rmmod zram +fi diff --git
> > a/meta-oe/recipes-extended/zram/zram_0.1.bb
> > b/meta-oe/recipes-extended/zram/zram_0.1.bb new file mode 100644 index
> > 0000000..dd59784 --- /dev/null +++
> > b/meta-oe/recipes-extended/zram/zram_0.1.bb @@ -0,0 +1,24 @@
> +DESCRIPTION
> > = "Linux zram compressed in-memory swap" +LICENSE = "MIT"
> > +LIC_FILES_CHKSUM =
> > "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58" +
> > +inherit allarch update-rc.d + +RDEPENDS_${PN} = "util-linux-swaponoff
> > kmod kernel-module-zram"
>
> You are never allowed to RDEPEND on a kernel-module, imagine what happens
> when it's builtin. Also R* variables go below do_install
>
>
Very true. About R* after do_install i didn't know that this was a rule.
But i will obey. :)
> > + +PR = "r0"
>
Remove that
>
> Next patch coming.
ag
More information about the Openembedded-devel
mailing list