behavior of RDMA poll calls

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



An issue showed up when integrating rsockets into Java: the behavior of the socket poll() call differs from the RDMA poll() operation.  Specifically, socket poll() releases all waiting threads, where the RDMA stack releases one.  For example, see wake_up_interruptible() when writing a CQ event here:

https://github.com/torvalds/linux/blob/master/drivers/infiniband/core/uverbs_main.c#L442

This impacts the rsocket rpoll() call, which maps over RDMA poll().  The only reasonable solution for this I can come up with is for the app to opt-in to changing the poll behavior, so that wake_up_interruptible_all() would be used instead.  This change would be needed for CM and CQ related fd's.

Is anyone aware of a similar precedence for handling this?  Would adding a new ioctl to modify the behavior be acceptable?

- Sean



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux