Merge tag 'lkdtm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux into char-misc-testing

Kees writes:

fixes for lkdtm build warnings
diff --git a/drivers/misc/lkdtm.h b/drivers/misc/lkdtm.h
index d70a417..fdf954c 100644
--- a/drivers/misc/lkdtm.h
+++ b/drivers/misc/lkdtm.h
@@ -1,6 +1,10 @@
 #ifndef __LKDTM_H
 #define __LKDTM_H
 
+#define pr_fmt(fmt) "lkdtm: " fmt
+
+#include <linux/kernel.h>
+
 /* lkdtm_bugs.c */
 void __init lkdtm_bugs_init(int *recur_param);
 void lkdtm_PANIC(void);
@@ -53,5 +57,4 @@
 void lkdtm_USERCOPY_STACK_BEYOND(void);
 void lkdtm_USERCOPY_KERNEL(void);
 
-
 #endif
diff --git a/drivers/misc/lkdtm_bugs.c b/drivers/misc/lkdtm_bugs.c
index e87071f..182ae18 100644
--- a/drivers/misc/lkdtm_bugs.c
+++ b/drivers/misc/lkdtm_bugs.c
@@ -4,12 +4,8 @@
  * lockups) along with other things that don't fit well into existing LKDTM
  * test source files.
  */
-#define pr_fmt(fmt) "lkdtm: " fmt
-
-#include <linux/kernel.h>
-#include <linux/sched.h>
-
 #include "lkdtm.h"
+#include <linux/sched.h>
 
 /*
  * Make sure our attempts to over run the kernel stack doesn't trigger
diff --git a/drivers/misc/lkdtm_core.c b/drivers/misc/lkdtm_core.c
index de29a33..f9154b8 100644
--- a/drivers/misc/lkdtm_core.c
+++ b/drivers/misc/lkdtm_core.c
@@ -30,9 +30,7 @@
  *
  * See Documentation/fault-injection/provoke-crashes.txt for instructions
  */
-#define pr_fmt(fmt) "lkdtm: " fmt
-
-#include <linux/kernel.h>
+#include "lkdtm.h"
 #include <linux/fs.h>
 #include <linux/module.h>
 #include <linux/buffer_head.h>
@@ -49,16 +47,16 @@
 #include <linux/ide.h>
 #endif
 
-#include "lkdtm.h"
-
 #define DEFAULT_COUNT 10
 
-static void lkdtm_handler(void);
 static int lkdtm_debugfs_open(struct inode *inode, struct file *file);
 static ssize_t lkdtm_debugfs_read(struct file *f, char __user *user_buf,
 		size_t count, loff_t *off);
 static ssize_t direct_entry(struct file *f, const char __user *user_buf,
 			    size_t count, loff_t *off);
+
+#ifdef CONFIG_KPROBES
+static void lkdtm_handler(void);
 static ssize_t lkdtm_debugfs_entry(struct file *f,
 				   const char __user *user_buf,
 				   size_t count, loff_t *off);
@@ -118,7 +116,7 @@
 	return 0;
 }
 
-#ifdef CONFIG_IDE
+# ifdef CONFIG_IDE
 static int jp_generic_ide_ioctl(ide_drive_t *drive, struct file *file,
 			struct block_device *bdev, unsigned int cmd,
 			unsigned long arg)
@@ -127,9 +125,9 @@
 	jprobe_return();
 	return 0;
 }
+# endif
 #endif
 
-
 /* Crash points */
 struct crashpoint {
 	const char *name;
@@ -238,10 +236,6 @@
 struct crashpoint *lkdtm_crashpoint;
 struct crashtype *lkdtm_crashtype;
 
-/* Global crash counter and spinlock. */
-static int crash_count = DEFAULT_COUNT;
-static DEFINE_SPINLOCK(crash_count_lock);
-
 /* Module parameters */
 static int recur_count = -1;
 module_param(recur_count, int, 0644);
@@ -285,29 +279,6 @@
 	crashtype->func();
 }
 
-/* Called by jprobe entry points. */
-static void lkdtm_handler(void)
-{
-	unsigned long flags;
-	bool do_it = false;
-
-	BUG_ON(!lkdtm_crashpoint || !lkdtm_crashtype);
-
-	spin_lock_irqsave(&crash_count_lock, flags);
-	crash_count--;
-	pr_info("Crash point %s of type %s hit, trigger in %d rounds\n",
-		lkdtm_crashpoint->name, lkdtm_crashtype->name, crash_count);
-
-	if (crash_count == 0) {
-		do_it = true;
-		crash_count = cpoint_count;
-	}
-	spin_unlock_irqrestore(&crash_count_lock, flags);
-
-	if (do_it)
-		lkdtm_do_action(lkdtm_crashtype);
-}
-
 static int lkdtm_register_cpoint(struct crashpoint *crashpoint,
 				 struct crashtype *crashtype)
 {
@@ -337,6 +308,34 @@
 	return ret;
 }
 
