aboutsummaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorJackie Huang <jackie.huang@windriver.com>2013-07-04 18:06:21 +0800
committerSaul Wold <sgw@linux.intel.com>2013-07-09 07:56:14 -0700
commitfaa8cc6c2a582a32c695f3f2b0d45b6892c769fd (patch)
treeac7430a713d7022ac3ecc10b3e1df9c44daff668 /meta
parent09e59f1dad9fb52adb1717840837e42a36a6c7a1 (diff)
downloadopenembedded-core-contrib-faa8cc6c2a582a32c695f3f2b0d45b6892c769fd.tar.gz
initscripts: add dmesg file to /var/log
We should create the /var/log/dmesg.log file as a default. If we don't then a later kernel error can flush the dmesg ring buffer, losing valuable debug information. Signed-off-by: Xin Ouyang <Xin.Ouyang@windriver.com> Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-core/initscripts/initscripts-1.0/dmesg.sh17
-rw-r--r--meta/recipes-core/initscripts/initscripts-1.0/logrotate-dmesg.conf9
-rw-r--r--meta/recipes-core/initscripts/initscripts_1.0.bb9
3 files changed, 33 insertions, 2 deletions
diff --git a/meta/recipes-core/initscripts/initscripts-1.0/dmesg.sh b/meta/recipes-core/initscripts/initscripts-1.0/dmesg.sh
new file mode 100644
index 0000000000..a97b0681e1
--- /dev/null
+++ b/meta/recipes-core/initscripts/initscripts-1.0/dmesg.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+### BEGIN INIT INFO
+# Provides: dmesg
+# Required-Start:
+# Required-Stop:
+# Default-Start: S
+# Default-Stop:
+### END INIT INFO
+
+if [ -f /var/log/dmesg ]; then
+ if [ -f /usr/sbin/logrotate ]; then
+ logrotate -f /etc/logrotate-dmesg.conf
+ else
+ mv -f /var/log/dmesg /var/log/dmesg.old
+ fi
+fi
+dmesg -s 131072 > /var/log/dmesg
diff --git a/meta/recipes-core/initscripts/initscripts-1.0/logrotate-dmesg.conf b/meta/recipes-core/initscripts/initscripts-1.0/logrotate-dmesg.conf
new file mode 100644
index 0000000000..6f46e4216f
--- /dev/null
+++ b/meta/recipes-core/initscripts/initscripts-1.0/logrotate-dmesg.conf
@@ -0,0 +1,9 @@
+# see "man logrotate" for details
+# rotate dmesg, and keep 5 versions.
+
+/var/log/dmesg {
+ create
+ rotate 5
+ nodateext
+}
+
diff --git a/meta/recipes-core/initscripts/initscripts_1.0.bb b/meta/recipes-core/initscripts/initscripts_1.0.bb
index 531b2b62df..52e1c9cc94 100644
--- a/meta/recipes-core/initscripts/initscripts_1.0.bb
+++ b/meta/recipes-core/initscripts/initscripts_1.0.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "Initscripts provide the basic system startup initialization scrip
SECTION = "base"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-PR = "r140"
+PR = "r141"
INHIBIT_DEFAULT_DEPS = "1"
@@ -31,7 +31,10 @@ SRC_URI = "file://functions \
file://read-only-rootfs-hook.sh \
file://volatiles \
file://save-rtc.sh \
- file://GPLv2.patch"
+ file://GPLv2.patch \
+ file://dmesg.sh \
+ file://logrotate-dmesg.conf \
+"
SRC_URI_append_arm = " file://alignment.sh"
@@ -89,6 +92,8 @@ do_install () {
install -m 0755 ${WORKDIR}/read-only-rootfs-hook.sh ${D}${sysconfdir}/init.d
install -m 0755 ${WORKDIR}/save-rtc.sh ${D}${sysconfdir}/init.d
install -m 0644 ${WORKDIR}/volatiles ${D}${sysconfdir}/default/volatiles/00_core
+ install -m 0755 ${WORKDIR}/dmesg.sh ${D}${sysconfdir}/init.d
+ install -m 0644 ${WORKDIR}/logrotate-dmesg.conf ${D}${sysconfdir}/
if [ "${TARGET_ARCH}" = "arm" ]; then
install -m 0755 ${WORKDIR}/alignment.sh ${D}${sysconfdir}/init.d