blob: 53933af644a7f92ff139de3c43a299a417b09b19 [file] [log] [blame]
#!/bin/sh
# These changes are initially in /init provided by QCA.
# The reason for the move is to leave the triggering to
# the end of system booting (/init to qca, and this script to windcharger).
# Some tunings are made:
# 1. inode/dentry reclaiming is more aggresive.
# 2. dirty pages (jffs2 for /config) writing back is more aggresive.
# Dentry/inode uses a lot memory, give them pressure.
echo 1000 > /proc/sys/vm/vfs_cache_pressure
# when processes uses page-cache more than 20% of system memory,
# lets force them to write
echo 20 > /proc/sys/vm/dirty_ratio
# when the dirty pages cross more than 5% of sys memory
# kick in the pdflush
echo 5 > /proc/sys/vm/dirty_background_ratio
# Reduce block read ahead from 2**3=8 to 2**0=1.
# This number control # of blocks to read for each page fault, it's 3 by default
# in 3.3.8, and set it to read only page faulted page. One reason is to reduce
# footprint, another reason is that most our rootfs files are small. It may
# sacrifice performace some how by reducing memory usage.
echo 0 > /proc/sys/vm/page-cluster
case "$1" in
start)
babysit 60 memopt 2>&1 | logos memopt &
;;
stop)
pkillwait -f memopt
;;
restart)
$0 stop; $0 start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac