On Mon, Feb 11, 2013 at 05:49:53PM -0500, Michael R. Hines wrote: > +struct rdma_data {
Picking on this but it's everywhere: should be RdmaData, with a typedef. Please check CODING_STYLE and follow the rules. Also, prefixing everything with rdma_ means I can't figure out which functions are local and which from rdma_cm. Let's find some other prefix. > + char *host; > + int port; > + int enabled; > + int gidx; > + union ibv_gid gid; > + > + struct rdma_context rdma_ctx; > + struct rdma_ram_blocks rdma_ram_blocks; > + > + /* This is used for synchronization: We use > + IBV_WR_SEND to send it after all IBV_WR_RDMA_WRITEs > + are done. When the receiver gets it, it can be certain > + that all the RDMAs are completed. */ /* * Always * like * this */ /* Never like this */ I'll reserve judgement until the protocol is documented, but I see a somewhat troubling lack of handling for cross-endian and cross-verion compatibility. Did I miss it? -- MST