Re: [PATCH] Input: serio - do not mark kseriod freezable anymore

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Monday 21 December 2009, Dmitry Torokhov wrote:
> We used to make kseriod freezable to prevent unnecessary attempts at
> resuming keyboard and mouse before taking hibernation image when suspend
> and hibernation were sharing PM operations. Now that they are separated
> and we don't risk resuming during 'thaw' we don't need to freeze kseriod
> anymore. This will allow us to start resetting mouse and keyboard a bit
> earlier, before rest of the userspace comes back up.
> 
> Signed-off-by: Dmitry Torokhov <dtor@xxxxxxx>

Acked-by: Rafael J. Wysocki <rjw@xxxxxxx>

> ---
> 
>  drivers/input/serio/serio.c |   11 ++---------
>  1 files changed, 2 insertions(+), 9 deletions(-)
> 
> 
> diff --git a/drivers/input/serio/serio.c b/drivers/input/serio/serio.c
> index 0236f0d..e0f3018 100644
> --- a/drivers/input/serio/serio.c
> +++ b/drivers/input/serio/serio.c
> @@ -284,13 +284,7 @@ static void serio_handle_event(void)
>  
>  	mutex_lock(&serio_mutex);
>  
> -	/*
> -	 * Note that we handle only one event here to give swsusp
> -	 * a chance to freeze kseriod thread. Serio events should
> -	 * be pretty rare so we are not concerned about taking
> -	 * performance hit.
> -	 */
> -	if ((event = serio_get_event())) {
> +	while ((event = serio_get_event())) {
>  
>  		switch (event->type) {
>  			case SERIO_REGISTER_PORT:
> @@ -380,10 +374,9 @@ static struct serio *serio_get_pending_child(struct serio *parent)
>  
>  static int serio_thread(void *nothing)
>  {
> -	set_freezable();
>  	do {
>  		serio_handle_event();
> -		wait_event_freezable(serio_wait,
> +		wait_event_interruptible(serio_wait,
>  			kthread_should_stop() || !list_empty(&serio_event_list));
>  	} while (!kthread_should_stop());
>  
> 
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux