All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeff LaBundy <jeff@labundy.com>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: linux-input@vger.kernel.org,
	Benjamin Tissoires <bentiss@kernel.org>,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 3/7] Input: make events() method return number of events processed
Date: Sun, 7 Jul 2024 14:54:35 -0500	[thread overview]
Message-ID: <ZoryexoiivzhHeYI@nixie71> (raw)
In-Reply-To: <20240703213756.3375978-4-dmitry.torokhov@gmail.com>

Hi Dmitry,

On Wed, Jul 03, 2024 at 02:37:50PM -0700, Dmitry Torokhov wrote:
> In preparation to consolidating filtering and event processing in the
> input core change events() method to return number of events processed
> by it.
> 
> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>

Reviewed-by: Jeff LaBundy <jeff@labundy.com>

> ---
>  drivers/input/evdev.c | 6 ++++--
>  include/linux/input.h | 7 ++++---
>  2 files changed, 8 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/input/evdev.c b/drivers/input/evdev.c
> index 05abcd45b5d4..a8ce3d140722 100644
> --- a/drivers/input/evdev.c
> +++ b/drivers/input/evdev.c
> @@ -288,8 +288,8 @@ static void evdev_pass_values(struct evdev_client *client,
>  /*
>   * Pass incoming events to all connected clients.
>   */
> -static void evdev_events(struct input_handle *handle,
> -			 const struct input_value *vals, unsigned int count)
> +static unsigned int evdev_events(struct input_handle *handle,
> +				 struct input_value *vals, unsigned int count)
>  {
>  	struct evdev *evdev = handle->private;
>  	struct evdev_client *client;
> @@ -306,6 +306,8 @@ static void evdev_events(struct input_handle *handle,
>  			evdev_pass_values(client, vals, count, ev_time);
>  
>  	rcu_read_unlock();
> +
> +	return count;
>  }
>  
>  static int evdev_fasync(int fd, struct file *file, int on)
> diff --git a/include/linux/input.h b/include/linux/input.h
> index c22ac465254b..89a0be6ee0e2 100644
> --- a/include/linux/input.h
> +++ b/include/linux/input.h
> @@ -275,7 +275,8 @@ struct input_handle;
>   *	it may not sleep
>   * @events: event sequence handler. This method is being called by
>   *	input core with interrupts disabled and dev->event_lock
> - *	spinlock held and so it may not sleep
> + *	spinlock held and so it may not sleep. The method must return
> + *	number of events passed to it.
>   * @filter: similar to @event; separates normal event handlers from
>   *	"filters".
>   * @match: called after comparing device's id with handler's id_table
> @@ -312,8 +313,8 @@ struct input_handler {
>  	void *private;
>  
>  	void (*event)(struct input_handle *handle, unsigned int type, unsigned int code, int value);
> -	void (*events)(struct input_handle *handle,
> -		       const struct input_value *vals, unsigned int count);
> +	unsigned int (*events)(struct input_handle *handle,
> +			       struct input_value *vals, unsigned int count);
>  	bool (*filter)(struct input_handle *handle, unsigned int type, unsigned int code, int value);
>  	bool (*match)(struct input_handler *handler, struct input_dev *dev);
>  	int (*connect)(struct input_handler *handler, struct input_dev *dev, const struct input_device_id *id);
> -- 
> 2.45.2.803.g4e1b14247a-goog
> 

Kind regards,
Jeff LaBundy

  reply	other threads:[~2024-07-07 19:54 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-03 21:37 [PATCH v2 0/7] Simplify event handling logic in input core Dmitry Torokhov
2024-07-03 21:37 ` [PATCH v2 1/7] Input: evdev - remove ->event() method Dmitry Torokhov
2024-07-07 19:53   ` Jeff LaBundy
2024-07-03 21:37 ` [PATCH v2 2/7] Input: make sure input handlers define only one processing method Dmitry Torokhov
2024-07-07 19:53   ` Jeff LaBundy
2024-07-03 21:37 ` [PATCH v2 3/7] Input: make events() method return number of events processed Dmitry Torokhov
2024-07-07 19:54   ` Jeff LaBundy [this message]
2024-07-03 21:37 ` [PATCH v2 4/7] Input: simplify event handling logic Dmitry Torokhov
2024-07-07 19:55   ` Jeff LaBundy
2024-07-03 21:37 ` [PATCH v2 5/7] Input: rearrange input_alloc_device() to prepare for preallocating of vals Dmitry Torokhov
2024-07-07 19:56   ` Jeff LaBundy
2024-07-03 21:37 ` [PATCH v2 6/7] Input: preallocate memory to hold event values Dmitry Torokhov
2024-07-07 19:56   ` Jeff LaBundy
2024-07-03 21:37 ` [PATCH v2 7/7] Input: do not check number of events in input_pass_values() Dmitry Torokhov
2024-07-07 19:57   ` Jeff LaBundy
2024-07-04  6:44 ` [PATCH v2 0/7] Simplify event handling logic in input core Benjamin Tissoires

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZoryexoiivzhHeYI@nixie71 \
    --to=jeff@labundy.com \
    --cc=bentiss@kernel.org \
    --cc=dmitry.torokhov@gmail.com \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.