===================================================================
--- linux.orig/kernel/sleep_info.c
+++ linux/kernel/sleep_info.c
-@@ -0,0 +1,423 @@
+@@ -0,0 +1,425 @@
+#include <linux/config.h>
+#include <linux/sleep_info.h>
+#include <linux/seq_file.h>
+#include <linux/proc_fs.h>
+#include <linux/fs.h>
+#include <linux/module.h>
++#include <linux/hardirq.h>
+
+#include <asm/div64.h>
+#include <linux/errno.h>
+
+void stacktrace_record(void)
+{
-+ update_sinfo(stack_sinfo.p, 1);
++ if (!in_interrupt())
++ update_sinfo(stack_sinfo.p, 1);
+}
+EXPORT_SYMBOL(stacktrace_record);
+