I started preparing a stable linux SDP implementation, with the eye towards mainline inclusion.
The idea is to get to a drastically simple code base and get this admitted in mainline, then add enhancements. The plan (as compared to existing SDP implementation) includes: - Use CMA API - Reuse generic code from sock.c SO_SNDBUF/SO_RCVBUF should work properly - Use sock_lock_t and simple spin_lock_bh for socket locking - Use skbuff and standard skbuff queues (in struct sock) for incoming/outgoing messages - Implement transport-level queues by simple circular buffer, attach BSDH by s/g - Set socket bits to signal the need for control messages - Single CQ, perform all CQ polling from interrupt context - Code must be sparse-clean, keep network data in __beXX structures - Proper use of DMA API - Use sysfs for statistics, entry per socket - Only support the BCopy mode for starters - any advertisements will be answered with sendsm - Only support synchronous operations for starters: applications can use userspace AIO emulation, and hopefully generic AIO support in kernel will mature meanwhile. -- Michael S. Tsirkin Staff Engineer, Mellanox Technologies _______________________________________________ openib-general mailing list [email protected] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
