diff mbox series

[RFC] Input: remove evbug driver

Message ID 8n377s5p-3r9n-ro38-3r2o-p536745552qo@xreary.bet (mailing list archive)
State New
Headers show
Series [RFC] Input: remove evbug driver | expand

Commit Message

Jiri Kosina Dec. 17, 2024, 10:47 a.m. UTC
From: Jiri Kosina <jkosina@suse.com>

I've never heard of anyone having used this driver for debugging at least 
in over past decade or so. Since we have tools like evtest, this driver 
seems to be rather superficial.

Also, it apparently causes confusion among people who accidentaly enable 
CONFIG_INPUT_EVBUG and are annoyed/confused by their kernel log being 
spammed by a lot of useless data.

Let's just remove it.

Signed-off-by: Jiri Kosina <jkosina@suse.com>
---
 drivers/input/Kconfig  |  14 ------
 drivers/input/Makefile |   1 -
 drivers/input/evbug.c  | 100 -----------------------------------------
 3 files changed, 115 deletions(-)
 delete mode 100644 drivers/input/evbug.c

Comments

Dmitry Torokhov Dec. 17, 2024, 9:57 p.m. UTC | #1
On Tue, Dec 17, 2024 at 11:47:39AM +0100, Jiri Kosina wrote:
> From: Jiri Kosina <jkosina@suse.com>
> 
> I've never heard of anyone having used this driver for debugging at least 
> in over past decade or so. Since we have tools like evtest, this driver 
> seems to be rather superficial.
> 
> Also, it apparently causes confusion among people who accidentaly enable 
> CONFIG_INPUT_EVBUG and are annoyed/confused by their kernel log being 
> spammed by a lot of useless data.
> 
> Let's just remove it.

Agree. Applied, thank you.

Interestingly:

dtor@dtor-ws:~/kernel/next $ git grep -i evbug
arch/arm/configs/davinci_all_defconfig:CONFIG_INPUT_EVBUG=m
arch/arm/configs/imx_v6_v7_defconfig:CONFIG_INPUT_EVBUG=m
arch/arm/configs/moxart_defconfig:CONFIG_INPUT_EVBUG=y
arch/arm/configs/omap1_defconfig:CONFIG_INPUT_EVBUG=y
arch/mips/configs/pic32mzda_defconfig:CONFIG_INPUT_EVBUG=m
arch/sh/configs/sh7785lcr_32bit_defconfig:CONFIG_INPUT_EVBUG=m
arch/sparc/configs/sparc32_defconfig:CONFIG_INPUT_EVBUG=m

I am curious why moxart and omap1 have it as 'y'. 

Thanks.
diff mbox series

Patch

diff --git a/drivers/input/Kconfig b/drivers/input/Kconfig
index 3bdbd34314b3..88ecdf5218ee 100644
--- a/drivers/input/Kconfig
+++ b/drivers/input/Kconfig
@@ -152,20 +152,6 @@  config INPUT_EVDEV
 	  To compile this driver as a module, choose M here: the
 	  module will be called evdev.
 
-config INPUT_EVBUG
-	tristate "Event debugging"
-	help
-	  Say Y here if you have a problem with the input subsystem and
-	  want all events (keypresses, mouse movements), to be output to
-	  the system log. While this is useful for debugging, it's also
-	  a security threat - your keypresses include your passwords, of
-	  course.
-
-	  If unsure, say N.
-
-	  To compile this driver as a module, choose M here: the
-	  module will be called evbug.
-
 config INPUT_KUNIT_TEST
 	tristate "KUnit tests for Input" if !KUNIT_ALL_TESTS
 	depends on INPUT && KUNIT
diff --git a/drivers/input/Makefile b/drivers/input/Makefile
index c78753274921..930b64d2115e 100644
--- a/drivers/input/Makefile
+++ b/drivers/input/Makefile
@@ -18,7 +18,6 @@  obj-$(CONFIG_INPUT_LEDS)	+= input-leds.o
 obj-$(CONFIG_INPUT_MOUSEDEV)	+= mousedev.o
 obj-$(CONFIG_INPUT_JOYDEV)	+= joydev.o
 obj-$(CONFIG_INPUT_EVDEV)	+= evdev.o
-obj-$(CONFIG_INPUT_EVBUG)	+= evbug.o
 
 obj-$(CONFIG_INPUT_KEYBOARD)	+= keyboard/
 obj-$(CONFIG_INPUT_MOUSE)	+= mouse/
diff --git a/drivers/input/evbug.c b/drivers/input/evbug.c
deleted file mode 100644
index e47bdf92088a..000000000000
--- a/drivers/input/evbug.c
+++ /dev/null
@@ -1,100 +0,0 @@ 
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- *  Copyright (c) 1999-2001 Vojtech Pavlik
- */
-
-/*
- *  Input driver event debug module - dumps all events into syslog
- */
-
-#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
-
-#include <linux/slab.h>
-#include <linux/module.h>
-#include <linux/input.h>
-#include <linux/init.h>
-#include <linux/device.h>
-
-MODULE_AUTHOR("Vojtech Pavlik <vojtech@ucw.cz>");
-MODULE_DESCRIPTION("Input driver event debug module");
-MODULE_LICENSE("GPL");
-
-static void evbug_event(struct input_handle *handle, unsigned int type, unsigned int code, int value)
-{
-	printk(KERN_DEBUG pr_fmt("Event. Dev: %s, Type: %d, Code: %d, Value: %d\n"),
-	       dev_name(&handle->dev->dev), type, code, value);
-}
-
-static int evbug_connect(struct input_handler *handler, struct input_dev *dev,
-			 const struct input_device_id *id)
-{
-	struct input_handle *handle;
-	int error;
-
-	handle = kzalloc(sizeof(struct input_handle), GFP_KERNEL);
-	if (!handle)
-		return -ENOMEM;
-
-	handle->dev = dev;
-	handle->handler = handler;
-	handle->name = "evbug";
-
-	error = input_register_handle(handle);
-	if (error)
-		goto err_free_handle;
-
-	error = input_open_device(handle);
-	if (error)
-		goto err_unregister_handle;
-
-	printk(KERN_DEBUG pr_fmt("Connected device: %s (%s at %s)\n"),
-	       dev_name(&dev->dev),
-	       dev->name ?: "unknown",
-	       dev->phys ?: "unknown");
-
-	return 0;
-
- err_unregister_handle:
-	input_unregister_handle(handle);
- err_free_handle:
-	kfree(handle);
-	return error;
-}
-
-static void evbug_disconnect(struct input_handle *handle)
-{
-	printk(KERN_DEBUG pr_fmt("Disconnected device: %s\n"),
-	       dev_name(&handle->dev->dev));
-
-	input_close_device(handle);
-	input_unregister_handle(handle);
-	kfree(handle);
-}
-
-static const struct input_device_id evbug_ids[] = {
-	{ .driver_info = 1 },	/* Matches all devices */
-	{ },			/* Terminating zero entry */
-};
-
-MODULE_DEVICE_TABLE(input, evbug_ids);
-
-static struct input_handler evbug_handler = {
-	.event =	evbug_event,
-	.connect =	evbug_connect,
-	.disconnect =	evbug_disconnect,
-	.name =		"evbug",
-	.id_table =	evbug_ids,
-};
-
-static int __init evbug_init(void)
-{
-	return input_register_handler(&evbug_handler);
-}
-
-static void __exit evbug_exit(void)
-{
-	input_unregister_handler(&evbug_handler);
-}
-
-module_init(evbug_init);
-module_exit(evbug_exit);