+#ifdef CONFIG_KPROBES
+/* Global crash counter and spinlock. */
+static int crash_count = DEFAULT_COUNT;
+static DEFINE_SPINLOCK(crash_count_lock);
+
+/* Called by jprobe entry points. */
+static void lkdtm_handler(void)
+{
+	unsigned long flags;
+	bool do_it = false;
+
+	BUG_ON(!lkdtm_crashpoint || !lkdtm_crashtype);
+
+	spin_lock_irqsave(&crash_count_lock, flags);
+	crash_count--;
+	pr_info("Crash point %s of type %s hit, trigger in %d rounds\n",
+		lkdtm_crashpoint->name, lkdtm_crashtype->name, crash_count);
+
+	if (crash_count == 0) {
+		do_it = true;
+		crash_count = cpoint_count;
+	}
+	spin_unlock_irqrestore(&crash_count_lock, flags);
+
+	if (do_it)
+		lkdtm_do_action(lkdtm_crashtype);
+}
+
 static ssize_t lkdtm_debugfs_entry(struct file *f,
 				   const char __user *user_buf,
 				   size_t count, loff_t *off)
@@ -374,6 +373,7 @@
 
 	return count;
 }
+#endif
 
 /* Generic read callback that just prints out the available crash types */
 static ssize_t lkdtm_debugfs_read(struct file *f, char __user *user_buf,
@@ -476,8 +476,10 @@
 		}
 	}
 
+#ifdef CONFIG_KPROBES
 	/* Set crash count. */
 	crash_count = cpoint_count;
+#endif
 
 	/* Handle test-specific initialization. */
 	lkdtm_bugs_init(&recur_count);
diff --git a/drivers/misc/lkdtm_heap.c b/drivers/misc/lkdtm_heap.c
index 12f50e8..0f15816 100644
--- a/drivers/misc/lkdtm_heap.c
+++ b/drivers/misc/lkdtm_heap.c
@@ -2,12 +2,8 @@
  * This is for all the tests relating directly to heap memory, including
  * page allocation and slab allocations.
  */
-#define pr_fmt(fmt) "lkdtm: " fmt
-
-#include <linux/kernel.h>
-#include <linux/slab.h>
-
 #include "lkdtm.h"
+#include <linux/slab.h>
 
 /*
  * This tries to stay within the next largest power-of-2 kmalloc cache
diff --git a/drivers/misc/lkdtm_perms.c b/drivers/misc/lkdtm_perms.c
index 8201006..45f1c0f 100644
--- a/drivers/misc/lkdtm_perms.c
+++ b/drivers/misc/lkdtm_perms.c
@@ -3,17 +3,13 @@
  * permissions: non-executable regions, non-writable regions, and
  * even non-readable regions.
  */
-#define pr_fmt(fmt) "lkdtm: " fmt
-
-#include <linux/kernel.h>
+#include "lkdtm.h"
 #include <linux/slab.h>
 #include <linux/vmalloc.h>
 #include <linux/mman.h>
 #include <linux/uaccess.h>
 #include <asm/cacheflush.h>
 
-#include "lkdtm.h"
-
 /* Whether or not to fill the target memory area with do_nothing(). */
 #define CODE_WRITE	true
 #define CODE_AS_IS	false
diff --git a/drivers/misc/lkdtm_rodata.c b/drivers/misc/lkdtm_rodata.c
index 4d0d851..166b1db 100644
--- a/drivers/misc/lkdtm_rodata.c
+++ b/drivers/misc/lkdtm_rodata.c
@@ -2,7 +2,7 @@
  * This includes functions that are meant to live entirely in .rodata
  * (via objcopy tricks), to validate the non-executability of .rodata.
  */
-#include <linux/kernel.h>
+#include "lkdtm.h"
 
 void lkdtm_rodata_do_nothing(void)
 {
diff --git a/drivers/misc/lkdtm_usercopy.c b/drivers/misc/lkdtm_usercopy.c
index 9c748e8..5a3fd76 100644
--- a/drivers/misc/lkdtm_usercopy.c
+++ b/drivers/misc/lkdtm_usercopy.c
@@ -2,9 +2,7 @@
  * This is for all the tests related to copy_to_user() and copy_from_user()
  * hardening.
  */
-#define pr_fmt(fmt) "lkdtm: " fmt
-
-#include <linux/kernel.h>
+#include "lkdtm.h"
 #include <linux/slab.h>
 #include <linux/vmalloc.h>
 #include <linux/mman.h>