summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard W.M. Jones <rjones@redhat.com>2012-11-25 18:11:19 +0000
committerRichard W.M. Jones <rjones@redhat.com>2012-11-25 18:11:19 +0000
commitd2c75dd0ffc8c468880ad18d83167bbb183928b1 (patch)
treeb9f8e5131af247bf8b29a048bf834ad15e10c0e5
parentd7517360f26cb27a2d4b06e2dc1b0a02968fe55e (diff)
downloadlibguestfs-d2c75dd0ffc8c468880ad18d83167bbb183928b1.tar.gz
libguestfs-d2c75dd0ffc8c468880ad18d83167bbb183928b1.tar.xz
libguestfs-d2c75dd0ffc8c468880ad18d83167bbb183928b1.zip
lib: Get lpj= from /var/log/boot.msg (thanks Olaf Hering).
-rw-r--r--src/lpj.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/lpj.c b/src/lpj.c
index 9c1acce9..f927eefc 100644
--- a/src/lpj.c
+++ b/src/lpj.c
@@ -49,6 +49,7 @@
gl_lock_define_initialized (static, lpj_lock);
static int lpj = 0;
static int read_lpj_from_var_log_dmesg (guestfs_h *g);
+static int read_lpj_from_var_log_boot_msg (guestfs_h *g);
static int read_lpj_from_dmesg (guestfs_h *g);
static int read_lpj_common (guestfs_h *g, const char *func, const char *command);
@@ -65,13 +66,19 @@ guestfs___get_lpj (guestfs_h *g)
* - /proc/cpuinfo [in future]
* - dmesg
* - /var/log/dmesg
+ * - /var/log/boot.msg
*/
r = read_lpj_from_dmesg (g);
if (r > 0) {
lpj = r;
goto out;
}
- lpj = read_lpj_from_var_log_dmesg (g);
+ r = read_lpj_from_var_log_dmesg (g);
+ if (r > 0) {
+ lpj = r;
+ goto out;
+ }
+ lpj = read_lpj_from_var_log_boot_msg (g);
out:
gl_lock_unlock (lpj_lock);
@@ -92,6 +99,13 @@ read_lpj_from_var_log_dmesg (guestfs_h *g)
"grep -Eo 'lpj=[[:digit:]]+' /var/log/dmesg");
}
+static int
+read_lpj_from_var_log_boot_msg (guestfs_h *g)
+{
+ return read_lpj_common (g, __func__,
+ "grep -Eo 'lpj=[[:digit:]]+' /var/log/boot.msg");
+}
+
static void
read_all (guestfs_h *g, void *retv, const char *buf, size_t len)
{