diff options
| author | Vojtech Pavlik <vojtech@twilight.ucw.cz> | 2002-07-10 06:57:02 +0200 |
|---|---|---|
| committer | Vojtech Pavlik <vojtech@twilight.ucw.cz> | 2002-07-10 06:57:02 +0200 |
| commit | fef3dcc02ceff2e057a6af5c9fa64b4a85739f9e (patch) | |
| tree | e131ac40c24274f8f17188ff33d375411a681448 | |
| parent | 72645c3dd35429dad852c85baa7eb014815bdaed (diff) | |
Fix a hang in serio code and a possible oops in input.
| -rw-r--r-- | drivers/input/evbug.c | 3 | ||||
| -rw-r--r-- | drivers/input/serio/serio.c | 3 |
2 files changed, 5 insertions, 1 deletions
diff --git a/drivers/input/evbug.c b/drivers/input/evbug.c index 1b91f246cd08..e403d4f6d299 100644 --- a/drivers/input/evbug.c +++ b/drivers/input/evbug.c @@ -37,6 +37,8 @@ MODULE_AUTHOR("Vojtech Pavlik <vojtech@ucw.cz>"); MODULE_DESCRIPTION("Input driver event debug module"); MODULE_LICENSE("GPL"); +static char evbug_name[] = "evbug"; + static void evbug_event(struct input_handle *handle, unsigned int type, unsigned int code, int value) { printk(KERN_DEBUG "evbug.c: Event. Dev: %s, Type: %d, Code: %d, Value: %d\n", handle->dev->phys, type, code, value); @@ -52,6 +54,7 @@ static struct input_handle *evbug_connect(struct input_handler *handler, struct handle->dev = dev; handle->handler = handler; + handle->name = evbug_name; input_open_device(handle); diff --git a/drivers/input/serio/serio.c b/drivers/input/serio/serio.c index e490e8a3a79d..9f54ec068b3a 100644 --- a/drivers/input/serio/serio.c +++ b/drivers/input/serio/serio.c @@ -82,6 +82,7 @@ void serio_handle_events(void) } serio->event = 0; + serio = serio->next; } } @@ -95,7 +96,7 @@ static int serio_thread(void *nothing) serio_handle_events(); if (current->flags & PF_FREEZE) refrigerator(PF_IOTHREAD); - wait_event_interruptible(serio_wait, 1); + interruptible_sleep_on(&serio_wait); } while (!signal_pending(current)); printk(KERN_DEBUG "serio: kseriod exiting"); |
