/* Pass event through all open handles. This function is called with dev->event_lock held and interrupts disabled.  */
static void input_pass_event(struct input_dev *dev, unsigned int type, unsigned int code, int value)
/* Pass event through all open handles. This function is called with dev->event_lock held and interrupts disabled.  */
static void input_pass_event(struct input_dev *dev, unsigned int type, unsigned int code, int value)
{
	struct input_handle *handle;
	rcu_read_lock();
	handle = rcu_dereference(dev->grab);
	if (handle)
		handle->handler->event(handle, type, code, value);
	else
		list_for_each_entry_rcu(handle, &dev->h_list, d_node)
			if (handle->open)
				handle->handler->event(handle,
							type, code, value);
	rcu_read_unlock();
}