[openib-general] comments on DAT registry in OpenIB
Bob Woodruff
robert.j.woodruff at intel.com
Thu Jun 30 09:38:57 PDT 2005
Roland wrote,
>I disagree. It doesn't make sense to me for us to add an abstraction
>layer on top of another abstraction layer -- let's just fix the first
>abstraction layer.
>If we follow the approach of changing the name of DAT to RDMA and then
>putting it in the kernel, we end up with a stack that looks like:
> upper layer protocol <-> RDMA midlayer <-> IB RDMA provider <-> IB
midlayer <-> >IB low-level driver
>Let's just evolve the IB midlayer so the picture can be more sensible:
> upper layer protocol <-> RDMA midlayer <-> IB low-level driver
> - R.
At some layer the interface is transport dependent. I think that this
is at the IB core mid-layer. For example, the IB CM and iWarp CM are totally
different. The IB layer has SA queries that are not needed by iWarp.
I think it could look like,
ULP <-> RDMA-midlayer <-> ib-midlayer <-> H/W driver
<-> iwarp-midlayer <-> H/W driver
where
ib midlayer and iWarp midlayer can share common code for functions
that both need. For example, memory pinning and such might be common
so you could have
ib_reg_mem() {
common_memory_pin()
register_mem_with_IB_HCA()
}
iWarp_reg_mem()
common_memory_pin()
register_mem_with_iWarp_Nic()
}
Also starting with separate mid-layers for ib and iwarp allows them to
initially be developed independently and in parallel, with the factoring out
of common code later and not totally disrupting the ib tree.
my 2 cents.
woody
More information about the general
mailing list