Roland:
Back to my orignal question, if I don't call
ibv_get_async_event() for a long time, and there are a lot of events
generated during the time, do I loss any event when I eventually call
ibv_get_async_event() ?
(another way, how many events can you queue ) ?
--CQ
> -----Original Message-----
> From: Roland Dreier [mailto:[EMAIL PROTECTED]
> Sent: Friday, March 02, 2007 4:30 PM
> To: Steve Wise
> Cc: Tang, Changqing; [email protected]
> Subject: Re: [ofa-general] Re: Is ibv_get_async_event() a
> blocking call ?
>
> > > I wonder if libibverbs can do this way for application
> and make > > ibv_get_async_event() non-blocking. But I will
> try this way now.
> > >
> >
> > I wonder what happens if you set the async file descriptor
> to > non-blocking?
> >
> > Roland? Would that return EWOULDBLOCK if there are no events?
>
> Yes, as you can see if you look at the libibverbs internals,
> ibv_get_async_event() is just doing read() on a file
> descriptor. So all the standard ways of handling finding out
> whether the descriptor is ready to read should work: block in
> read(), use poll(), epoll, SIGIO, async IO, etc. And using
> fcntl to set the descriptor to non-blocking mode would work too.
>
> - R.
>
_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general
To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general