kfusd/kfusd.c
static int fusd_polldiff_reply(fusd_dev_t *fusd_dev, fusd_msg_t *msg)
{
	fusd_file_t *fusd_file;

	/* figure out the index of the file we are replying to.  usually
	 * very fast (uses a hint) */
	if ((fusd_file = find_fusd_reply_file(fusd_dev, msg)) == NULL)
		return -EPIPE;

	/* record the poll state returned.  convert all negative retvals to -1. */
	if ((fusd_file->cached_poll_state = msg->parm.fops_msg.retval) < 0)
		fusd_file->cached_poll_state = -1;

	RDEBUG(3, "got updated poll state from /dev/%s driver: %d", NAME(fusd_dev),
	       fusd_file->cached_poll_state);

	/* since the client has returned the polldiff we sent, set
	 * last_poll_sent to -1, so that we'll send a polldiff request on
	 * the next select. */
	fusd_file->last_poll_sent = -1;

	/* wake up select's queue so that a new polldiff is generated */
	wake_up_interruptible(&fusd_file->poll_wait);

	return 0;
}
/* special function to process responses to POLL_DIFF */
special function to process responses to POLL_DIFF
special function to process responses to POLL_DIFF
static int fusd_polldiff_reply(fusd_dev_t *fusd_dev, fusd_msg_t *msg)
{
	fusd_file_t *fusd_file;
	if ((fusd_file = find_fusd_reply_file(fusd_dev, msg)) == NULL)
		return -EPIPE;
	if ((fusd_file->cached_poll_state = msg->parm.fops_msg.retval) < 0)
		fusd_file->cached_poll_state = -1;
	RDEBUG(3, "got updated poll state from /dev/%s driver: %d", NAME(fusd_dev),
	       fusd_file->cached_poll_state);
	fusd_file->last_poll_sent = -1;
	wake_up_interruptible(&fusd_file->poll_wait);
	return 0;
}
static int fusd_polldiff_reply ( fusd_dev_t * fusd_dev , fusd_msg_t * msg ) { fusd_file_t * fusd_file ; if ( ( fusd_file = find_fusd_reply_file ( fusd_dev , msg ) ) == NULL ) return - EPIPE ; if ( ( fusd_file -> cached_poll_state = msg -> parm . fops_msg . retval ) < 0 ) fusd_file -> cached_poll_state = -1 ; RDEBUG ( 3 , " " , NAME ( fusd_dev ) , fusd_file -> cached_poll_state ) ; fusd_file -> last_poll_sent = -1 ; wake_up_interruptible ( & fusd_file -> poll_wait ) ; return 0 ; }
special function to process responses to POLL_DIFF
special function to process responses to POLL_DIFF
/* figure out the index of the file we are replying to.  usually
	 * very fast (uses a hint) */ /* record the poll state returned.  convert all negative retvals to -1. */ /* since the client has returned the polldiff we sent, set
	 * last_poll_sent to -1, so that we'll send a polldiff request on
	 * the next select. */ /* wake up select's queue so that a new polldiff is generated */