[openib-general] Re: [PATCH] signal driven io support for ib_uverbs

Roland Dreier rolandd at cisco.com
Wed Jul 6 10:38:46 PDT 2005


Thanks for adding this.  A few questions:

    > +static int ib_uverbs_event_async (int fd, struct file *filp, int on)
    > +{
    > +	int ret;
    > +	struct ib_uverbs_event_file *file = filp->private_data;
    > +
    > +	if (!file)
    > +		return -EBADFD;

Can this function ever be called on a file with private_data not set?
Why do we need this check?

    > +
    > +	if ((ret = fasync_helper(fd, filp, on, &file->fasync)) < 0)
    > +		return ret;
    > +
    > +	if (on)
    > +		ret = f_setown(filp, current->pid, 0);

Why do we need the f_setown?  Doesn't the core kernel already handle
this for us?

    > +	kill_fasync (&file->async_file.fasync, SIGIO, POLL_IN);
 
We want this in both ib_uverbs_comp_handler() and also
ib_uverbs_async_handler() too, right?

 - R.



More information about the general mailing list